changeset 4157:9ff9f6ce6799

extra NULL field appended
author arpi
date Mon, 14 Jan 2002 23:54:31 +0000
parents 22fadd4022b5
children 479c7828edbb
files cfg-common.h cfg-mencoder.h cfg-mplayer.h
diffstat 3 files changed, 247 insertions(+), 247 deletions(-) [+]
line wrap: on
line diff
--- a/cfg-common.h	Mon Jan 14 23:38:49 2002 +0000
+++ b/cfg-common.h	Mon Jan 14 23:54:31 2002 +0000
@@ -2,85 +2,85 @@
 // ------------------------- stream options --------------------
 
 #ifdef USE_STREAM_CACHE
-	{"cache", &stream_cache_size, CONF_TYPE_INT, CONF_RANGE, 4, 65536},
+	{"cache", &stream_cache_size, CONF_TYPE_INT, CONF_RANGE, 4, 65536, NULL},
 #else
-	{"cache", "MPlayer was compiled WITHOUT cache2 support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
+	{"cache", "MPlayer was compiled WITHOUT cache2 support\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #endif
 #ifdef HAVE_VCD
-	{"vcd", &vcd_track, CONF_TYPE_INT, CONF_RANGE, 1, 99},
+	{"vcd", &vcd_track, CONF_TYPE_INT, CONF_RANGE, 1, 99, NULL},
 #else
-	{"vcd", "VCD support is NOT available on this system!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
+	{"vcd", "VCD support is NOT available on this system!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #endif
 #ifdef USE_DVDREAD
-	{"dvd", &dvd_title, CONF_TYPE_INT, CONF_RANGE, 1, 99},
-	{"dvdangle", &dvd_angle, CONF_TYPE_INT, CONF_RANGE, 1, 99},
-	{"chapter", &dvd_chapter, CONF_TYPE_INT, CONF_RANGE, 1, 99},
+	{"dvd", &dvd_title, CONF_TYPE_INT, CONF_RANGE, 1, 99, NULL},
+	{"dvdangle", &dvd_angle, CONF_TYPE_INT, CONF_RANGE, 1, 99, NULL},
+	{"chapter", &dvd_chapter, CONF_TYPE_INT, CONF_RANGE, 1, 99, NULL},
 #else
-	{"dvd", "MPlayer was compiled WITHOUT libdvdread support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
+	{"dvd", "MPlayer was compiled WITHOUT libdvdread support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #endif
 
 #ifdef HAVE_LIBCSS
-        {"dvdauth", &dvd_auth_device, CONF_TYPE_STRING, 0, 0, 0},
-        {"dvdkey", &dvdimportkey, CONF_TYPE_STRING, 0, 0, 0},
-	{"csslib", &css_so, CONF_TYPE_STRING, 0, 0, 0},
+        {"dvdauth", &dvd_auth_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
+        {"dvdkey", &dvdimportkey, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"csslib", &css_so, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #else
-        {"dvdauth", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-        {"dvdkey", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{"csslib", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
+        {"dvdauth", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+        {"dvdkey", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{"csslib", "MPlayer was compiled WITHOUT libcss support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #endif
 
 // ------------------------- demuxer options --------------------
 
-	{"bps", &pts_from_bps, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nobps", &pts_from_bps, CONF_TYPE_FLAG, 0, 1, 0},
+	{"bps", &pts_from_bps, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nobps", &pts_from_bps, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 
-	{"ni", &force_ni, CONF_TYPE_FLAG, 0, 0, 1},
-	{"noni", &force_ni, CONF_TYPE_FLAG, 0, 1, 0},
+	{"ni", &force_ni, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"noni", &force_ni, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 
-	{"noidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 0},
-	{"idx", &index_mode, CONF_TYPE_FLAG, 0, -1, 1},
-	{"forceidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 2},
+	{"noidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 0, NULL},
+	{"idx", &index_mode, CONF_TYPE_FLAG, 0, -1, 1, NULL},
+	{"forceidx", &index_mode, CONF_TYPE_FLAG, 0, -1, 2, NULL},
 
-	{"aid", &audio_id, CONF_TYPE_INT, CONF_RANGE, 0, 255},
-	{"vid", &video_id, CONF_TYPE_INT, CONF_RANGE, 0, 255},
-	{"sid", &dvdsub_id, CONF_TYPE_INT, CONF_RANGE, 0, 31},
+	{"aid", &audio_id, CONF_TYPE_INT, CONF_RANGE, 0, 255, NULL},
+	{"vid", &video_id, CONF_TYPE_INT, CONF_RANGE, 0, 255, NULL},
+	{"sid", &dvdsub_id, CONF_TYPE_INT, CONF_RANGE, 0, 31, NULL},
 
 // ------------------------- a-v sync options --------------------
 
-	{"frames", &play_n_frames, CONF_TYPE_INT, CONF_MIN, 0, 0},
+	{"frames", &play_n_frames, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
 
-	{"mc", &default_max_pts_correction, CONF_TYPE_FLOAT, CONF_RANGE, 0, 10},
-	{"fps", &force_fps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0},
-	{"srate", &force_srate, CONF_TYPE_INT, CONF_RANGE, 1000, 8*48000},
+	{"mc", &default_max_pts_correction, CONF_TYPE_FLOAT, CONF_RANGE, 0, 10, NULL},
+	{"fps", &force_fps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0, NULL},
+	{"srate", &force_srate, CONF_TYPE_INT, CONF_RANGE, 1000, 8*48000, NULL},
 
 // ------------------------- codec/pp options --------------------
 
 #ifdef USE_FAKE_MONO
-	{"stereo", &fakemono, CONF_TYPE_INT, CONF_RANGE, 0, 2},
+	{"stereo", &fakemono, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
 #endif
 
-	{"afm", &audio_family, CONF_TYPE_INT, CONF_MIN, 0, 16}, // keep ranges in sync
-	{"vfm", &video_family, CONF_TYPE_INT, CONF_MIN, 0, 14}, // with codec-cfg.c
-	{"ac", &audio_codec, CONF_TYPE_STRING, 0, 0, 0},
-	{"vc", &video_codec, CONF_TYPE_STRING, 0, 0, 0},
+	{"afm", &audio_family, CONF_TYPE_INT, CONF_MIN, 0, 16, NULL}, // keep ranges in sync
+	{"vfm", &video_family, CONF_TYPE_INT, CONF_MIN, 0, 14, NULL}, // with codec-cfg.c
+	{"ac", &audio_codec, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"vc", &video_codec, CONF_TYPE_STRING, 0, 0, 0, NULL},
 
 	{"divxq", "Option -divxq has been renamed to -pp (postprocessing), use -pp !\n",
-            CONF_TYPE_PRINT, 0, 0, 0},
-	{"pp", &divx_quality, CONF_TYPE_INT, CONF_MIN, 0, 63},
-	{"npp", readPPOpt, CONF_TYPE_FUNC_PARAM, 0, 0, 0},
+            CONF_TYPE_PRINT, 0, 0, 0, NULL},
+	{"pp", &divx_quality, CONF_TYPE_INT, CONF_MIN, 0, 63, NULL},
+	{"npp", readPPOpt, CONF_TYPE_FUNC_PARAM, 0, 0, 0, NULL},
 #ifdef HAVE_ODIVX_POSTPROCESS
-        {"oldpp", &use_old_pp, CONF_TYPE_FLAG, 0, 0, 1},
+        {"oldpp", &use_old_pp, CONF_TYPE_FLAG, 0, 0, 1, NULL},
 #else
-        {"oldpp", "MPlayer was compiled without opendivx library\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
+        {"oldpp", "MPlayer was compiled without opendivx library\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #endif
-	{"sws", &sws_flags, CONF_TYPE_INT, 0, 0, 2},
+	{"sws", &sws_flags, CONF_TYPE_INT, 0, 0, 2, NULL},
 
 #ifdef USE_TV
-	{"tv", tvopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
+	{"tv", tvopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
 #else
-	{"tv", "MPlayer was compiled without TV Interface support\n", CONF_TYPE_PRINT, 0, 0, 0},
+	{"tv", "MPlayer was compiled without TV Interface support\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
 #endif
-	{"vivo", vivoopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
+	{"vivo", vivoopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
 
 #else
 
@@ -90,19 +90,19 @@
 
 #ifdef USE_TV
 struct config tvopts_conf[]={
-	{"on", &tv_param_on, CONF_TYPE_FLAG, 0, 0, 1},
-	{"driver", &tv_param_driver, CONF_TYPE_STRING, 0, 0, 0},
-	{"device", &tv_param_device, CONF_TYPE_STRING, 0, 0, 0},
-	{"freq", &tv_param_freq, CONF_TYPE_STRING, 0, 0, 0},
-	{"channel", &tv_param_channel, CONF_TYPE_STRING, 0, 0, 0},
-	{"chanlist", &tv_param_chanlist, CONF_TYPE_STRING, 0, 0, 0},
-	{"norm", &tv_param_norm, CONF_TYPE_STRING, 0, 0, 0},
-	{"width", &tv_param_width, CONF_TYPE_INT, 0, 0, 4096},
-	{"height", &tv_param_height, CONF_TYPE_INT, 0, 0, 4096},
-	{"input", &tv_param_input, CONF_TYPE_INT, 0, 0, 20},
-	{"outfmt", &tv_param_outfmt, CONF_TYPE_STRING, 0, 0, 0},
-	{"fps", &tv_param_fps, CONF_TYPE_FLOAT, 0, 0, 100.0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"on", &tv_param_on, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"driver", &tv_param_driver, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"device", &tv_param_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"freq", &tv_param_freq, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"channel", &tv_param_channel, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"chanlist", &tv_param_chanlist, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"norm", &tv_param_norm, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"width", &tv_param_width, CONF_TYPE_INT, 0, 0, 4096, NULL},
+	{"height", &tv_param_height, CONF_TYPE_INT, 0, 0, 4096, NULL},
+	{"input", &tv_param_input, CONF_TYPE_INT, 0, 0, 20, NULL},
+	{"outfmt", &tv_param_outfmt, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"fps", &tv_param_fps, CONF_TYPE_FLOAT, 0, 0, 100.0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 #endif
 
@@ -117,17 +117,17 @@
 extern int vivo_param_vformat;
 
 struct config vivoopts_conf[]={
-	{"version", &vivo_param_version, CONF_TYPE_INT, 0, 0, 0},
+	{"version", &vivo_param_version, CONF_TYPE_INT, 0, 0, 0, NULL},
 	/* audio options */
-	{"acodec", &vivo_param_acodec, CONF_TYPE_STRING, 0, 0, 0},
-	{"abitrate", &vivo_param_abitrate, CONF_TYPE_INT, 0, 0, 0},
-	{"samplerate", &vivo_param_samplerate, CONF_TYPE_INT, 0, 0, 0},
-	{"bytesperblock", &vivo_param_bytesperblock, CONF_TYPE_INT, 0, 0, 0},
+	{"acodec", &vivo_param_acodec, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"abitrate", &vivo_param_abitrate, CONF_TYPE_INT, 0, 0, 0, NULL},
+	{"samplerate", &vivo_param_samplerate, CONF_TYPE_INT, 0, 0, 0, NULL},
+	{"bytesperblock", &vivo_param_bytesperblock, CONF_TYPE_INT, 0, 0, 0, NULL},
 	/* video options */
-	{"width", &vivo_param_width, CONF_TYPE_INT, 0, 0, 0},
-	{"height", &vivo_param_height, CONF_TYPE_INT, 0, 0, 0},
-	{"vformat", &vivo_param_vformat, CONF_TYPE_INT, 0, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"width", &vivo_param_width, CONF_TYPE_INT, 0, 0, 0, NULL},
+	{"height", &vivo_param_height, CONF_TYPE_INT, 0, 0, 0, NULL},
+	{"vformat", &vivo_param_vformat, CONF_TYPE_INT, 0, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 
 #endif
--- a/cfg-mencoder.h	Mon Jan 14 23:38:49 2002 +0000
+++ b/cfg-mencoder.h	Mon Jan 14 23:54:31 2002 +0000
@@ -16,120 +16,120 @@
 
 #ifdef HAVE_DIVX4ENCORE
 struct config divx4opts_conf[]={
-	{"br", &divx4_param.bitrate, CONF_TYPE_INT, CONF_RANGE, 4, 24000000},
-	{"rc_period", &divx4_param.rc_period, CONF_TYPE_INT, 0,0,0},
-	{"rc_reaction_period", &divx4_param.rc_reaction_period, CONF_TYPE_INT, 0,0,0},
-	{"rc_reaction_ratio", &divx4_param.rc_reaction_ratio, CONF_TYPE_INT, 0,0,0},
-	{"min_quant", &divx4_param.min_quantizer, CONF_TYPE_INT, CONF_RANGE,0,32},
-	{"max_quant", &divx4_param.max_quantizer, CONF_TYPE_INT, CONF_RANGE,0,32},
-	{"key", &divx4_param.max_key_interval, CONF_TYPE_INT, CONF_MIN,0,0},
-	{"deinterlace", &divx4_param.deinterlace, CONF_TYPE_FLAG, 0,0,1},
-	{"q", &divx4_param.quality, CONF_TYPE_INT, CONF_RANGE, 1, 5},
-	{"crispness", &divx4_crispness, CONF_TYPE_INT, CONF_RANGE,0,100},
-	{"help", "TODO: divx4opts help!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"br", &divx4_param.bitrate, CONF_TYPE_INT, CONF_RANGE, 4, 24000000, NULL},
+	{"rc_period", &divx4_param.rc_period, CONF_TYPE_INT, 0,0,0, NULL},
+	{"rc_reaction_period", &divx4_param.rc_reaction_period, CONF_TYPE_INT, 0,0,0, NULL},
+	{"rc_reaction_ratio", &divx4_param.rc_reaction_ratio, CONF_TYPE_INT, 0,0,0, NULL},
+	{"min_quant", &divx4_param.min_quantizer, CONF_TYPE_INT, CONF_RANGE,0,32, NULL},
+	{"max_quant", &divx4_param.max_quantizer, CONF_TYPE_INT, CONF_RANGE,0,32, NULL},
+	{"key", &divx4_param.max_key_interval, CONF_TYPE_INT, CONF_MIN,0,0, NULL},
+	{"deinterlace", &divx4_param.deinterlace, CONF_TYPE_FLAG, 0,0,1, NULL},
+	{"q", &divx4_param.quality, CONF_TYPE_INT, CONF_RANGE, 1, 5, NULL},
+	{"crispness", &divx4_crispness, CONF_TYPE_INT, CONF_RANGE,0,100, NULL},
+	{"help", "TODO: divx4opts help!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 #endif
 
 #ifdef HAVE_MP3LAME
 struct config lameopts_conf[]={
-	{"q", &lame_param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 9},
-	{"vbr", &lame_param_vbr, CONF_TYPE_INT, CONF_RANGE, 0, vbr_max_indicator},
-	{"cbr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, 0},
-	{"abr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, vbr_abr},
-	{"mode", &lame_param_mode, CONF_TYPE_INT, CONF_RANGE, 0, MAX_INDICATOR},
-	{"padding", &lame_param_padding, CONF_TYPE_INT, CONF_RANGE, 0, PAD_MAX_INDICATOR},
-	{"br", &lame_param_br, CONF_TYPE_INT, CONF_RANGE, 0, 1024},
-	{"ratio", &lame_param_ratio, CONF_TYPE_INT, CONF_RANGE, 0, 100},
-	{"help", "TODO: lameopts help!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"q", &lame_param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL},
+	{"vbr", &lame_param_vbr, CONF_TYPE_INT, CONF_RANGE, 0, vbr_max_indicator, NULL},
+	{"cbr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, 0, NULL},
+	{"abr", &lame_param_vbr, CONF_TYPE_FLAG, 0, 0, vbr_abr, NULL},
+	{"mode", &lame_param_mode, CONF_TYPE_INT, CONF_RANGE, 0, MAX_INDICATOR, NULL},
+	{"padding", &lame_param_padding, CONF_TYPE_INT, CONF_RANGE, 0, PAD_MAX_INDICATOR, NULL},
+	{"br", &lame_param_br, CONF_TYPE_INT, CONF_RANGE, 0, 1024, NULL},
+	{"ratio", &lame_param_ratio, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
+	{"help", "TODO: lameopts help!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 #endif
 
 #ifdef USE_LIBAVCODEC
 struct config lavcopts_conf[]={
-	{"vcodec", &lavc_param_vcodec, CONF_TYPE_STRING, 0, 0, 0},
-	{"vbitrate", &lavc_param_vbitrate, CONF_TYPE_INT, CONF_RANGE, 4, 24000000},
-	{"vhq", &lavc_param_vhq, CONF_TYPE_FLAG, 0, 0, 1},
-	{"keyint", &lavc_param_keyint, CONF_TYPE_INT, 0, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"vcodec", &lavc_param_vcodec, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"vbitrate", &lavc_param_vbitrate, CONF_TYPE_INT, CONF_RANGE, 4, 24000000, NULL},
+	{"vhq", &lavc_param_vhq, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"keyint", &lavc_param_keyint, CONF_TYPE_INT, 0, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 #endif
 
 #ifdef USE_WIN32DLL
 struct config vfwopts_conf[]={
-	{NULL, NULL, 0, 0, 0, 0}
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 #endif
 
 struct config ovc_conf[]={
-	{"copy", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_COPY},
-	{"frameno", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_FRAMENO},
-	{"divx4", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_DIVX4},
-	{"raw", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_RAW},
-	{"lavc", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_LIBAVCODEC},
-	{"help", "\nAvailable codecs:\n   copy\n   frameno\n   divx4\n   raw\n   lavc\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"copy", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_COPY, NULL},
+	{"frameno", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_FRAMENO, NULL},
+	{"divx4", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_DIVX4, NULL},
+	{"raw", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_RAW, NULL},
+	{"lavc", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_LIBAVCODEC, NULL},
+	{"help", "\nAvailable codecs:\n   copy\n   frameno\n   divx4\n   raw\n   lavc\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 
 struct config oac_conf[]={
-	{"copy", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_COPY},
-	{"pcm", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_PCM},
+	{"copy", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_COPY, NULL},
+	{"pcm", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_PCM, NULL},
 #ifdef HAVE_MP3LAME
-	{"mp3lame", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_VBRMP3},
-	{"help", "\nAvailable codecs:\n   copy\n   pcm\n   mp3lame\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
+	{"mp3lame", &out_audio_codec, CONF_TYPE_FLAG, 0, 0, ACODEC_VBRMP3, NULL},
+	{"help", "\nAvailable codecs:\n   copy\n   pcm\n   mp3lame\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #else
-	{"mp3lame", "MPlayer was compiled without libmp3lame support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{"help", "\nAvailable codecs:\n   copy\n   pcm\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
+	{"mp3lame", "MPlayer was compiled without libmp3lame support!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{"help", "\nAvailable codecs:\n   copy\n   pcm\n\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #endif
-	{NULL, NULL, 0, 0, 0, 0}
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 
-struct config conf[]={
+struct config mencoder_opts[]={
 	/* name, pointer, type, flags, min, max */
-	{"include", cfg_include, CONF_TYPE_FUNC_PARAM, 0, 0, 0}, /* this must be the first!!! */
+	{"include", cfg_include, CONF_TYPE_FUNC_PARAM, 0, 0, 0, NULL}, /* this must be the first!!! */
 
-	{"ofps", &force_ofps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0},
-	{"o", &out_filename, CONF_TYPE_STRING, 0, 0, 0},
+	{"ofps", &force_ofps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0, NULL},
+	{"o", &out_filename, CONF_TYPE_STRING, 0, 0, 0, NULL},
 
-	{"x", &vo_w, CONF_TYPE_INT, CONF_RANGE, 0, 4096},
-	{"y", &vo_h, CONF_TYPE_INT, CONF_RANGE, 0, 4096},
+	{"x", &vo_w, CONF_TYPE_INT, CONF_RANGE, 0, 4096, NULL},
+	{"y", &vo_h, CONF_TYPE_INT, CONF_RANGE, 0, 4096, NULL},
 
-	{"mp3file", &mp3_filename, CONF_TYPE_STRING, 0, 0, 0},
-	{"ac3file", &ac3_filename, CONF_TYPE_STRING, 0, 0, 0},
+	{"mp3file", &mp3_filename, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"ac3file", &ac3_filename, CONF_TYPE_STRING, 0, 0, 0, NULL},
 
-//	{"oac", &out_audio_codec, CONF_TYPE_STRING, 0, 0, 0},
-//	{"ovc", &out_video_codec, CONF_TYPE_STRING, 0, 0, 0},
-	{"oac", oac_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
-	{"ovc", ovc_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
+//	{"oac", &out_audio_codec, CONF_TYPE_STRING, 0, 0, 0, NULL},
+//	{"ovc", &out_video_codec, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"oac", oac_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
+	{"ovc", ovc_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
 
-	{"ffourcc", &force_fourcc, CONF_TYPE_STRING, 0, 4, 4},
+	{"ffourcc", &force_fourcc, CONF_TYPE_STRING, 0, 4, 4, NULL},
 
 #ifdef HAVE_DIVX4ENCORE
-	{"pass", &pass, CONF_TYPE_INT, CONF_RANGE,0,2},
-	{"passlogfile", &passtmpfile, CONF_TYPE_STRING, 0, 0, 0},
+	{"pass", &pass, CONF_TYPE_INT, CONF_RANGE,0,2, NULL},
+	{"passlogfile", &passtmpfile, CONF_TYPE_STRING, 0, 0, 0, NULL},
 	
-	{"divx4opts", divx4opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
+	{"divx4opts", divx4opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
 #endif
 #ifdef HAVE_MP3LAME
-	{"lameopts", lameopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
+	{"lameopts", lameopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
 #endif
 #ifdef USE_LIBAVCODEC
-	{"lavcopts", lavcopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
+	{"lavcopts", lavcopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
 #endif
 #ifdef USE_WIN32DLL
-	{"vfwopts", vfwopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
+	{"vfwopts", vfwopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
 #endif
 
 #define MAIN_CONF
 #include "cfg-common.h"
 #undef MAIN_CONF
 
-//	{"quiet", &quiet, CONF_TYPE_FLAG, 0, 0, 1},
-	{"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE, 0, 100},
-	{"v", cfg_inc_verbose, CONF_TYPE_FUNC, 0, 0, 0},
-//	{"-help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-//	{"help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-//	{"h", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+//	{"quiet", &quiet, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
+	{"v", cfg_inc_verbose, CONF_TYPE_FUNC, 0, 0, 0, NULL},
+//	{"-help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+//	{"help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+//	{"h", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
--- a/cfg-mplayer.h	Mon Jan 14 23:38:49 2002 +0000
+++ b/cfg-mplayer.h	Mon Jan 14 23:54:31 2002 +0000
@@ -85,11 +85,11 @@
 
 /* Options related to audio out plugins */
 struct config ao_plugin_conf[]={
-	{"list", &ao_plugin_cfg.plugin_list, CONF_TYPE_STRING, 0, 0, 0},
-	{"delay", &ao_plugin_cfg.pl_delay_len, CONF_TYPE_INT, CONF_MIN, 0, 0},
-	{"format", &ao_plugin_cfg.pl_format_type, CONF_TYPE_INT, CONF_MIN, 0, 0},
-	{"fout", &ao_plugin_cfg.pl_resample_fout, CONF_TYPE_INT, CONF_MIN, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"list", &ao_plugin_cfg.plugin_list, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"delay", &ao_plugin_cfg.pl_delay_len, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
+	{"format", &ao_plugin_cfg.pl_format_type, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
+	{"fout", &ao_plugin_cfg.pl_resample_fout, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 
 extern int sws_flags;
@@ -109,177 +109,177 @@
  * by Folke
  */
 
-struct config conf[]={
+struct config mplayer_opts[]={
 	/* name, pointer, type, flags, min, max */
-	{"include", cfg_include, CONF_TYPE_FUNC_PARAM, 0, 0, 0}, /* this must be the first!!! */
+	{"include", cfg_include, CONF_TYPE_FUNC_PARAM, 0, 0, 0, NULL}, /* this must be the first!!! */
 
 //---------------------- libao/libvo/mplayer options ------------------------
 	{"o", "Option -o has been renamed to -vo (video-out), use -vo !\n",
-            CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{"vo", &video_driver, CONF_TYPE_STRING, 0, 0, 0},
-	{"ao", &audio_driver, CONF_TYPE_STRING, 0, 0, 0},
-	{"aop", ao_plugin_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0},
-//	{"dsp", &dsp, CONF_TYPE_STRING, CONF_NOCFG, 0, 0},
-	{"dsp", "Use -ao oss:dsp_path!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-        {"mixer", &mixer_device, CONF_TYPE_STRING, 0, 0, 0},
-        {"master", &mixer_usemaster, CONF_TYPE_FLAG, 0, 0, 1},
-	{"channels", &audio_output_channels, CONF_TYPE_INT, CONF_RANGE, 2, 6},
+            CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{"vo", &video_driver, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"ao", &audio_driver, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"aop", ao_plugin_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
+//	{"dsp", &dsp, CONF_TYPE_STRING, CONF_NOCFG, 0, 0, NULL},
+	{"dsp", "Use -ao oss:dsp_path!\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+        {"mixer", &mixer_device, CONF_TYPE_STRING, 0, 0, 0, NULL},
+        {"master", &mixer_usemaster, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"channels", &audio_output_channels, CONF_TYPE_INT, CONF_RANGE, 2, 6, NULL},
 #ifdef HAVE_X11
-	{"display", &mDisplayName, CONF_TYPE_STRING, 0, 0, 0},
+	{"display", &mDisplayName, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #endif
-	{"osdlevel", &osd_level, CONF_TYPE_INT, CONF_RANGE, 0, 2 },
+	{"osdlevel", &osd_level, CONF_TYPE_INT, CONF_RANGE, 0, 2 , NULL},
 
 #ifdef HAVE_FBDEV
-	{"fb", &fb_dev_name, CONF_TYPE_STRING, 0, 0, 0},
-	{"fbmode", &fb_mode_name, CONF_TYPE_STRING, 0, 0, 0},
-	{"fbmodeconfig", &fb_mode_cfgfile, CONF_TYPE_STRING, 0, 0, 0},
-	{"monitor_hfreq", &monitor_hfreq_str, CONF_TYPE_STRING, 0, 0, 0},
-	{"monitor_vfreq", &monitor_vfreq_str, CONF_TYPE_STRING, 0, 0, 0},
-	{"monitor_dotclock", &monitor_dotclock_str, CONF_TYPE_STRING, 0, 0, 0},
+	{"fb", &fb_dev_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"fbmode", &fb_mode_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"fbmodeconfig", &fb_mode_cfgfile, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"monitor_hfreq", &monitor_hfreq_str, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"monitor_vfreq", &monitor_vfreq_str, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"monitor_dotclock", &monitor_dotclock_str, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #else
 #ifdef HAVE_DIRECTFB
-	{"fb", &fb_dev_name, CONF_TYPE_STRING, 0, 0, 0},
+	{"fb", &fb_dev_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #endif
 #endif
-//	{"encode", &encode_name, CONF_TYPE_STRING, 0, 0, 0},
-	{"vobsub", &vobsub_name, CONF_TYPE_STRING, 0, 0, 0},
-	{"vobsubid", &vobsub_id, CONF_TYPE_INT, CONF_RANGE, 0, 31},
+//	{"encode", &encode_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"vobsub", &vobsub_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"vobsubid", &vobsub_id, CONF_TYPE_INT, CONF_RANGE, 0, 31, NULL},
 #ifdef USE_SUB
-	{"sub", &sub_name, CONF_TYPE_STRING, 0, 0, 0},
+	{"sub", &sub_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #ifdef USE_ICONV
-	{"subcp", &sub_cp, CONF_TYPE_STRING, 0, 0, 0},
+	{"subcp", &sub_cp, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #endif	
-	{"subdelay", &sub_delay, CONF_TYPE_FLOAT, 0, 0.0, 10.0},
-	{"subfps", &sub_fps, CONF_TYPE_FLOAT, 0, 0.0, 10.0},
-        {"noautosub", &sub_auto, CONF_TYPE_FLAG, 0, 1, 0},
-	{"unicode", &sub_unicode, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nounicode", &sub_unicode, CONF_TYPE_FLAG, 0, 1, 0},
-	{"utf8", &sub_utf8, CONF_TYPE_FLAG, 0, 0, 1},
-	{"noutf8", &sub_utf8, CONF_TYPE_FLAG, 0, 1, 0},
+	{"subdelay", &sub_delay, CONF_TYPE_FLOAT, 0, 0.0, 10.0, NULL},
+	{"subfps", &sub_fps, CONF_TYPE_FLOAT, 0, 0.0, 10.0, NULL},
+        {"noautosub", &sub_auto, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+	{"unicode", &sub_unicode, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nounicode", &sub_unicode, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+	{"utf8", &sub_utf8, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"noutf8", &sub_utf8, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 #endif
 #ifdef USE_OSD
-	{"font", &font_name, CONF_TYPE_STRING, 0, 0, 0},
-	{"ffactor", &font_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 10.0},
+	{"font", &font_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"ffactor", &font_factor, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 10.0, NULL},
 #endif
-//	{"bg", &play_in_bg, CONF_TYPE_FLAG, 0, 0, 1},
-//	{"nobg", &play_in_bg, CONF_TYPE_FLAG, 0, 1, 0},
-	{"sb", &seek_to_byte, CONF_TYPE_INT, CONF_MIN, 0, 0},
-	{"ss", &seek_to_sec, CONF_TYPE_STRING, CONF_MIN, 0, 0},
-	{"sstep", &step_sec, CONF_TYPE_INT, CONF_MIN, 0, 0},
-	{"noloop", &loop_times, CONF_TYPE_FLAG, 0, 0, -1},
-	{"loop", &loop_times, CONF_TYPE_INT, CONF_RANGE, -1, 10000},
-	{"sound", &has_audio, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nosound", &has_audio, CONF_TYPE_FLAG, 0, 1, 0},
-	{"abs", &ao_data.buffersize, CONF_TYPE_INT, CONF_MIN, 0, 0},
-	{"delay", &audio_delay, CONF_TYPE_FLOAT, CONF_RANGE, -10.0, 10.0},
+//	{"bg", &play_in_bg, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+//	{"nobg", &play_in_bg, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+	{"sb", &seek_to_byte, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
+	{"ss", &seek_to_sec, CONF_TYPE_STRING, CONF_MIN, 0, 0, NULL},
+	{"sstep", &step_sec, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
+	{"noloop", &loop_times, CONF_TYPE_FLAG, 0, 0, -1, NULL},
+	{"loop", &loop_times, CONF_TYPE_INT, CONF_RANGE, -1, 10000, NULL},
+	{"sound", &has_audio, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nosound", &has_audio, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+	{"abs", &ao_data.buffersize, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
+	{"delay", &audio_delay, CONF_TYPE_FLOAT, CONF_RANGE, -10.0, 10.0, NULL},
 
 	{"alsa", "Option -alsa has been removed, new audio code doesn't need it! Remove it from your config file!\n",
-            CONF_TYPE_PRINT, 0, 0, 0},
+            CONF_TYPE_PRINT, 0, 0, 0, NULL},
 	{"noalsa", "Option -noalsa has been removed, new audio code doesn't need it! Remove it from your config file!\n",
-            CONF_TYPE_PRINT, 0, 0, 0},
+            CONF_TYPE_PRINT, 0, 0, 0, NULL},
 
-	{"framedrop", &frame_dropping, CONF_TYPE_FLAG, 0, 0, 1},
-	{"hardframedrop", &frame_dropping, CONF_TYPE_FLAG, 0, 0, 2},
-	{"noframedrop", &frame_dropping, CONF_TYPE_FLAG, 0, 1, 0},
+	{"framedrop", &frame_dropping, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"hardframedrop", &frame_dropping, CONF_TYPE_FLAG, 0, 0, 2, NULL},
+	{"noframedrop", &frame_dropping, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 
-	{"autoq", &auto_quality, CONF_TYPE_INT, CONF_RANGE, 0, 100},
+	{"autoq", &auto_quality, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
 
-	{"benchmark", &benchmark, CONF_TYPE_FLAG, 0, 0, 1},
+	{"benchmark", &benchmark, CONF_TYPE_FLAG, 0, 0, 1, NULL},
 	
-	{"dumpfile", &stream_dump_name, CONF_TYPE_STRING, 0, 0, 0},
-	{"dumpaudio", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 1},
-	{"dumpvideo", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 2},
-	{"dumpsub", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 3},
-	{"dumpmpsub", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 4},
-	{"dumpstream", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 5},
+	{"dumpfile", &stream_dump_name, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"dumpaudio", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"dumpvideo", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 2, NULL},
+	{"dumpsub", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 3, NULL},
+	{"dumpmpsub", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 4, NULL},
+	{"dumpstream", &stream_dump_type, CONF_TYPE_FLAG, 0, 0, 5, NULL},
 
-	{"aofile", &ao_outputfilename, CONF_TYPE_STRING, 0, 0, 0},
-	{"waveheader", &ao_pcm_waveheader, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nowaveheader", &ao_pcm_waveheader, CONF_TYPE_FLAG, 0, 1, 0},
+	{"aofile", &ao_outputfilename, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"waveheader", &ao_pcm_waveheader, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nowaveheader", &ao_pcm_waveheader, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 
-	{"dshow", &allow_dshow, CONF_TYPE_FLAG, 0, 0, 1}, // Is this still needed? atmos ::
-	{"nodshow", &allow_dshow, CONF_TYPE_FLAG, 0, 1, 0},
+	{"dshow", &allow_dshow, CONF_TYPE_FLAG, 0, 0, 1, NULL}, // Is this still needed? atmos ::
+	{"nodshow", &allow_dshow, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 
 #ifdef HAVE_PNG
-	{"z", &z_compression, CONF_TYPE_INT, CONF_RANGE, 0, 9},
+	{"z", &z_compression, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL},
 #endif
 #ifdef HAVE_SDL
 	{"sdl", "Use -vo sdl:driver instead of -vo sdl -sdl driver\n",
-	    CONF_TYPE_PRINT, 0, 0, 0},
-	{"noxv", &sdl_noxv, CONF_TYPE_FLAG, 0, 0, 1},
-	{"forcexv", &sdl_forcexv, CONF_TYPE_FLAG, 0, 0, 1},
+	    CONF_TYPE_PRINT, 0, 0, 0, NULL},
+	{"noxv", &sdl_noxv, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"forcexv", &sdl_forcexv, CONF_TYPE_FLAG, 0, 0, 1, NULL},
 	{"sdla", "Use -ao sdl:driver instead of -ao sdl -sdla driver\n",
-	    CONF_TYPE_PRINT, 0, 0, 0},
+	    CONF_TYPE_PRINT, 0, 0, 0, NULL},
 #endif	
-	{"x", &screen_size_x, CONF_TYPE_INT, CONF_RANGE, 0, 4096},
-	{"y", &screen_size_y, CONF_TYPE_INT, CONF_RANGE, 0, 4096},
-	{"xy", &screen_size_xy, CONF_TYPE_INT, CONF_RANGE, 0, 4096},
-	{"screenw", &vo_screenwidth, CONF_TYPE_INT, CONF_RANGE, 0, 4096},
-	{"screenh", &vo_screenheight, CONF_TYPE_INT, CONF_RANGE, 0, 4096},
-	{"aspect", &movie_aspect, CONF_TYPE_FLOAT, CONF_RANGE, 0.2, 3.0},
-	{"noaspect", &movie_aspect, CONF_TYPE_FLAG, 0, 0, 0},
-	{"monitoraspect", &monitor_aspect, CONF_TYPE_FLOAT, CONF_RANGE, 0.2, 3.0},
-        {"vm", &vidmode, CONF_TYPE_FLAG, 0, 0, 1},
-        {"novm", &vidmode, CONF_TYPE_FLAG, 0, 1, 0},
-	{"fs", &fullscreen, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nofs", &fullscreen, CONF_TYPE_FLAG, 0, 1, 0},
-        {"zoom", &softzoom, CONF_TYPE_FLAG, 0, 0, 1},
-        {"nozoom", &softzoom, CONF_TYPE_FLAG, 0, 1, 0},
-        {"flip", &flip, CONF_TYPE_FLAG, 0, -1, 1},
-        {"noflip", &flip, CONF_TYPE_FLAG, 0, -1, 0},
+	{"x", &screen_size_x, CONF_TYPE_INT, CONF_RANGE, 0, 4096, NULL},
+	{"y", &screen_size_y, CONF_TYPE_INT, CONF_RANGE, 0, 4096, NULL},
+	{"xy", &screen_size_xy, CONF_TYPE_INT, CONF_RANGE, 0, 4096, NULL},
+	{"screenw", &vo_screenwidth, CONF_TYPE_INT, CONF_RANGE, 0, 4096, NULL},
+	{"screenh", &vo_screenheight, CONF_TYPE_INT, CONF_RANGE, 0, 4096, NULL},
+	{"aspect", &movie_aspect, CONF_TYPE_FLOAT, CONF_RANGE, 0.2, 3.0, NULL},
+	{"noaspect", &movie_aspect, CONF_TYPE_FLAG, 0, 0, 0, NULL},
+	{"monitoraspect", &monitor_aspect, CONF_TYPE_FLOAT, CONF_RANGE, 0.2, 3.0, NULL},
+        {"vm", &vidmode, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+        {"novm", &vidmode, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+	{"fs", &fullscreen, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nofs", &fullscreen, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+        {"zoom", &softzoom, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+        {"nozoom", &softzoom, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+        {"flip", &flip, CONF_TYPE_FLAG, 0, -1, 1, NULL},
+        {"noflip", &flip, CONF_TYPE_FLAG, 0, -1, 0, NULL},
        
 #ifndef USE_LIBVO2
-        {"bpp", &vo_dbpp, CONF_TYPE_INT, CONF_RANGE, 0, 32},
-	{"fsmode", &vo_fsmode, CONF_TYPE_INT, CONF_RANGE, 0, 15},
-	{"double", &vo_doublebuffering, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nodouble", &vo_doublebuffering, CONF_TYPE_FLAG, 0, 1, 0},
+        {"bpp", &vo_dbpp, CONF_TYPE_INT, CONF_RANGE, 0, 32, NULL},
+	{"fsmode", &vo_fsmode, CONF_TYPE_INT, CONF_RANGE, 0, 15, NULL},
+	{"double", &vo_doublebuffering, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nodouble", &vo_doublebuffering, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 #endif
 
 #ifdef HAVE_AA
-	{"aa*",	vo_aa_parseoption,  CONF_TYPE_FUNC_FULL, 0, 0, 0 },
+	{"aa*",	vo_aa_parseoption,  CONF_TYPE_FUNC_FULL, 0, 0, 0 , NULL},
 #endif
 
 #ifdef HAVE_LIRC
-	{"lircconf", &lirc_configfile, CONF_TYPE_STRING, 0, 0, 0}, 
+	{"lircconf", &lirc_configfile, CONF_TYPE_STRING, 0, 0, 0, NULL}, 
 #endif
 
 #ifdef USE_DVDREAD
-	{"alang", &audio_lang, CONF_TYPE_STRING, 0, 0, 0},
-	{"slang", &dvdsub_lang, CONF_TYPE_STRING, 0, 0, 0},
+	{"alang", &audio_lang, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"slang", &dvdsub_lang, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #endif
 
-	{"gui", &use_gui, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nogui", &use_gui, CONF_TYPE_FLAG, 0, 1, 0},
+	{"gui", &use_gui, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nogui", &use_gui, CONF_TYPE_FLAG, 0, 1, 0, NULL},
       
 #ifdef HAVE_NEW_GUI
-	{"skin", &skinName, CONF_TYPE_STRING, 0, 0, 0},
+	{"skin", &skinName, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #endif
 
-	{"playlist", &playlist_file, CONF_TYPE_STRING, 0, 0, 0},
-	{"dapsync", &dapsync, CONF_TYPE_FLAG, 0, 0, 1},
-	{"nodapsync", &dapsync, CONF_TYPE_FLAG, 0, 1, 0},
-	{"softsleep", &softsleep, CONF_TYPE_FLAG, 0, 0, 1},
+	{"playlist", &playlist_file, CONF_TYPE_STRING, 0, 0, 0, NULL},
+	{"dapsync", &dapsync, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"nodapsync", &dapsync, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+	{"softsleep", &softsleep, CONF_TYPE_FLAG, 0, 0, 1, NULL},
 
-	{"slave", &slave_mode, CONF_TYPE_FLAG, 0, 0, 1},
+	{"slave", &slave_mode, CONF_TYPE_FLAG, 0, 0, 1, NULL},
 
 #ifdef HAVE_X11
-	{"wid", &WinID, CONF_TYPE_INT, 0, 0, 0},
-	{"rootwin", &WinID, CONF_TYPE_FLAG, 0, -1, 0},
+	{"wid", &WinID, CONF_TYPE_INT, 0, 0, 0, NULL},
+	{"rootwin", &WinID, CONF_TYPE_FLAG, 0, -1, 0, NULL},
 #endif
 
 #ifdef HAVE_XINERAMA
-	{"xineramascreen", &xinerama_screen, CONF_TYPE_INT, CONF_RANGE, 0, 32},
+	{"xineramascreen", &xinerama_screen, CONF_TYPE_INT, CONF_RANGE, 0, 32, NULL},
 #endif
 
 #define MAIN_CONF
 #include "cfg-common.h"
 #undef MAIN_CONF
         
-	{"quiet", &quiet, CONF_TYPE_FLAG, 0, 0, 1},
-	{"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE, 0, 100},
-	{"v", cfg_inc_verbose, CONF_TYPE_FUNC, 0, 0, 0},
-	{"-help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{"help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{"h", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0},
-	{NULL, NULL, 0, 0, 0, 0}
+	{"quiet", &quiet, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+	{"verbose", &verbose, CONF_TYPE_INT, CONF_RANGE, 0, 100, NULL},
+	{"v", cfg_inc_verbose, CONF_TYPE_FUNC, 0, 0, 0, NULL},
+	{"-help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{"help", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{"h", help_text, CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
+	{NULL, NULL, 0, 0, 0, 0, NULL}
 };