summaryrefslogtreecommitdiffstats
path: root/libmpcodecs
diff options
context:
space:
mode:
authorrathann <rathann@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-10-18 20:00:07 +0000
committerrathann <rathann@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-10-18 20:00:07 +0000
commitf1b9d02c19403d8771946ceec4e8530a075bc2b7 (patch)
tree0b3e054a2bfee37457ff65cc29eeb0c1048dcbd7 /libmpcodecs
parentae746ad8e8d49858a3f3f0ad5aff4b3173bce3bb (diff)
downloadmpv-f1b9d02c19403d8771946ceec4e8530a075bc2b7.tar.bz2
mpv-f1b9d02c19403d8771946ceec4e8530a075bc2b7.tar.xz
Bitrate setting option in ve_xvid4.c doesn't follow the rules described
in manpage (i.e. if bitrate > 16000, then it's in bits/s, not kbits), unlike lavc and the old ve_xvid.c do. Fixed. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@13676 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs')
-rw-r--r--libmpcodecs/ve_xvid4.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/libmpcodecs/ve_xvid4.c b/libmpcodecs/ve_xvid4.c
index 9457a01bcf..5d84eb2c9d 100644
--- a/libmpcodecs/ve_xvid4.c
+++ b/libmpcodecs/ve_xvid4.c
@@ -674,7 +674,8 @@ static void dispatch_settings(xvid_mplayer_module_t *mod)
* The single pass plugin
* ---------------------------------------------------------------- */
- onepass->bitrate = xvidenc_bitrate;
+ if (xvidenc_bitrate > 16000) onepass->bitrate = xvidenc_bitrate;
+ else onepass->bitrate = xvidenc_bitrate*1000;
onepass->reaction_delay_factor = xvidenc_cbr_reaction_delay_factor;
onepass->averaging_period = xvidenc_cbr_averaging_period;
onepass->buffer = xvidenc_cbr_buffer;
@@ -949,7 +950,8 @@ static int set_create_struct(xvid_mplayer_module_t *mod)
/* There is not much left to initialize after dispatch settings */
onepass->version = XVID_VERSION;
- onepass->bitrate = xvidenc_bitrate*1000;
+ if (xvidenc_bitrate > 16000) onepass->bitrate = xvidenc_bitrate;
+ else onepass->bitrate = xvidenc_bitrate*1000;
/* Quantizer mode uses the same plugin, we have only to define
* a constant quantizer zone beginning at frame 0 */
@@ -972,7 +974,7 @@ static int set_create_struct(xvid_mplayer_module_t *mod)
} else {
mp_msg(MSGT_MENCODER, MSGL_INFO,
"xvid: CBR Rate Control -- bitrate=%dkbit/s\n",
- xvidenc_bitrate);
+ xvidenc_bitrate>16000?xvidenc_bitrate/1000:xvidenc_bitrate);
}
create->plugins[create->num_plugins].func = xvid_plugin_single;
@@ -1008,10 +1010,11 @@ static int set_create_struct(xvid_mplayer_module_t *mod)
* value is negative it is considered as being a total size
* to reach (in kilobytes) */
if(xvidenc_bitrate > 0) {
- pass2->bitrate = xvidenc_bitrate*1000;
+ if(xvidenc_bitrate > 16000) pass2->bitrate = xvidenc_bitrate;
+ else pass2->bitrate = xvidenc_bitrate*1000;
mp_msg(MSGT_MENCODER, MSGL_INFO,
"xvid: 2Pass Rate Control -- 2nd pass -- bitrate=%dkbit/s\n",
- xvidenc_bitrate);
+ xvidenc_bitrate>16000?xvidenc_bitrate/1000:xvidenc_bitrate);
} else {
pass2->bitrate = xvidenc_bitrate;
mp_msg(MSGT_MENCODER, MSGL_INFO,