Fix waveformatex size calculation
[mplayer.git] / cfg-common.h
bloba7b236a9280d36f9b566955d3803c3e6e291727c
1 #ifdef MAIN_CONF /* this will be included in conf[] */
3 // ------------------------- stream options --------------------
5 #ifdef USE_STREAM_CACHE
6 {"cache", &stream_cache_size, CONF_TYPE_INT, CONF_RANGE, 4, 65536, NULL},
7 {"nocache", &stream_cache_size, CONF_TYPE_FLAG, 0, 1, 0, NULL},
8 #else
9 {"cache", "MPlayer was compiled WITHOUT cache2 support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
10 #endif
11 {"vcd", "-vcd N is deprecated, use vcd://N instead.\n", CONF_TYPE_PRINT, CONF_NOCFG ,0,0, NULL},
12 {"cuefile", "-cuefile is deprecated, use cue://filname:N where N is the track number.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
13 {"cdrom-device", &cdrom_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
14 #ifdef USE_DVDNAV
15 {"dvdnav", "-dvdnav deprecated, use dvdnav:// instead.\n", CONF_TYPE_PRINT, 0, 0, 1, NULL},
16 {"skipopening", &dvd_nav_skip_opening, CONF_TYPE_FLAG, 0, 0, 1, NULL},
17 {"noskipopening", &dvd_nav_skip_opening, CONF_TYPE_FLAG, 0, 1, 0, NULL},
18 #endif
19 #ifdef USE_DVDREAD
20 {"dvd-device", &dvd_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
21 {"dvd", "-dvd N is deprecated, use dvd://N instead.\n" , CONF_TYPE_PRINT, 0, 0, 0, NULL},
22 {"dvdangle", &dvd_angle, CONF_TYPE_INT, CONF_RANGE, 1, 99, NULL},
23 {"chapter", dvd_parse_chapter_range, CONF_TYPE_FUNC_PARAM, 0, 0, 0, NULL},
24 {"alang", &audio_lang, CONF_TYPE_STRING, 0, 0, 0, NULL},
25 #else
26 {"dvd", "MPlayer was compiled WITHOUT libdvdread support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
27 #endif
28 {"slang", &dvdsub_lang, CONF_TYPE_STRING, 0, 0, 0, NULL},
30 #ifdef HAVE_LIBCSS
31 {"dvdauth", &dvd_auth_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
32 {"dvdkey", &dvdimportkey, CONF_TYPE_STRING, 0, 0, 0, NULL},
33 {"csslib", &css_so, CONF_TYPE_STRING, 0, 0, 0, NULL},
34 #else
35 {"dvdauth", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
36 {"dvdkey", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
37 {"csslib", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
38 #endif
40 #ifdef MPLAYER_NETWORK
41 {"user", &network_username, CONF_TYPE_STRING, 0, 0, 0, NULL},
42 {"passwd", &network_password, CONF_TYPE_STRING, 0, 0, 0, NULL},
43 {"bandwidth", &network_bandwidth, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
44 {"user-agent", &network_useragent, CONF_TYPE_STRING, 0, 0, 0, NULL},
46 {"prefer-ipv4", &network_prefer_ipv4, CONF_TYPE_FLAG, 0, 0, 1, NULL},
47 {"ipv4-only-proxy", &network_ipv4_only_proxy, CONF_TYPE_FLAG, 0, 0, 1, NULL},
49 #ifdef HAVE_AF_INET6
50 {"prefer-ipv6", &network_prefer_ipv4, CONF_TYPE_FLAG, 0, 1, 0, NULL},
51 #else
52 {"prefer-ipv6", "MPlayer was compiled WITHOUT IPv6 support\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
53 #endif
55 #else
56 {"user", "MPlayer was compiled WITHOUT streaming(network) support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
57 {"passwd", "MPlayer was compiled WITHOUT streaming(network) support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
58 {"bandwidth", "MPlayer was compiled WITHOUT streaming(network) support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
59 {"user-agent", "MPlayer was compiled WITHOUT streaming(network) support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
60 #endif
63 // ------------------------- demuxer options --------------------
65 // number of frames to play/convert
66 {"frames", &play_n_frames_mf, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
68 // seek to byte/seconds position
69 {"sb", &seek_to_byte, CONF_TYPE_POSITION, CONF_MIN, 0, 0, NULL},
70 {"ss", &seek_to_sec, CONF_TYPE_STRING, CONF_MIN, 0, 0, NULL},
72 // AVI specific: force non-interleaved mode
73 {"ni", &force_ni, CONF_TYPE_FLAG, 0, 0, 1, NULL},
74 {"noni", &force_ni, CONF_TYPE_FLAG, 0, 1, 0, NULL},
76 // AVI and OGG only: (re)build index at startup
77 {"noidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 0, NULL},
78 {"idx", &index_mode, CONF_TYPE_FLAG, 0, -1, 1, NULL},
79 {"forceidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 2, NULL},
80 {"saveidx", &index_file_save, CONF_TYPE_STRING, 0, 0, 0, NULL},
81 {"loadidx", &index_file_load, CONF_TYPE_STRING, 0, 0, 0, NULL},
83 // select audio/videosubtitle stream
84 {"aid", &audio_id, CONF_TYPE_INT, CONF_RANGE, 0, 8190, NULL},
85 {"vid", &video_id, CONF_TYPE_INT, CONF_RANGE, 0, 8190, NULL},
86 {"sid", &dvdsub_id, CONF_TYPE_INT, CONF_RANGE, 0, 8190, NULL},
87 {"novideo", &video_id, CONF_TYPE_FLAG, 0, -1, -2, NULL},
89 { "hr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 0, 1, NULL },
90 { "nohr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 1, 0, NULL},
92 { "rawaudio", &demux_rawaudio_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
93 { "rawvideo", &demux_rawvideo_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
95 #ifdef HAVE_CDDA
96 { "cdda", &cdda_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
97 #endif
99 // demuxer.c - select audio/sub file/demuxer
100 { "audiofile", &audio_stream, CONF_TYPE_STRING, 0, 0, 0, NULL },
101 { "audiofile-cache", &audio_stream_cache, CONF_TYPE_INT, CONF_RANGE, 50, 65536, NULL},
102 { "subfile", &sub_stream, CONF_TYPE_STRING, 0, 0, 0, NULL },
103 { "demuxer", &demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL },
104 { "audio-demuxer", &audio_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL },
105 { "sub-demuxer", &sub_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL },
106 { "extbased", &extension_parsing, CONF_TYPE_FLAG, 0, 0, 1, NULL },
107 { "noextbased", &extension_parsing, CONF_TYPE_FLAG, 0, 1, 0, NULL },
109 {"mf", mfopts_conf, CONF_TYPE_SUBCONFIG, 0,0,0, NULL},
110 #ifdef USE_TV
111 {"tv", tvopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
112 #else
113 {"tv", "MPlayer was compiled without TV Interface support\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
114 #endif
115 {"vivo", vivoopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
116 #ifdef HAS_DVBIN_SUPPORT
117 {"dvbin", dvbin_opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
118 #endif
121 // ------------------------- a-v sync options --------------------
123 // AVI specific: A-V sync mode (bps vs. interleaving)
124 {"bps", &pts_from_bps, CONF_TYPE_FLAG, 0, 0, 1, NULL},
125 {"nobps", &pts_from_bps, CONF_TYPE_FLAG, 0, 1, 0, NULL},
127 // set A-V sync correction speed (0=disables it):
128 {"mc", &default_max_pts_correction, CONF_TYPE_FLOAT, CONF_RANGE, 0, 10, NULL},
130 // force video/audio rate:
131 {"fps", &force_fps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0, NULL},
132 {"srate", &force_srate, CONF_TYPE_INT, CONF_RANGE, 1000, 8*48000, NULL},
133 {"channels", &audio_output_channels, CONF_TYPE_INT, CONF_RANGE, 1, 6, NULL},
134 {"format", &audio_output_format, CONF_TYPE_INT, CONF_RANGE, 0, 0x00002000, NULL},
136 // ------------------------- codec/vfilter options --------------------
138 // MP3-only: select stereo/left/right
139 #ifdef USE_FAKE_MONO
140 {"stereo", &fakemono, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
141 #endif
143 // disable audio
144 {"sound", &audio_id, CONF_TYPE_FLAG, 0, -2, -1, NULL},
145 {"nosound", &audio_id, CONF_TYPE_FLAG, 0, -1, -2, NULL},
147 {"af-adv", audio_filter_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
148 {"af", &af_cfg.list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
150 {"vop*", &vo_plugin_args, CONF_TYPE_OBJ_SETTINGS_LIST, 0, 0, 0,&vf_obj_list },
151 {"vf*", &vf_settings, CONF_TYPE_OBJ_SETTINGS_LIST, 0, 0, 0, &vf_obj_list},
152 // select audio/video codec (by name) or codec family (by number):
153 // {"afm", &audio_family, CONF_TYPE_INT, CONF_MIN, 0, 22, NULL}, // keep ranges in sync
154 // {"vfm", &video_family, CONF_TYPE_INT, CONF_MIN, 0, 29, NULL}, // with codec-cfg.c
155 // {"afm", &audio_fm, CONF_TYPE_STRING, 0, 0, 0, NULL},
156 {"afm", &audio_fm_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
157 {"vfm", &video_fm_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
158 // {"ac", &audio_codec, CONF_TYPE_STRING, 0, 0, 0, NULL},
159 {"ac", &audio_codec_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
160 {"vc", &video_codec_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
162 // postprocessing:
163 {"divxq", "Option -divxq has been renamed to -pp (postprocessing), use -pp !\n",
164 CONF_TYPE_PRINT, 0, 0, 0, NULL},
165 #ifdef USE_LIBAVCODEC
166 {"pp", &divx_quality, CONF_TYPE_INT, 0, 0, 0, NULL},
167 #endif
168 #ifdef HAVE_ODIVX_POSTPROCESS
169 {"oldpp", &use_old_pp, CONF_TYPE_FLAG, 0, 0, 1, NULL},
170 #else
171 {"oldpp", "MPlayer was compiled without opendivx library\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
172 #endif
173 {"npp", "-npp has been removed, use -vf pp and read the fine manual.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
174 #ifdef FF_POSTPROCESS
175 {"pphelp", &pp_help, CONF_TYPE_PRINT_INDIRECT, CONF_NOCFG, 0, 0, NULL},
176 #endif
178 // scaling:
179 {"sws", &sws_flags, CONF_TYPE_INT, 0, 0, 2, NULL},
180 {"ssf", scaler_filter_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
181 {"zoom", &softzoom, CONF_TYPE_FLAG, 0, 0, 1, NULL},
182 {"nozoom", &softzoom, CONF_TYPE_FLAG, 0, 1, 0, NULL},
183 {"aspect", &movie_aspect, CONF_TYPE_FLOAT, CONF_RANGE, 0.2, 3.0, NULL},
184 {"noaspect", &movie_aspect, CONF_TYPE_FLAG, 0, 0, 0, NULL},
185 {"xy", &screen_size_xy, CONF_TYPE_FLOAT, CONF_RANGE, 0.001, 4096, NULL},
187 {"flip", &flip, CONF_TYPE_FLAG, 0, -1, 1, NULL},
188 {"noflip", &flip, CONF_TYPE_FLAG, 0, -1, 0, NULL},
189 {"tsfastparse", "-tsfastparse isn't a valid option anymore.\n", CONF_TYPE_PRINT, CONF_NOCFG ,0,0, NULL
191 {"tsprog", &ts_prog, CONF_TYPE_INT, CONF_RANGE, 0, 65534, NULL},
192 #define TS_MAX_PROBE_SIZE 2000000 /* dont forget to change this in libmpdemux/demux_ts.c too */
193 {"tsprobe", &ts_probe, CONF_TYPE_POSITION, 0, 0, TS_MAX_PROBE_SIZE, NULL},
194 {"tskeepbroken", &ts_keep_broken, CONF_TYPE_FLAG, 0, 0, 1, NULL},
196 // draw by slices or whole frame (useful with libmpeg2/libavcodec)
197 {"slices", &vd_use_slices, CONF_TYPE_FLAG, 0, 0, 1, NULL},
198 {"noslices", &vd_use_slices, CONF_TYPE_FLAG, 0, 1, 0, NULL},
200 #ifdef USE_LIBAVCODEC
201 {"lavdopts", lavc_decode_opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
202 #endif
203 #ifdef HAVE_XVID
204 {"xvidopts", xvid_dec_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
205 #endif
206 // ------------------------- subtitles options --------------------
208 #ifdef USE_SUB
209 {"sub", &sub_name, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
210 #ifdef USE_FRIBIDI
211 {"fribidi-charset", &fribidi_charset, CONF_TYPE_STRING, 0, 0, 0, NULL},
212 {"flip-hebrew", &flip_hebrew, CONF_TYPE_FLAG, 0, 0, 1, NULL},
213 {"noflip-hebrew", &flip_hebrew, CONF_TYPE_FLAG, 0, 1, 0, NULL},
214 #else
215 {"fribidi-charset", "MPlayer wasn't compiled with FriBiDi support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
216 {"flip-hebrew", "MPlayer wasn't compiled with FriBiDi support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
217 {"noflip-hebrew", "MPlayer wasn't compiled with FriBiDi support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
218 #endif
219 #ifdef USE_ICONV
220 {"subcp", &sub_cp, CONF_TYPE_STRING, 0, 0, 0, NULL},
221 #endif
222 {"subdelay", &sub_delay, CONF_TYPE_FLOAT, 0, 0.0, 10.0, NULL},
223 {"subfps", &sub_fps, CONF_TYPE_FLOAT, 0, 0.0, 10.0, NULL},
224 {"autosub", &sub_auto, CONF_TYPE_FLAG, 0, 0, 1, NULL},
225 {"noautosub", &sub_auto, CONF_TYPE_FLAG, 0, 1, 0, NULL},
226 {"unicode", &sub_unicode, CONF_TYPE_FLAG, 0, 0, 1, NULL},
227 {"nounicode", &sub_unicode, CONF_TYPE_FLAG, 0, 1, 0, NULL},
228 {"utf8", &sub_utf8, CONF_TYPE_FLAG, 0, 0, 1, NULL},
229 {"noutf8", &sub_utf8, CONF_TYPE_FLAG, 0, 1, 0, NULL},
230 // specify IFO file for VOBSUB subtitle
231 {"ifo", &spudec_ifo, CONF_TYPE_STRING, 0, 0, 0, NULL},
232 // enable Closed Captioning display
233 {"subcc", &subcc_enabled, CONF_TYPE_FLAG, 0, 0, 1, NULL},
234 {"nosubcc", &subcc_enabled, CONF_TYPE_FLAG, 0, 1, 0, NULL},
235 {"overlapsub", &suboverlap_enabled, CONF_TYPE_FLAG, 0, 0, 2, NULL},
236 {"nooverlapsub", &suboverlap_enabled, CONF_TYPE_FLAG, 0, 0, 0, NULL},
237 {"sub-bg-color", &sub_bg_color, CONF_TYPE_INT, CONF_RANGE, 0, 255, NULL},
238 {"sub-bg-alpha", &sub_bg_alpha, CONF_TYPE_INT, CONF_RANGE, 0, 255, NULL},
239 {"sub-no-text-pp", &sub_no_text_pp, CONF_TYPE_FLAG, 0, 0, 1, NULL},
240 {"sub-fuzziness", &sub_match_fuzziness, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
241 #endif
242 #ifdef USE_OSD
243 {"font", &font_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
244 {"ffactor", &font_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 10.0, NULL},
245 {"subpos", &sub_pos, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
246 {"subalign", &sub_alignment, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
247 {"subwidth", &sub_width_p, CONF_TYPE_INT, CONF_RANGE, 10, 100, NULL},
248 {"spualign", &spu_alignment, CONF_TYPE_INT, CONF_RANGE, -1, 2, NULL},
249 {"spuaa", &spu_aamode, CONF_TYPE_INT, CONF_RANGE, 0, 31, NULL},
250 {"spugauss", &spu_gaussvar, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 3.0, NULL},
251 #ifdef HAVE_FREETYPE
252 {"subfont-encoding", &subtitle_font_encoding, CONF_TYPE_STRING, 0, 0, 0, NULL},
253 {"subfont-text-scale", &text_font_scale_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0, 100, NULL},
254 {"subfont-osd-scale", &osd_font_scale_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0, 100, NULL},
255 {"subfont-blur", &subtitle_font_radius, CONF_TYPE_FLOAT, CONF_RANGE, 0, 8, NULL},
256 {"subfont-outline", &subtitle_font_thickness, CONF_TYPE_FLOAT, CONF_RANGE, 0, 8, NULL},
257 {"subfont-autoscale", &subtitle_autoscale, CONF_TYPE_INT, CONF_RANGE, 0, 3, NULL},
258 #endif
259 #endif
261 #else
263 #include "config.h"
265 // codec/filter opts: (defiend at libmpcodecs/vd.c)
266 extern float screen_size_xy;
267 extern float movie_aspect;
268 extern int softzoom;
269 extern int flip;
270 extern int vd_use_slices;
271 extern int divx_quality;
273 /* from dec_audio, currently used for ac3surround decoder only */
274 extern int audio_output_channels;
276 #ifdef MPLAYER_NETWORK
277 /* defined in network.c */
278 extern char *network_username;
279 extern char *network_password;
280 extern int network_bandwidth;
281 extern char *network_useragent;
283 extern int network_prefer_ipv4;
284 extern int network_ipv4_only_proxy;
286 #endif
288 /* defined in libmpdemux: */
289 extern int hr_mp3_seek;
290 extern m_option_t demux_rawaudio_opts[];
291 extern m_option_t demux_rawvideo_opts[];
292 extern m_option_t cdda_opts[];
294 extern char* audio_stream;
295 extern char* sub_stream;
296 extern int demuxer_type, audio_demuxer_type, sub_demuxer_type;
297 extern int ts_prog;
298 extern int ts_keep_broken;
299 extern off_t ts_probe;
301 #include "libmpdemux/tv.h"
303 #ifdef USE_EDL
304 extern char* edl_filename;
305 extern char* edl_output_filename;
306 #endif
308 #ifdef USE_TV
309 m_option_t tvopts_conf[]={
310 {"on", "-tv on is deprecated, use tv:// instead\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
311 {"immediatemode", &tv_param_immediate, CONF_TYPE_FLAG, 0, 0, 0, NULL},
312 {"noaudio", &tv_param_noaudio, CONF_TYPE_FLAG, 0, 0, 1, NULL},
313 {"audiorate", &tv_param_audiorate, CONF_TYPE_INT, 0, 0, 0, NULL},
314 {"driver", &tv_param_driver, CONF_TYPE_STRING, 0, 0, 0, NULL},
315 {"device", &tv_param_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
316 {"freq", &tv_param_freq, CONF_TYPE_STRING, 0, 0, 0, NULL},
317 {"channel", &tv_param_channel, CONF_TYPE_STRING, 0, 0, 0, NULL},
318 {"chanlist", &tv_param_chanlist, CONF_TYPE_STRING, 0, 0, 0, NULL},
319 {"norm", &tv_param_norm, CONF_TYPE_STRING, 0, 0, 0, NULL},
320 #ifdef HAVE_TV_V4L2
321 {"normid", &tv_param_normid, CONF_TYPE_INT, 0, 0, 0, NULL},
322 #endif
323 {"width", &tv_param_width, CONF_TYPE_INT, 0, 0, 4096, NULL},
324 {"height", &tv_param_height, CONF_TYPE_INT, 0, 0, 4096, NULL},
325 {"input", &tv_param_input, CONF_TYPE_INT, 0, 0, 20, NULL},
326 {"outfmt", &tv_param_outfmt, CONF_TYPE_IMGFMT, 0, 0, 0, NULL},
327 {"fps", &tv_param_fps, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
328 {"channels", &tv_param_channels, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
329 {"brightness", &tv_param_brightness, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
330 {"contrast", &tv_param_contrast, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
331 {"hue", &tv_param_hue, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
332 {"saturation", &tv_param_saturation, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
333 #if defined(HAVE_TV_V4L) || defined(HAVE_TV_V4L2)
334 {"amode", &tv_param_amode, CONF_TYPE_INT, CONF_RANGE, 0, 3, NULL},
335 {"volume", &tv_param_volume, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
336 {"bass", &tv_param_bass, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
337 {"treble", &tv_param_treble, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
338 {"balance", &tv_param_balance, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
339 {"forcechan", &tv_param_forcechan, CONF_TYPE_INT, CONF_RANGE, 1, 2, NULL},
340 {"forceaudio", &tv_param_force_audio, CONF_TYPE_FLAG, 0, 0, 1, NULL},
341 {"buffersize", &tv_param_buffer_size, CONF_TYPE_INT, CONF_RANGE, 16, 1024, NULL},
342 {"mjpeg", &tv_param_mjpeg, CONF_TYPE_FLAG, 0, 0, 1, NULL},
343 {"decimation", &tv_param_decimation, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL},
344 {"quality", &tv_param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
345 #ifdef HAVE_ALSA9
346 {"alsa", &tv_param_alsa, CONF_TYPE_FLAG, 0, 0, 1, NULL},
347 #endif
348 {"adevice", &tv_param_adevice, CONF_TYPE_STRING, 0, 0, 0, NULL},
349 #endif
350 {"audioid", &tv_param_audio_id, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL},
351 {NULL, NULL, 0, 0, 0, 0, NULL}
353 #endif
355 #ifdef HAS_DVBIN_SUPPORT
356 #include "libmpdemux/dvbin.h"
357 extern m_config_t dvbin_opts_conf[];
358 #endif
360 #ifdef USE_FRIBIDI
361 extern char *fribidi_charset;
362 extern int flip_hebrew;
363 #endif
366 extern int audio_stream_cache;
368 extern int sws_chr_vshift;
369 extern int sws_chr_hshift;
370 extern float sws_chr_gblur;
371 extern float sws_lum_gblur;
372 extern float sws_chr_sharpen;
373 extern float sws_lum_sharpen;
375 m_option_t scaler_filter_conf[]={
376 {"lgb", &sws_lum_gblur, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
377 {"cgb", &sws_chr_gblur, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
378 {"cvs", &sws_chr_vshift, CONF_TYPE_INT, 0, 0, 0, NULL},
379 {"chs", &sws_chr_hshift, CONF_TYPE_INT, 0, 0, 0, NULL},
380 {"ls", &sws_lum_sharpen, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
381 {"cs", &sws_chr_sharpen, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
382 {NULL, NULL, 0, 0, 0, 0, NULL}
385 /* VIVO demuxer options: */
386 extern int vivo_param_version;
387 extern char *vivo_param_acodec;
388 extern int vivo_param_abitrate;
389 extern int vivo_param_samplerate;
390 extern int vivo_param_bytesperblock;
391 extern int vivo_param_width;
392 extern int vivo_param_height;
393 extern int vivo_param_vformat;
394 extern char *dvd_device, *cdrom_device;
396 m_option_t vivoopts_conf[]={
397 {"version", &vivo_param_version, CONF_TYPE_INT, 0, 0, 0, NULL},
398 /* audio options */
399 {"acodec", &vivo_param_acodec, CONF_TYPE_STRING, 0, 0, 0, NULL},
400 {"abitrate", &vivo_param_abitrate, CONF_TYPE_INT, 0, 0, 0, NULL},
401 {"samplerate", &vivo_param_samplerate, CONF_TYPE_INT, 0, 0, 0, NULL},
402 {"bytesperblock", &vivo_param_bytesperblock, CONF_TYPE_INT, 0, 0, 0, NULL},
403 /* video options */
404 {"width", &vivo_param_width, CONF_TYPE_INT, 0, 0, 0, NULL},
405 {"height", &vivo_param_height, CONF_TYPE_INT, 0, 0, 0, NULL},
406 {"vformat", &vivo_param_vformat, CONF_TYPE_INT, 0, 0, 0, NULL},
407 {NULL, NULL, 0, 0, 0, 0, NULL}
410 extern int mf_w;
411 extern int mf_h;
412 extern float mf_fps;
413 extern char * mf_type;
414 extern m_obj_settings_t* vf_settings;
415 extern m_obj_list_t vf_obj_list;
417 m_option_t mfopts_conf[]={
418 {"on", "-mf on is deprecated, use mf://files instead\n", CONF_TYPE_PRINT, 0, 0, 1, NULL},
419 {"w", &mf_w, CONF_TYPE_INT, 0, 0, 0, NULL},
420 {"h", &mf_h, CONF_TYPE_INT, 0, 0, 0, NULL},
421 {"fps", &mf_fps, CONF_TYPE_FLOAT, 0, 0, 0, NULL},
422 {"type", &mf_type, CONF_TYPE_STRING, 0, 0, 0, NULL},
423 {NULL, NULL, 0, 0, 0, 0, NULL}
426 extern m_obj_settings_t* vo_plugin_args;
428 #include "libaf/af.h"
429 extern af_cfg_t af_cfg; // Audio filter configuration, defined in libmpcodecs/dec_audio.c
430 m_option_t audio_filter_conf[]={
431 {"list", &af_cfg.list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
432 {"force", &af_cfg.force, CONF_TYPE_INT, CONF_RANGE, 0, 7, NULL},
433 {NULL, NULL, 0, 0, 0, 0, NULL}
436 #ifdef USE_LIBAVCODEC
437 extern m_option_t lavc_decode_opts_conf[];
438 #endif
440 #ifdef HAVE_XVID
441 extern m_option_t xvid_dec_opts[];
442 #endif
444 int dvd_parse_chapter_range(m_option_t*, const char*);
446 #endif