liba52 asm optimizations ported to amd64
[mplayer.git] / cfg-common.h
blobf4b278d8bd8e49ef18f2ece2586cb5f2c2f3124a
1 #ifdef MAIN_CONF /* this will be included in conf[] */
3 // ------------------------- common options --------------------
4 {"quiet", &quiet, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL},
5 {"noquiet", &quiet, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL},
6 {"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE|CONF_GLOBAL, 0, 100, NULL},
7 {"v", cfg_inc_verbose, CONF_TYPE_FUNC, CONF_GLOBAL|CONF_NOSAVE, 0, 0, NULL},
8 {"include", cfg_include, CONF_TYPE_FUNC_PARAM, CONF_NOSAVE, 0, 0, NULL},
9 #ifdef WIN32
10 {"priority", &proc_priority, CONF_TYPE_STRING, 0, 0, 0, NULL},
11 #endif
13 // ------------------------- stream options --------------------
15 #ifdef USE_STREAM_CACHE
16 {"cache", &stream_cache_size, CONF_TYPE_INT, CONF_RANGE, 32, 1048576, NULL},
17 {"nocache", &stream_cache_size, CONF_TYPE_FLAG, 0, 1, 0, NULL},
18 {"cache-min", &stream_cache_min_percent, CONF_TYPE_FLOAT, CONF_RANGE, 0, 99, NULL},
19 {"cache-seek-min", &stream_cache_seek_min_percent, CONF_TYPE_FLOAT, CONF_RANGE, 0, 99, NULL},
20 #else
21 {"cache", "MPlayer was compiled without cache2 support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
22 #endif
23 {"vcd", "-vcd N is deprecated, use vcd://N instead.\n", CONF_TYPE_PRINT, CONF_NOCFG ,0,0, NULL},
24 {"cuefile", "-cuefile is deprecated, use cue://filename:N where N is the track number.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
25 {"cdrom-device", &cdrom_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
26 #ifdef USE_DVDNAV
27 {"dvdnav", "-dvdnav is deprecated, use dvdnav:// instead.\n", CONF_TYPE_PRINT, 0, 0, 1, NULL},
28 {"skipopening", &dvd_nav_skip_opening, CONF_TYPE_FLAG, 0, 0, 1, NULL},
29 {"noskipopening", &dvd_nav_skip_opening, CONF_TYPE_FLAG, 0, 1, 0, NULL},
30 #endif
31 #ifdef USE_DVDREAD
32 {"dvd-device", &dvd_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
33 {"dvd", "-dvd N is deprecated, use dvd://N instead.\n" , CONF_TYPE_PRINT, 0, 0, 0, NULL},
34 {"dvdangle", &dvd_angle, CONF_TYPE_INT, CONF_RANGE, 1, 99, NULL},
35 {"chapter", dvd_parse_chapter_range, CONF_TYPE_FUNC_PARAM, 0, 0, 0, NULL},
36 #else
37 {"dvd-device", "MPlayer was compiled without libdvdread support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
38 {"dvd", "MPlayer was compiled without libdvdread support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
39 #endif
40 {"alang", &audio_lang, CONF_TYPE_STRING, 0, 0, 0, NULL},
41 {"slang", &dvdsub_lang, CONF_TYPE_STRING, 0, 0, 0, NULL},
43 {"dvdauth", "libcss is obsolete. Try libdvdread instead.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
44 {"dvdkey", "libcss is obsolete. Try libdvdread instead.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
45 {"csslib", "libcss is obsolete. Try libdvdread instead.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
47 #ifdef MPLAYER_NETWORK
48 {"user", &network_username, CONF_TYPE_STRING, 0, 0, 0, NULL},
49 {"passwd", &network_password, CONF_TYPE_STRING, 0, 0, 0, NULL},
50 {"bandwidth", &network_bandwidth, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
51 {"user-agent", &network_useragent, CONF_TYPE_STRING, 0, 0, 0, NULL},
52 {"cookies", &network_cookies_enabled, CONF_TYPE_FLAG, 0, 0, 1, NULL},
53 {"nocookies", &network_cookies_enabled, CONF_TYPE_FLAG, 0, 1, 0, NULL},
54 {"cookies-file", &cookies_file, CONF_TYPE_STRING, 0, 0, 0, NULL},
55 {"prefer-ipv4", &network_prefer_ipv4, CONF_TYPE_FLAG, 0, 0, 1, NULL},
56 {"ipv4-only-proxy", &network_ipv4_only_proxy, CONF_TYPE_FLAG, 0, 0, 1, NULL},
57 #ifdef HAVE_AF_INET6
58 {"prefer-ipv6", &network_prefer_ipv4, CONF_TYPE_FLAG, 0, 1, 0, NULL},
59 #else
60 {"prefer-ipv6", "MPlayer was compiled without IPv6 support.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
61 #endif
63 #else
64 {"user", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
65 {"passwd", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
66 {"bandwidth", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
67 {"user-agent", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
68 #endif
71 // ------------------------- demuxer options --------------------
73 // number of frames to play/convert
74 {"frames", &play_n_frames_mf, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
76 // seek to byte/seconds position
77 {"sb", &seek_to_byte, CONF_TYPE_POSITION, CONF_MIN, 0, 0, NULL},
78 {"ss", &seek_to_sec, CONF_TYPE_STRING, CONF_MIN, 0, 0, NULL},
80 #ifdef USE_EDL
81 {"edl", &edl_filename, CONF_TYPE_STRING, 0, 0, 0, NULL},
82 #else
83 {"edl", "MPlayer was compiled without EDL support.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
84 #endif
85 // AVI specific: force non-interleaved mode
86 {"ni", &force_ni, CONF_TYPE_FLAG, 0, 0, 1, NULL},
87 {"noni", &force_ni, CONF_TYPE_FLAG, 0, 1, 0, NULL},
89 // AVI and Ogg only: (re)build index at startup
90 {"noidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 0, NULL},
91 {"idx", &index_mode, CONF_TYPE_FLAG, 0, -1, 1, NULL},
92 {"forceidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 2, NULL},
93 {"saveidx", &index_file_save, CONF_TYPE_STRING, 0, 0, 0, NULL},
94 {"loadidx", &index_file_load, CONF_TYPE_STRING, 0, 0, 0, NULL},
96 // select audio/video/subtitle stream
97 {"aid", &audio_id, CONF_TYPE_INT, CONF_RANGE, 0, 8190, NULL},
98 {"vid", &video_id, CONF_TYPE_INT, CONF_RANGE, 0, 8190, NULL},
99 {"sid", &dvdsub_id, CONF_TYPE_INT, CONF_RANGE, 0, 8190, NULL},
100 {"novideo", &video_id, CONF_TYPE_FLAG, 0, -1, -2, NULL},
102 { "hr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 0, 1, NULL },
103 { "nohr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 1, 0, NULL},
105 { "rawaudio", &demux_rawaudio_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
106 { "rawvideo", &demux_rawvideo_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
108 #ifdef HAVE_CDDA
109 { "cdda", &cdda_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
110 #endif
112 // demuxer.c - select audio/sub file/demuxer
113 { "audiofile", &audio_stream, CONF_TYPE_STRING, 0, 0, 0, NULL },
114 { "audiofile-cache", &audio_stream_cache, CONF_TYPE_INT, CONF_RANGE, 50, 65536, NULL},
115 { "subfile", &sub_stream, CONF_TYPE_STRING, 0, 0, 0, NULL },
116 { "demuxer", &demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL },
117 { "audio-demuxer", &audio_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL },
118 { "sub-demuxer", &sub_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL },
119 { "extbased", &extension_parsing, CONF_TYPE_FLAG, 0, 0, 1, NULL },
120 { "noextbased", &extension_parsing, CONF_TYPE_FLAG, 0, 1, 0, NULL },
122 {"mf", mfopts_conf, CONF_TYPE_SUBCONFIG, 0,0,0, NULL},
123 #ifdef USE_TV
124 {"tv", tvopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
125 #else
126 {"tv", "MPlayer was compiled without TV interface support.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
127 #endif
128 {"vivo", vivoopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
129 #ifdef HAS_DVBIN_SUPPORT
130 {"dvbin", dvbin_opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
131 #endif
133 // ------------------------- a-v sync options --------------------
135 // AVI specific: A-V sync mode (bps vs. interleaving)
136 {"bps", &pts_from_bps, CONF_TYPE_FLAG, 0, 0, 1, NULL},
137 {"nobps", &pts_from_bps, CONF_TYPE_FLAG, 0, 1, 0, NULL},
139 // set A-V sync correction speed (0=disables it):
140 {"mc", &default_max_pts_correction, CONF_TYPE_FLOAT, CONF_RANGE, 0, 10, NULL},
142 // force video/audio rate:
143 {"fps", &force_fps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0, NULL},
144 {"srate", &force_srate, CONF_TYPE_INT, CONF_RANGE, 1000, 8*48000, NULL},
145 {"channels", &audio_output_channels, CONF_TYPE_INT, CONF_RANGE, 1, 6, NULL},
146 {"format", &audio_output_format, CONF_TYPE_AFMT, 0, 0, 0, NULL},
147 {"speed", &playback_speed, CONF_TYPE_FLOAT, CONF_RANGE, 0.01, 100.0, NULL},
149 // set a-v distance
150 {"delay", &audio_delay, CONF_TYPE_FLOAT, CONF_RANGE, -100.0, 100.0, NULL},
152 #ifdef USE_LIBA52
153 {"a52drc", &a52_drc_level, CONF_TYPE_FLOAT, CONF_RANGE, 0, 1, NULL},
154 #endif
156 // ------------------------- codec/vfilter options --------------------
158 // MP3-only: select stereo/left/right
159 #ifdef USE_FAKE_MONO
160 {"stereo", &fakemono, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
161 #endif
163 // disable audio
164 {"sound", &audio_id, CONF_TYPE_FLAG, 0, -2, -1, NULL},
165 {"nosound", &audio_id, CONF_TYPE_FLAG, 0, -1, -2, NULL},
167 {"af-adv", audio_filter_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
168 {"af", &af_cfg.list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
170 {"vop*", &vo_plugin_args, CONF_TYPE_OBJ_SETTINGS_LIST, 0, 0, 0,&vf_obj_list },
171 {"vf*", &vf_settings, CONF_TYPE_OBJ_SETTINGS_LIST, 0, 0, 0, &vf_obj_list},
172 // select audio/video codec (by name) or codec family (by number):
173 // {"afm", &audio_family, CONF_TYPE_INT, CONF_MIN, 0, 22, NULL}, // keep ranges in sync
174 // {"vfm", &video_family, CONF_TYPE_INT, CONF_MIN, 0, 29, NULL}, // with codec-cfg.c
175 // {"afm", &audio_fm, CONF_TYPE_STRING, 0, 0, 0, NULL},
176 {"afm", &audio_fm_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
177 {"vfm", &video_fm_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
178 // {"ac", &audio_codec, CONF_TYPE_STRING, 0, 0, 0, NULL},
179 {"ac", &audio_codec_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
180 {"vc", &video_codec_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
182 // postprocessing:
183 {"divxq", "-divxq has been renamed to -pp (postprocessing), use -pp.\n",
184 CONF_TYPE_PRINT, 0, 0, 0, NULL},
185 #ifdef USE_LIBAVCODEC
186 {"pp", &divx_quality, CONF_TYPE_INT, 0, 0, 0, NULL},
187 #endif
188 #ifdef HAVE_ODIVX_POSTPROCESS
189 {"oldpp", &use_old_pp, CONF_TYPE_FLAG, 0, 0, 1, NULL},
190 #else
191 {"oldpp", "MPlayer was compiled without the OpenDivX library.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
192 #endif
193 {"npp", "-npp has been removed, use -vf pp and read the fine manual.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
194 #ifdef FF_POSTPROCESS
195 {"pphelp", &pp_help, CONF_TYPE_PRINT_INDIRECT, CONF_NOCFG, 0, 0, NULL},
196 #endif
198 // scaling:
199 {"sws", &sws_flags, CONF_TYPE_INT, 0, 0, 2, NULL},
200 {"ssf", scaler_filter_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
201 {"zoom", &softzoom, CONF_TYPE_FLAG, 0, 0, 1, NULL},
202 {"nozoom", &softzoom, CONF_TYPE_FLAG, 0, 1, 0, NULL},
203 {"aspect", &movie_aspect, CONF_TYPE_FLOAT, CONF_RANGE, 0.2, 3.0, NULL},
204 {"noaspect", &movie_aspect, CONF_TYPE_FLAG, 0, 0, 0, NULL},
205 {"xy", &screen_size_xy, CONF_TYPE_FLOAT, CONF_RANGE, 0.001, 4096, NULL},
207 {"flip", &flip, CONF_TYPE_FLAG, 0, -1, 1, NULL},
208 {"noflip", &flip, CONF_TYPE_FLAG, 0, -1, 0, NULL},
209 {"tsfastparse", "-tsfastparse is no longer a valid option.\n", CONF_TYPE_PRINT, CONF_NOCFG ,0,0, NULL
211 {"tsprog", &ts_prog, CONF_TYPE_INT, CONF_RANGE, 0, 65534, NULL},
212 #define TS_MAX_PROBE_SIZE 2000000 /* don't forget to change this in libmpdemux/demux_ts.c too */
213 {"tsprobe", &ts_probe, CONF_TYPE_POSITION, 0, 0, TS_MAX_PROBE_SIZE, NULL},
214 {"tskeepbroken", &ts_keep_broken, CONF_TYPE_FLAG, 0, 0, 1, NULL},
216 // draw by slices or whole frame (useful with libmpeg2/libavcodec)
217 {"slices", &vd_use_slices, CONF_TYPE_FLAG, 0, 0, 1, NULL},
218 {"noslices", &vd_use_slices, CONF_TYPE_FLAG, 0, 1, 0, NULL},
220 #ifdef USE_LIBAVCODEC
221 {"lavdopts", lavc_decode_opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
222 #endif
223 #if defined(HAVE_XVID3) || defined(HAVE_XVID4)
224 {"xvidopts", xvid_dec_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
225 #endif
226 {"codecs-file", &codecs_file, CONF_TYPE_STRING, 0, 0, 0, NULL},
227 // ------------------------- subtitles options --------------------
229 #ifdef USE_SUB
230 {"sub", &sub_name, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
231 #ifdef USE_FRIBIDI
232 {"fribidi-charset", &fribidi_charset, CONF_TYPE_STRING, 0, 0, 0, NULL},
233 {"flip-hebrew", &flip_hebrew, CONF_TYPE_FLAG, 0, 0, 1, NULL},
234 {"noflip-hebrew", &flip_hebrew, CONF_TYPE_FLAG, 0, 1, 0, NULL},
235 {"flip-hebrew-commas", &fribidi_flip_commas, CONF_TYPE_FLAG, 0, 1, 0, NULL},
236 {"noflip-hebrew-commas", &fribidi_flip_commas, CONF_TYPE_FLAG, 0, 0, 1, NULL},
237 #else
238 {"fribidi-charset", "MPlayer was compiled without FriBiDi support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
239 {"flip-hebrew", "MPlayer was compiled without FriBiDi support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
240 {"noflip-hebrew", "MPlayer was compiled without FriBiDi support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
241 {"flip-hebrew-commas", "MPlayer was compiled without FriBiDi support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
242 {"noflip-hebrew-commas", "MPlayer was compiled without FriBiDi support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
243 #endif
244 #ifdef USE_ICONV
245 {"subcp", &sub_cp, CONF_TYPE_STRING, 0, 0, 0, NULL},
246 #endif
247 {"subdelay", &sub_delay, CONF_TYPE_FLOAT, 0, 0.0, 10.0, NULL},
248 {"subfps", &sub_fps, CONF_TYPE_FLOAT, 0, 0.0, 10.0, NULL},
249 {"autosub", &sub_auto, CONF_TYPE_FLAG, 0, 0, 1, NULL},
250 {"noautosub", &sub_auto, CONF_TYPE_FLAG, 0, 1, 0, NULL},
251 {"unicode", &sub_unicode, CONF_TYPE_FLAG, 0, 0, 1, NULL},
252 {"nounicode", &sub_unicode, CONF_TYPE_FLAG, 0, 1, 0, NULL},
253 {"utf8", &sub_utf8, CONF_TYPE_FLAG, 0, 0, 1, NULL},
254 {"noutf8", &sub_utf8, CONF_TYPE_FLAG, 0, 1, 0, NULL},
255 {"forcedsubsonly", &forced_subs_only, CONF_TYPE_FLAG, 0, 0, 1, NULL},
256 // specify IFO file for VOBSUB subtitle
257 {"ifo", &spudec_ifo, CONF_TYPE_STRING, 0, 0, 0, NULL},
258 // enable Closed Captioning display
259 {"subcc", &subcc_enabled, CONF_TYPE_FLAG, 0, 0, 1, NULL},
260 {"nosubcc", &subcc_enabled, CONF_TYPE_FLAG, 0, 1, 0, NULL},
261 {"overlapsub", &suboverlap_enabled, CONF_TYPE_FLAG, 0, 0, 2, NULL},
262 {"nooverlapsub", &suboverlap_enabled, CONF_TYPE_FLAG, 0, 0, 0, NULL},
263 {"sub-bg-color", &sub_bg_color, CONF_TYPE_INT, CONF_RANGE, 0, 255, NULL},
264 {"sub-bg-alpha", &sub_bg_alpha, CONF_TYPE_INT, CONF_RANGE, 0, 255, NULL},
265 {"sub-no-text-pp", &sub_no_text_pp, CONF_TYPE_FLAG, 0, 0, 1, NULL},
266 {"sub-fuzziness", &sub_match_fuzziness, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
267 #endif
268 #ifdef USE_OSD
269 {"font", &font_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
270 {"ffactor", &font_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 10.0, NULL},
271 {"subpos", &sub_pos, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
272 {"subalign", &sub_alignment, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
273 {"subwidth", &sub_width_p, CONF_TYPE_INT, CONF_RANGE, 10, 100, NULL},
274 {"spualign", &spu_alignment, CONF_TYPE_INT, CONF_RANGE, -1, 2, NULL},
275 {"spuaa", &spu_aamode, CONF_TYPE_INT, CONF_RANGE, 0, 31, NULL},
276 {"spugauss", &spu_gaussvar, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 3.0, NULL},
277 #ifdef HAVE_FREETYPE
278 {"subfont-encoding", &subtitle_font_encoding, CONF_TYPE_STRING, 0, 0, 0, NULL},
279 {"subfont-text-scale", &text_font_scale_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0, 100, NULL},
280 {"subfont-osd-scale", &osd_font_scale_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0, 100, NULL},
281 {"subfont-blur", &subtitle_font_radius, CONF_TYPE_FLOAT, CONF_RANGE, 0, 8, NULL},
282 {"subfont-outline", &subtitle_font_thickness, CONF_TYPE_FLOAT, CONF_RANGE, 0, 8, NULL},
283 {"subfont-autoscale", &subtitle_autoscale, CONF_TYPE_INT, CONF_RANGE, 0, 3, NULL},
284 #endif
285 #ifdef HAVE_FONTCONFIG
286 {"fontconfig", &font_fontconfig, CONF_TYPE_FLAG, 0, 0, 1, NULL},
287 {"nofontconfig", &font_fontconfig, CONF_TYPE_FLAG, 0, 1, 0, NULL},
288 #else
289 {"fontconfig", "MPlayer was compiled without fontconfig support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
290 {"nofontconfig", "MPlayer was compiled without fontconfig support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
291 #endif
292 #endif
294 #else
296 #include "config.h"
298 extern int quiet;
299 extern int verbose;
301 // codec/filter opts: (defined at libmpcodecs/vd.c)
302 extern float screen_size_xy;
303 extern float movie_aspect;
304 extern int softzoom;
305 extern int flip;
306 extern int vd_use_slices;
307 extern int divx_quality;
309 /* defined in codec-cfg.c */
310 extern char * codecs_file;
312 /* from dec_audio, currently used for ac3surround decoder only */
313 extern int audio_output_channels;
315 #ifdef MPLAYER_NETWORK
316 /* defined in network.c */
317 extern char *network_username;
318 extern char *network_password;
319 extern int network_bandwidth;
320 extern char *network_useragent;
321 extern int network_cookies_enabled;
322 extern char *cookies_file;
324 extern int network_prefer_ipv4;
325 extern int network_ipv4_only_proxy;
327 #endif
329 extern float a52_drc_level;
331 /* defined in libmpdemux: */
332 extern int hr_mp3_seek;
333 extern m_option_t demux_rawaudio_opts[];
334 extern m_option_t demux_rawvideo_opts[];
335 extern m_option_t cdda_opts[];
337 extern char* audio_stream;
338 extern char* sub_stream;
339 extern int demuxer_type, audio_demuxer_type, sub_demuxer_type;
340 extern int ts_prog;
341 extern int ts_keep_broken;
342 extern off_t ts_probe;
344 #include "libmpdemux/tv.h"
346 #ifdef USE_EDL
347 extern char* edl_filename;
348 extern char* edl_output_filename;
349 #endif
351 #ifdef USE_TV
352 m_option_t tvopts_conf[]={
353 {"on", "-tv on is deprecated, use tv:// instead.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
354 {"immediatemode", &tv_param_immediate, CONF_TYPE_INT, CONF_RANGE, 0, 1, NULL},
355 {"noaudio", &tv_param_noaudio, CONF_TYPE_FLAG, 0, 0, 1, NULL},
356 {"audiorate", &tv_param_audiorate, CONF_TYPE_INT, 0, 0, 0, NULL},
357 {"driver", &tv_param_driver, CONF_TYPE_STRING, 0, 0, 0, NULL},
358 {"device", &tv_param_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
359 {"freq", &tv_param_freq, CONF_TYPE_STRING, 0, 0, 0, NULL},
360 {"channel", &tv_param_channel, CONF_TYPE_STRING, 0, 0, 0, NULL},
361 {"chanlist", &tv_param_chanlist, CONF_TYPE_STRING, 0, 0, 0, NULL},
362 {"norm", &tv_param_norm, CONF_TYPE_STRING, 0, 0, 0, NULL},
363 #ifdef HAVE_TV_V4L2
364 {"normid", &tv_param_normid, CONF_TYPE_INT, 0, 0, 0, NULL},
365 #endif
366 {"width", &tv_param_width, CONF_TYPE_INT, 0, 0, 4096, NULL},
367 {"height", &tv_param_height, CONF_TYPE_INT, 0, 0, 4096, NULL},
368 {"input", &tv_param_input, CONF_TYPE_INT, 0, 0, 20, NULL},
369 {"outfmt", &tv_param_outfmt, CONF_TYPE_IMGFMT, 0, 0, 0, NULL},
370 {"fps", &tv_param_fps, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
371 {"channels", &tv_param_channels, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
372 {"brightness", &tv_param_brightness, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
373 {"contrast", &tv_param_contrast, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
374 {"hue", &tv_param_hue, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
375 {"saturation", &tv_param_saturation, CONF_TYPE_INT, CONF_RANGE, -100, 100, NULL},
376 #if defined(HAVE_TV_V4L) || defined(HAVE_TV_V4L2)
377 {"amode", &tv_param_amode, CONF_TYPE_INT, CONF_RANGE, 0, 3, NULL},
378 {"volume", &tv_param_volume, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
379 {"bass", &tv_param_bass, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
380 {"treble", &tv_param_treble, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
381 {"balance", &tv_param_balance, CONF_TYPE_INT, CONF_RANGE, 0, 65535, NULL},
382 {"forcechan", &tv_param_forcechan, CONF_TYPE_INT, CONF_RANGE, 1, 2, NULL},
383 {"forceaudio", &tv_param_force_audio, CONF_TYPE_FLAG, 0, 0, 1, NULL},
384 {"buffersize", &tv_param_buffer_size, CONF_TYPE_INT, CONF_RANGE, 16, 1024, NULL},
385 {"mjpeg", &tv_param_mjpeg, CONF_TYPE_FLAG, 0, 0, 1, NULL},
386 {"decimation", &tv_param_decimation, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL},
387 {"quality", &tv_param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
388 #if defined(HAVE_ALSA9) || defined(HAVE_ALSA1X)
389 {"alsa", &tv_param_alsa, CONF_TYPE_FLAG, 0, 0, 1, NULL},
390 #endif
391 {"adevice", &tv_param_adevice, CONF_TYPE_STRING, 0, 0, 0, NULL},
392 #endif
393 {"audioid", &tv_param_audio_id, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL},
394 {NULL, NULL, 0, 0, 0, 0, NULL}
396 #endif
398 #ifdef HAS_DVBIN_SUPPORT
399 #include "libmpdemux/dvbin.h"
400 extern m_config_t dvbin_opts_conf[];
401 #endif
403 #ifdef USE_FRIBIDI
404 extern char *fribidi_charset;
405 extern int flip_hebrew;
406 #endif
409 extern int audio_stream_cache;
411 extern int sws_chr_vshift;
412 extern int sws_chr_hshift;
413 extern float sws_chr_gblur;
414 extern float sws_lum_gblur;
415 extern float sws_chr_sharpen;
416 extern float sws_lum_sharpen;
418 m_option_t scaler_filter_conf[]={
419 {"lgb", &sws_lum_gblur, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
420 {"cgb", &sws_chr_gblur, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
421 {"cvs", &sws_chr_vshift, CONF_TYPE_INT, 0, 0, 0, NULL},
422 {"chs", &sws_chr_hshift, CONF_TYPE_INT, 0, 0, 0, NULL},
423 {"ls", &sws_lum_sharpen, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
424 {"cs", &sws_chr_sharpen, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
425 {NULL, NULL, 0, 0, 0, 0, NULL}
428 /* VIVO demuxer options: */
429 extern int vivo_param_version;
430 extern char *vivo_param_acodec;
431 extern int vivo_param_abitrate;
432 extern int vivo_param_samplerate;
433 extern int vivo_param_bytesperblock;
434 extern int vivo_param_width;
435 extern int vivo_param_height;
436 extern int vivo_param_vformat;
437 extern char *dvd_device, *cdrom_device;
439 m_option_t vivoopts_conf[]={
440 {"version", &vivo_param_version, CONF_TYPE_INT, 0, 0, 0, NULL},
441 /* audio options */
442 {"acodec", &vivo_param_acodec, CONF_TYPE_STRING, 0, 0, 0, NULL},
443 {"abitrate", &vivo_param_abitrate, CONF_TYPE_INT, 0, 0, 0, NULL},
444 {"samplerate", &vivo_param_samplerate, CONF_TYPE_INT, 0, 0, 0, NULL},
445 {"bytesperblock", &vivo_param_bytesperblock, CONF_TYPE_INT, 0, 0, 0, NULL},
446 /* video options */
447 {"width", &vivo_param_width, CONF_TYPE_INT, 0, 0, 0, NULL},
448 {"height", &vivo_param_height, CONF_TYPE_INT, 0, 0, 0, NULL},
449 {"vformat", &vivo_param_vformat, CONF_TYPE_INT, 0, 0, 0, NULL},
450 {NULL, NULL, 0, 0, 0, 0, NULL}
453 extern int mf_w;
454 extern int mf_h;
455 extern float mf_fps;
456 extern char * mf_type;
457 extern m_obj_settings_t* vf_settings;
458 extern m_obj_list_t vf_obj_list;
460 m_option_t mfopts_conf[]={
461 {"on", "-mf on is deprecated, use mf:// instead.\n", CONF_TYPE_PRINT, 0, 0, 1, NULL},
462 {"w", &mf_w, CONF_TYPE_INT, 0, 0, 0, NULL},
463 {"h", &mf_h, CONF_TYPE_INT, 0, 0, 0, NULL},
464 {"fps", &mf_fps, CONF_TYPE_FLOAT, 0, 0, 0, NULL},
465 {"type", &mf_type, CONF_TYPE_STRING, 0, 0, 0, NULL},
466 {NULL, NULL, 0, 0, 0, 0, NULL}
469 extern m_obj_settings_t* vo_plugin_args;
471 #include "libaf/af.h"
472 extern af_cfg_t af_cfg; // Audio filter configuration, defined in libmpcodecs/dec_audio.c
473 m_option_t audio_filter_conf[]={
474 {"list", &af_cfg.list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
475 {"force", &af_cfg.force, CONF_TYPE_INT, CONF_RANGE, 0, 7, NULL},
476 {NULL, NULL, 0, 0, 0, 0, NULL}
479 #ifdef WIN32
481 extern char * proc_priority;
483 struct {
484 char* name;
485 int prio;
486 } priority_presets_defs[] = {
487 { "realtime", REALTIME_PRIORITY_CLASS},
488 { "high", HIGH_PRIORITY_CLASS},
489 #ifdef ABOVE_NORMAL_PRIORITY_CLASS
490 { "abovenormal", ABOVE_NORMAL_PRIORITY_CLASS},
491 #endif
492 { "normal", NORMAL_PRIORITY_CLASS},
493 #ifdef BELOW_NORMAL_PRIORITY_CLASS
494 { "belownormal", BELOW_NORMAL_PRIORITY_CLASS},
495 #endif
496 { "idle", IDLE_PRIORITY_CLASS},
497 { NULL, NORMAL_PRIORITY_CLASS} /* default */
499 #endif /* WIN32 */
501 #ifdef USE_LIBAVCODEC
502 extern m_option_t lavc_decode_opts_conf[];
503 #endif
505 #if defined(HAVE_XVID3) || defined(HAVE_XVID4)
506 extern m_option_t xvid_dec_opts[];
507 #endif
509 int dvd_parse_chapter_range(m_option_t*, const char*);
511 #endif