Mercurial > mplayer.hg
annotate cfg-mencoder.h @ 3985:701d18898835
updated/extended some parts, based on RMFF (also initial ATRAC3 hackings and notes)
author | alex |
---|---|
date | Fri, 04 Jan 2002 19:32:58 +0000 |
parents | a14b3a600b81 |
children | 9ff9f6ce6799 |
rev | line source |
---|---|
2618 | 1 /* |
2 * config for cfgparser | |
3 */ | |
4 | |
2790 | 5 #include "cfg-common.h" |
6 | |
2618 | 7 #ifdef USE_FAKE_MONO |
8 extern int fakemono; // defined in dec_audio.c | |
9 #endif | |
10 #ifdef HAVE_ODIVX_POSTPROCESS | |
11 extern int use_old_pp; | |
12 #endif | |
13 | |
3272 | 14 extern int sws_flags; |
3771 | 15 extern int readPPOpt(void *, char *arg); |
3272 | 16 |
3663
9092546e7765
made divx4 optional (also configure checking needed) and added avcodec_close
alex
parents:
3657
diff
changeset
|
17 #ifdef HAVE_DIVX4ENCORE |
2626 | 18 struct config divx4opts_conf[]={ |
19 {"br", &divx4_param.bitrate, CONF_TYPE_INT, CONF_RANGE, 4, 24000000}, | |
20 {"rc_period", &divx4_param.rc_period, CONF_TYPE_INT, 0,0,0}, | |
21 {"rc_reaction_period", &divx4_param.rc_reaction_period, CONF_TYPE_INT, 0,0,0}, | |
22 {"rc_reaction_ratio", &divx4_param.rc_reaction_ratio, CONF_TYPE_INT, 0,0,0}, | |
23 {"min_quant", &divx4_param.min_quantizer, CONF_TYPE_INT, CONF_RANGE,0,32}, | |
24 {"max_quant", &divx4_param.max_quantizer, CONF_TYPE_INT, CONF_RANGE,0,32}, | |
25 {"key", &divx4_param.max_key_interval, CONF_TYPE_INT, CONF_MIN,0,0}, | |
26 {"deinterlace", &divx4_param.deinterlace, CONF_TYPE_FLAG, 0,0,1}, | |
27 {"q", &divx4_param.quality, CONF_TYPE_INT, CONF_RANGE, 1, 5}, | |
2643 | 28 {"crispness", &divx4_crispness, CONF_TYPE_INT, CONF_RANGE,0,100}, |
2626 | 29 {"help", "TODO: divx4opts help!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, |
30 {NULL, NULL, 0, 0, 0, 0} | |
31 }; | |
3663
9092546e7765
made divx4 optional (also configure checking needed) and added avcodec_close
alex
parents:
3657
diff
changeset
|
32 #endif |
2626 | 33 |
3357 | 34 #ifdef HAVE_MP3LAME |
2626 | 35 struct config lameopts_conf[]={ |
36 {"q", &lame_param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 9}, | |
37 {"vbr", &lame_param_vbr, CONF_TYPE_INT, CONF_RANGE, 0, vbr_max_indicator}, | |
38 {"cbr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, 0}, | |
3357 | 39 {"abr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, vbr_abr}, |
2626 | 40 {"mode", &lame_param_mode, CONF_TYPE_INT, CONF_RANGE, 0, MAX_INDICATOR}, |
41 {"padding", &lame_param_padding, CONF_TYPE_INT, CONF_RANGE, 0, PAD_MAX_INDICATOR}, | |
42 {"br", &lame_param_br, CONF_TYPE_INT, CONF_RANGE, 0, 1024}, | |
43 {"ratio", &lame_param_ratio, CONF_TYPE_INT, CONF_RANGE, 0, 100}, | |
2661 | 44 {"help", "TODO: lameopts help!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, |
45 {NULL, NULL, 0, 0, 0, 0} | |
46 }; | |
3357 | 47 #endif |
2661 | 48 |
3657
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
49 #ifdef USE_LIBAVCODEC |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
50 struct config lavcopts_conf[]={ |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
51 {"vcodec", &lavc_param_vcodec, CONF_TYPE_STRING, 0, 0, 0}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
52 {"vbitrate", &lavc_param_vbitrate, CONF_TYPE_INT, CONF_RANGE, 4, 24000000}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
53 {"vhq", &lavc_param_vhq, CONF_TYPE_FLAG, 0, 0, 1}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
54 {"keyint", &lavc_param_keyint, CONF_TYPE_INT, 0, 0, 0}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
55 {NULL, NULL, 0, 0, 0, 0} |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
56 }; |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
57 #endif |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
58 |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
59 #ifdef USE_WIN32DLL |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
60 struct config vfwopts_conf[]={ |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
61 {NULL, NULL, 0, 0, 0, 0} |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
62 }; |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
63 #endif |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
64 |
2661 | 65 struct config ovc_conf[]={ |
3384 | 66 {"copy", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_COPY}, |
3361
5d70491f438c
new video codec: frameno (just the number of frame - for 3-pass encoding)
arpi
parents:
3357
diff
changeset
|
67 {"frameno", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_FRAMENO}, |
2661 | 68 {"divx4", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_DIVX4}, |
3480 | 69 {"raw", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_RAW}, |
3657
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
70 {"lavc", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_LIBAVCODEC}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
71 {"help", "\nAvailable codecs:\n copy\n frameno\n divx4\n raw\n lavc\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, |
2661 | 72 {NULL, NULL, 0, 0, 0, 0} |
73 }; | |
74 | |
75 struct config oac_conf[]={ | |
3386 | 76 {"copy", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_COPY}, |
2661 | 77 {"pcm", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_PCM}, |
3357 | 78 #ifdef HAVE_MP3LAME |
2661 | 79 {"mp3lame", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_VBRMP3}, |
80 {"help", "\nAvailable codecs:\n copy\n pcm\n mp3lame\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, | |
3357 | 81 #else |
82 {"mp3lame", "MPlayer was compiled without libmp3lame support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, | |
83 {"help", "\nAvailable codecs:\n copy\n pcm\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, | |
84 #endif | |
2626 | 85 {NULL, NULL, 0, 0, 0, 0} |
86 }; | |
87 | |
2618 | 88 struct config conf[]={ |
89 /* name, pointer, type, flags, min, max */ | |
90 {"include", cfg_include, CONF_TYPE_FUNC_PARAM, 0, 0, 0}, /* this must be the first!!! */ | |
91 | |
2626 | 92 {"ofps", &force_ofps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0}, |
93 {"o", &out_filename, CONF_TYPE_STRING, 0, 0, 0}, | |
94 | |
3236 | 95 {"x", &vo_w, CONF_TYPE_INT, CONF_RANGE, 0, 4096}, |
96 {"y", &vo_h, CONF_TYPE_INT, CONF_RANGE, 0, 4096}, | |
97 | |
2626 | 98 {"mp3file", &mp3_filename, CONF_TYPE_STRING, 0, 0, 0}, |
99 {"ac3file", &ac3_filename, CONF_TYPE_STRING, 0, 0, 0}, | |
100 | |
2661 | 101 // {"oac", &out_audio_codec, CONF_TYPE_STRING, 0, 0, 0}, |
102 // {"ovc", &out_video_codec, CONF_TYPE_STRING, 0, 0, 0}, | |
103 {"oac", oac_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0}, | |
104 {"ovc", ovc_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0}, | |
2643 | 105 |
3657
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
106 {"ffourcc", &force_fourcc, CONF_TYPE_STRING, 0, 4, 4}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
107 |
3663
9092546e7765
made divx4 optional (also configure checking needed) and added avcodec_close
alex
parents:
3657
diff
changeset
|
108 #ifdef HAVE_DIVX4ENCORE |
2643 | 109 {"pass", &pass, CONF_TYPE_INT, CONF_RANGE,0,2}, |
3376 | 110 {"passlogfile", &passtmpfile, CONF_TYPE_STRING, 0, 0, 0}, |
2626 | 111 |
112 {"divx4opts", divx4opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0}, | |
3663
9092546e7765
made divx4 optional (also configure checking needed) and added avcodec_close
alex
parents:
3657
diff
changeset
|
113 #endif |
3357 | 114 #ifdef HAVE_MP3LAME |
2626 | 115 {"lameopts", lameopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0}, |
3357 | 116 #endif |
3657
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
117 #ifdef USE_LIBAVCODEC |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
118 {"lavcopts", lavcopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
119 #endif |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
120 #ifdef USE_WIN32DLL |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
121 {"vfwopts", vfwopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0}, |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
122 #endif |
2618 | 123 |
2790 | 124 #define MAIN_CONF |
2618 | 125 #include "cfg-common.h" |
2790 | 126 #undef MAIN_CONF |
2618 | 127 |
128 // {"quiet", &quiet, CONF_TYPE_FLAG, 0, 0, 1}, | |
129 {"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE, 0, 100}, | |
130 {"v", cfg_inc_verbose, CONF_TYPE_FUNC, 0, 0, 0}, | |
131 // {"-help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, | |
132 // {"help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, | |
133 // {"h", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0}, | |
134 {NULL, NULL, 0, 0, 0, 0} | |
135 }; |