summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/ve_xvid.c
diff options
context:
space:
mode:
authorkmkaplan <kmkaplan@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-09-21 13:09:57 +0000
committerkmkaplan <kmkaplan@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-09-21 13:09:57 +0000
commita51fad251952252a9a3ce8fa37f0809f75284dae (patch)
treeef07140111d6de4462018fe3af5e954f6bd33940 /libmpcodecs/ve_xvid.c
parent32e6696306cce4b6ca706796890c58160a11455c (diff)
downloadmpv-a51fad251952252a9a3ce8fa37f0809f75284dae.tar.bz2
mpv-a51fad251952252a9a3ce8fa37f0809f75284dae.tar.xz
Use string selection to choose mode
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7459 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs/ve_xvid.c')
-rw-r--r--libmpcodecs/ve_xvid.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/libmpcodecs/ve_xvid.c b/libmpcodecs/ve_xvid.c
index 1875528e18..45b34aa5ef 100644
--- a/libmpcodecs/ve_xvid.c
+++ b/libmpcodecs/ve_xvid.c
@@ -77,7 +77,23 @@ struct {
-1, /* fixed_quant */
};
+static struct config mode_conf[] = {
+ /* cbr, vbrqual, vbrquant, 2pass-1, 2pass-2-int, 2pass-2-ext */
+ { "cbr", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_CBR, NULL},
+ { "fixedquant", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_FIXED_QUANT, NULL},
+ { "2pass-1", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_2PASS_1, NULL},
+ { "2pass-2", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_2PASS_2, NULL},
+ { "help", "\nAvailable modes: \n"
+ " cbr - Constant Bit Rate\n"
+ " 2pass-1 - First pass of two pass mode\n"
+ " 2pass-2 - Second pass of two pass mode\n"
+ " fixedquant - Fixed quantizer mode\n"
+ "\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+ { NULL, NULL, 0, 0, 0, 0, NULL}
+};
+
struct config xvidencopts_conf[] = {
+ { "mode", mode_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
{ "quality", &xvidenc_param.quality, CONF_TYPE_INT, CONF_RANGE, 0,
sizeof(divx4_motion_presets) / sizeof(divx4_motion_presets[0]) - 1, NULL},
{ "br", &xvidenc_param.bitrate, CONF_TYPE_INT, 0, 0, 0, NULL},
@@ -87,11 +103,6 @@ struct config xvidencopts_conf[] = {
{ "max_quantizer", &xvidenc_param.max_quantizer, CONF_TYPE_INT, 0, 0, NULL},
{ "min_quantizer", &xvidenc_param.max_quantizer, CONF_TYPE_INT, 0, 0, NULL},
{ "max_key_interval", &xvidenc_param.max_key_interval, CONF_TYPE_INT, 0, 0, NULL},
- /* cbr, vbrqual, vbrquant, 2pass-1, 2pass-2-int, 2pass-2-ext */
- { "cbr", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_CBR, NULL},
- { "2pass-1", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_2PASS_1, NULL},
- { "2pass-2", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_2PASS_2, NULL},
- { "fixedquant", &xvidenc_param.mode, CONF_TYPE_FLAG, 0, 0, XVID_MODE_FIXED_QUANT, NULL},
{ "nodebug", &xvidenc_param.debug, CONF_TYPE_FLAG, 0, 0, 0, NULL},
{ "debug", &xvidenc_param.debug, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{ "statsfile", &xvidenc_param.stats_file, CONF_TYPE_STRING, 0, 0, 0, NULL}, /* for XVID_MODE_2PASS_1/22 */