Mercurial > mplayer.hg
annotate cfg-mencoder.h @ 7975:6e03baea602f
Adding compile problem fix from Gabucino
author | anders |
---|---|
date | Wed, 30 Oct 2002 09:05:02 +0000 |
parents | f483ab704252 |
children | 136e7e515764 |
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); |
4256
bbaa26821fdf
Added reverting support for -aa* -zr* -pp and -npp options
albeu
parents:
4207
diff
changeset
|
16 extern void revertPPOpt(void *conf, char* opt); |
3272 | 17 |
3663
9092546e7765
made divx4 optional (also configure checking needed) and added avcodec_close
alex
parents:
3657
diff
changeset
|
18 #ifdef HAVE_DIVX4ENCORE |
5553
38697931adf4
video codecs moved to libmpencoders, crop/scale removed, use -vop for that
arpi
parents:
5390
diff
changeset
|
19 extern struct config divx4opts_conf[]; |
3663
9092546e7765
made divx4 optional (also configure checking needed) and added avcodec_close
alex
parents:
3657
diff
changeset
|
20 #endif |
2626 | 21 |
3357 | 22 #ifdef HAVE_MP3LAME |
2626 | 23 struct config lameopts_conf[]={ |
4157 | 24 {"q", &lame_param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL}, |
5922
30eea1bd1b64
fixed bogus overloaded "q" parameter for lame mp3 encoding
rfelker
parents:
5848
diff
changeset
|
25 {"aq", &lame_param_algqual, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL}, |
4157 | 26 {"vbr", &lame_param_vbr, CONF_TYPE_INT, CONF_RANGE, 0, vbr_max_indicator, NULL}, |
27 {"cbr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, 0, NULL}, | |
28 {"abr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, vbr_abr, NULL}, | |
29 {"mode", &lame_param_mode, CONF_TYPE_INT, CONF_RANGE, 0, MAX_INDICATOR, NULL}, | |
30 {"padding", &lame_param_padding, CONF_TYPE_INT, CONF_RANGE, 0, PAD_MAX_INDICATOR, NULL}, | |
31 {"br", &lame_param_br, CONF_TYPE_INT, CONF_RANGE, 0, 1024, NULL}, | |
32 {"ratio", &lame_param_ratio, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL}, | |
5848
48a0667742b9
volume setting with lame - patch by silicon@falcon.sch.bme.hu
arpi
parents:
5780
diff
changeset
|
33 {"vol", &lame_param_scale, CONF_TYPE_FLOAT, CONF_RANGE, 0, 10, NULL}, |
4157 | 34 {"help", "TODO: lameopts help!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, |
35 {NULL, NULL, 0, 0, 0, 0, NULL} | |
2661 | 36 }; |
3357 | 37 #endif |
2661 | 38 |
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
|
39 #ifdef USE_LIBAVCODEC |
5553
38697931adf4
video codecs moved to libmpencoders, crop/scale removed, use -vop for that
arpi
parents:
5390
diff
changeset
|
40 extern struct config lavcopts_conf[]; |
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
|
41 #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
|
42 |
af1f8e2d693a
added libavcodec support (mjpeg,h263,rv10,mpeg1 codecs tested&working) and added -ffourcc option (force fourcc in ouput)
alex
parents:
3480
diff
changeset
|
43 #ifdef USE_WIN32DLL |
6084 | 44 extern struct config vfwopts_conf[]; |
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
|
45 #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
|
46 |
7457 | 47 #ifdef HAVE_XVID |
48 extern struct config xvidencopts_conf[]; | |
49 #endif | |
50 | |
2661 | 51 struct config ovc_conf[]={ |
4157 | 52 {"copy", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_COPY, NULL}, |
53 {"frameno", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_FRAMENO, NULL}, | |
54 {"divx4", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_DIVX4, NULL}, | |
5553
38697931adf4
video codecs moved to libmpencoders, crop/scale removed, use -vop for that
arpi
parents:
5390
diff
changeset
|
55 // {"raw", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_RAW, NULL}, |
4157 | 56 {"lavc", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_LIBAVCODEC, NULL}, |
5553
38697931adf4
video codecs moved to libmpencoders, crop/scale removed, use -vop for that
arpi
parents:
5390
diff
changeset
|
57 // {"null", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_NULL, NULL}, |
4575 | 58 {"rawrgb", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_RAWRGB, NULL}, |
59 {"vfw", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_VFW, NULL}, | |
5578 | 60 {"libdv", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_LIBDV, NULL}, |
7457 | 61 {"xvid", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_XVID, NULL}, |
6923
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
62 {"help", "\nAvailable codecs:\n" |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
63 " copy - frame copy, without re-encoding. doesn't work with filters!\n" |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
64 " frameno - special audio-only file for 3-pass encoding, see DOCS!\n" |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
65 " rawrgb - uncompressed RGB 24bpp video\n" |
5678 | 66 #ifdef HAVE_DIVX4ENCORE |
6923
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
67 " divx4 - using divx4linux/divx5linux or xvid (depends on configuration)\n" |
5678 | 68 #endif |
69 #ifdef USE_LIBAVCODEC | |
6923
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
70 " lavc - using libavcodec codecs - best quality!\n" |
5678 | 71 #endif |
72 #ifdef USE_WIN32DLL | |
6923
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
73 " vfw - using VfW DLLs, currently only AVID is supported\n" |
5678 | 74 #endif |
75 #ifdef HAVE_LIBDV095 | |
6923
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
76 " libdv - DV encoding using libdv v0.9.5\n" |
5678 | 77 #endif |
7457 | 78 #ifdef HAVE_XVID |
79 " xvid\n" | |
80 #endif | |
5678 | 81 "\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, |
4157 | 82 {NULL, NULL, 0, 0, 0, 0, NULL} |
2661 | 83 }; |
84 | |
85 struct config oac_conf[]={ | |
4157 | 86 {"copy", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_COPY, NULL}, |
87 {"pcm", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_PCM, NULL}, | |
3357 | 88 #ifdef HAVE_MP3LAME |
4157 | 89 {"mp3lame", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_VBRMP3, NULL}, |
3357 | 90 #else |
4157 | 91 {"mp3lame", "MPlayer was compiled without libmp3lame support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, |
3357 | 92 #endif |
6923
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
93 {"help", "\nAvailable codecs:\n" |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
94 " copy - frame copy, without re-encoding (usefull for AC3)\n" |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
95 " pcm - uncompressed PCM audio\n" |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
96 #ifdef HAVE_MP3LAME |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
97 " mp3lame - cbr/abr/vbr MP3 using libmp3lame\n" |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
98 #endif |
60374fa581fc
no default oac/ovc (it just confuses users), more detailed -oac/-ovc help
arpi
parents:
6862
diff
changeset
|
99 "\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, |
4157 | 100 {NULL, NULL, 0, 0, 0, 0, NULL} |
2626 | 101 }; |
102 | |
7145
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
103 struct config info_conf[]={ |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
104 {"name", &info_name, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
105 {"artist", &info_artist, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
106 {"genre", &info_genre, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
107 {"subject", &info_subject, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
108 {"copyright", &info_copyright, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
109 {"srcform", &info_sourceform, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
110 {"comment", &info_comment, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
111 {"help", "\nAvailable INFO fields:\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
112 " name - title of the subject of the file\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
113 " artist - artist or author of the original subject of the file\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
114 " genre - original work category\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
115 " subject - contents of the file\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
116 " copyright - copyright information for the file\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
117 " srcform - original form of the material that was digitized\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
118 " comment - general comments about the file or the subject of the file\n" |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
119 "\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
120 {NULL, NULL, 0, 0, 0, 0, NULL} |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
121 }; |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
122 |
4162 | 123 static config_t mencoder_opts[]={ |
2618 | 124 /* name, pointer, type, flags, min, max */ |
4158
479c7828edbb
GLOBAL flags and other changes for new config - patch by Alban Bedel <albeu@free.fr>
arpi
parents:
4157
diff
changeset
|
125 {"include", cfg_include, CONF_TYPE_FUNC_PARAM, CONF_NOSAVE, 0, 0, NULL}, /* this must be the first!!! */ |
2618 | 126 |
4159
42fec596fe7c
-endpos option, patch by Fredrik Kuivinen <freku045@student.liu.se>
arpi
parents:
4158
diff
changeset
|
127 {"endpos", parse_end_at, CONF_TYPE_FUNC_PARAM, 0, 0, 0, NULL}, |
5974 | 128 |
129 // set output framerate - recommended for variable fps (.asf etc) files | |
130 // and for 29.97fps progressive mpeg2 streams | |
4157 | 131 {"ofps", &force_ofps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0, NULL}, |
132 {"o", &out_filename, CONF_TYPE_STRING, 0, 0, 0, NULL}, | |
2626 | 133 |
5974 | 134 // limit number of skippable frames after a non-skipped one |
5629 | 135 {"skiplimit", &skip_limit, CONF_TYPE_INT, 0, 0, 0, NULL}, |
136 {"noskiplimit", &skip_limit, CONF_TYPE_FLAG, 0, 0, -1, NULL}, | |
137 {"noskip", &skip_limit, CONF_TYPE_FLAG, 0, 0, 0, NULL}, | |
138 | |
6861 | 139 {"audio-density", &audio_density, CONF_TYPE_INT, CONF_RANGE, 1, 50, NULL}, |
140 {"audio-preload", &audio_preload, CONF_TYPE_FLOAT, CONF_RANGE, 0, 2, NULL}, | |
6862 | 141 {"audio-delay", &audio_delay, CONF_TYPE_FLOAT, CONF_MIN, 0, 0, NULL}, |
6861 | 142 |
5780 | 143 {"x", "This option is obsolete, use -vop scale=w:h for scaling\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, |
144 {"xsize", "This option is obsolete, use -vop crop=w:h:x0:y0 for cropping\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, | |
5270 | 145 |
5974 | 146 // outut audio/video codec selection |
4157 | 147 {"oac", oac_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, |
148 {"ovc", ovc_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, | |
2643 | 149 |
5974 | 150 // override FOURCC in output file |
4157 | 151 {"ffourcc", &force_fourcc, CONF_TYPE_STRING, 0, 4, 4, NULL}, |
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
|
152 |
4157 | 153 {"pass", &pass, CONF_TYPE_INT, CONF_RANGE,0,2, NULL}, |
154 {"passlogfile", &passtmpfile, CONF_TYPE_STRING, 0, 0, 0, NULL}, | |
2626 | 155 |
6674
f8551f89dd48
MEncoder vobsub ripping support, currently not compatible with windows vobsub, some bugs to be fixed. However it already works with mplayer, so it's a start.
atmos4
parents:
6671
diff
changeset
|
156 {"vobsubout", &vobsub_out, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
f8551f89dd48
MEncoder vobsub ripping support, currently not compatible with windows vobsub, some bugs to be fixed. However it already works with mplayer, so it's a start.
atmos4
parents:
6671
diff
changeset
|
157 {"vobsuboutindex", &vobsub_out_index, CONF_TYPE_INT, CONF_RANGE, 0, 31, NULL}, |
f8551f89dd48
MEncoder vobsub ripping support, currently not compatible with windows vobsub, some bugs to be fixed. However it already works with mplayer, so it's a start.
atmos4
parents:
6671
diff
changeset
|
158 {"vobsuboutid", &vobsub_out_id, CONF_TYPE_STRING, 0, 0, 0, NULL}, |
f8551f89dd48
MEncoder vobsub ripping support, currently not compatible with windows vobsub, some bugs to be fixed. However it already works with mplayer, so it's a start.
atmos4
parents:
6671
diff
changeset
|
159 |
7145
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
160 // info header strings |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
161 {"info", info_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, |
3854945aefbb
new mencoder option -info, to store copyright, title, encoder version etc in AVI
arpi
parents:
6923
diff
changeset
|
162 |
5390
386f6fcc92d5
libavcodec 2pass broke mencoder if divx4encore was not available. fixed.
rfelker
parents:
5376
diff
changeset
|
163 #ifdef HAVE_DIVX4ENCORE |
4157 | 164 {"divx4opts", divx4opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, |
3663
9092546e7765
made divx4 optional (also configure checking needed) and added avcodec_close
alex
parents:
3657
diff
changeset
|
165 #endif |
3357 | 166 #ifdef HAVE_MP3LAME |
4157 | 167 {"lameopts", lameopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, |
3357 | 168 #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
|
169 #ifdef USE_LIBAVCODEC |
4157 | 170 {"lavcopts", lavcopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, |
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
|
171 #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
|
172 #ifdef USE_WIN32DLL |
4157 | 173 {"vfwopts", vfwopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, |
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
|
174 #endif |
7457 | 175 #ifdef HAVE_XVID |
176 {"xvidencopts", xvidencopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, | |
177 #endif | |
2618 | 178 |
2790 | 179 #define MAIN_CONF |
2618 | 180 #include "cfg-common.h" |
2790 | 181 #undef MAIN_CONF |
2618 | 182 |
4157 | 183 // {"quiet", &quiet, CONF_TYPE_FLAG, 0, 0, 1, NULL}, |
4158
479c7828edbb
GLOBAL flags and other changes for new config - patch by Alban Bedel <albeu@free.fr>
arpi
parents:
4157
diff
changeset
|
184 {"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE|CONF_GLOBAL, 0, 100, NULL}, |
479c7828edbb
GLOBAL flags and other changes for new config - patch by Alban Bedel <albeu@free.fr>
arpi
parents:
4157
diff
changeset
|
185 {"v", cfg_inc_verbose, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL}, |
4157 | 186 // {"-help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, |
187 // {"help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, | |
188 // {"h", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, | |
189 {NULL, NULL, 0, 0, 0, 0, NULL} | |
2618 | 190 }; |