20 |
* along with this program; if not, write to the Free Software |
* along with this program; if not, write to the Free Software |
21 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
22 |
* |
* |
23 |
* $Id: plugin_single.c,v 1.1.2.6 2003-11-19 15:42:38 syskin Exp $ |
* $Id: plugin_single.c,v 1.1.2.7 2003-11-28 14:20:13 syskin Exp $ |
24 |
* |
* |
25 |
****************************************************************************/ |
****************************************************************************/ |
26 |
|
|
183 |
rc->rtn_quant = data->quant; |
rc->rtn_quant = data->quant; |
184 |
|
|
185 |
/* Compute the deviation from expected total size */ |
/* Compute the deviation from expected total size */ |
186 |
deviation = (int64_t) |
deviation = |
187 |
((double) rc->total_size - (double) rc->bytes_per_sec * rc->time); |
rc->total_size - rc->bytes_per_sec * rc->time; |
188 |
|
|
189 |
|
|
190 |
if (data->quant >= 2) { |
if (data->quant >= 2) { |
245 |
else if (rtn_quant < data->quant - 1) |
else if (rtn_quant < data->quant - 1) |
246 |
rtn_quant = data->quant - 1; |
rtn_quant = data->quant - 1; |
247 |
|
|
248 |
/* limit to min/max range */ |
/* limit to min/max range |
249 |
if (rtn_quant > data->max_quant[data->type-1]) |
we don't know frame type of the next frame, so we just use |
250 |
rtn_quant = data->max_quant[data->type-1]; |
P-VOP's range... */ |
251 |
else if (rtn_quant < data->min_quant[data->type-1]) |
if (rtn_quant > data->max_quant[XVID_TYPE_PVOP-1]) |
252 |
rtn_quant = data->min_quant[data->type-1]; |
rtn_quant = data->max_quant[XVID_TYPE_PVOP-1]; |
253 |
|
else if (rtn_quant < data->min_quant[XVID_TYPE_PVOP-1]) |
254 |
|
rtn_quant = data->min_quant[XVID_TYPE_PVOP-1]; |
255 |
|
|
256 |
rc->rtn_quant = rtn_quant; |
rc->rtn_quant = rtn_quant; |
257 |
|
|