[Mplayerxp-cvslog] SF.net SVN: mplayerxp:[97] mplayerxp
Brought to you by:
olov
From: <nic...@us...> - 2010-01-11 18:28:55
|
Revision: 97 http://mplayerxp.svn.sourceforge.net/mplayerxp/?rev=97&view=rev Author: nickols_k Date: 2010-01-11 18:28:46 +0000 (Mon, 11 Jan 2010) Log Message: ----------- print almost all help information Modified Paths: -------------- mplayerxp/cfgparser.c mplayerxp/cfgparser.h mplayerxp/input/input.c mplayerxp/input/input.h mplayerxp/libmpcodecs/vd_ffmpeg.c mplayerxp/libmpdemux/demux_audio.c mplayerxp/libmpdemux/demux_lavf.c mplayerxp/libmpdemux/demuxer.c mplayerxp/mplayer.c Modified: mplayerxp/cfgparser.c =================================================================== --- mplayerxp/cfgparser.c 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/cfgparser.c 2010-01-11 18:28:46 UTC (rev 97) @@ -948,7 +948,7 @@ #endif if (init_conf(config, COMMAND_LINE) == -1) - return -1; + return -1; if(config->last_parent == NULL) config->last_parent = config->pt; /* in order to work recursion detection properly in parse_config_file */ @@ -1055,22 +1055,6 @@ return -1; } -void m_config_show_options(const config_t *args) { - unsigned i; - MSG_INFO("List of available command-line options:\n"); - i=0; - while(args[i].name) { - if(args[i].type<=CONF_TYPE_PRINT) - MSG_INFO(" -%-11s (%-3s) %s\n" - ,args[i].name - ,args[i].type==CONF_TYPE_FLAG?"flg": - args[i].type==CONF_TYPE_INT?"int": - args[i].type==CONF_TYPE_FLOAT?"flt": - args[i].type==CONF_TYPE_STRING?"str":"" - ,(args[i].type==CONF_TYPE_PRINT && strcmp(args[i].help,"show help")!=0)?args[i].p:args[i].help); - i++; - }; -} int m_config_register_options(m_config_t *config,const config_t *args) { @@ -1318,4 +1302,78 @@ return 0; } +void m_config_show_options(const m_config_t *args) { + unsigned i,j; + const config_t *opts; + MSG_INFO("List of available command-line options:\n"); + j=0; + while((opts=args->opt_list[j])!=NULL) { + i=0; + while(opts[i].name) { + if(opts[i].type<=CONF_TYPE_PRINT) { + MSG_INFO(" -%-11s %s" + ,opts[i].name + ,(opts[i].type==CONF_TYPE_PRINT && strcmp(opts[i].help,"show help")!=0)?opts[i].p:opts[i].help); + if((opts[i].flags&CONF_NOCFG)==0) { + MSG_INFO(" {%s:", + opts[i].type==CONF_TYPE_FLAG?"flg": + opts[i].type==CONF_TYPE_INT?"int": + opts[i].type==CONF_TYPE_FLOAT?"flt": + opts[i].type==CONF_TYPE_STRING?"str":""); + switch(opts[i].type) { + case CONF_TYPE_FLAG: { + int defv = *((int*)(opts[i].p)); + MSG_INFO("<default=%i>",defv); + } + break; + case CONF_TYPE_STRING: { + const char *defv = (char*)(opts[i].p); + MSG_INFO("'%s'",defv); + } + break; + case CONF_TYPE_INT: { + int defv = *((int*)(opts[i].p)); + if((opts[i].flags&CONF_RANGE)==CONF_RANGE) { + MSG_INFO("[%i...%i]",(int)opts[i].min,(int)opts[i].max); + } + else + if((opts[i].flags&CONF_MIN)==CONF_MIN) { + MSG_INFO("<min=%i>",(int)opts[i].min); + } + else + if((opts[i].flags&CONF_MAX)==CONF_MAX) { + MSG_INFO("<max=%i>",(int)opts[i].max); + } + MSG_INFO("<default=%i>",defv); + } + break; + case CONF_TYPE_FLOAT: { + float defv = *((float*)(opts[i].p)); + if((opts[i].flags&CONF_RANGE)==CONF_RANGE) { + MSG_INFO("[%f...%f]",(float)opts[i].min,(float)opts[i].max); + } + else + if((opts[i].flags&CONF_MIN)==CONF_MIN) { + MSG_INFO("<min=%f>",(float)opts[i].min); + } + else + if((opts[i].flags&CONF_MAX)==CONF_MAX) { + MSG_INFO("<float=%f>",(float)opts[i].max); + } + MSG_INFO("<default=%f>",defv); + } + break; + default: + break; + } + MSG_INFO("}"); + } + MSG_INFO("\n"); + } + i++; + } + j++; + }; +} + #undef AS_INT Modified: mplayerxp/cfgparser.h =================================================================== --- mplayerxp/cfgparser.h 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/cfgparser.h 2010-01-11 18:28:46 UTC (rev 97) @@ -5,6 +5,7 @@ #ifndef __CONFIG_H #define __CONFIG_H +/* config types */ #define CONF_TYPE_FLAG 0 #define CONF_TYPE_INT 1 #define CONF_TYPE_FLOAT 2 @@ -21,15 +22,14 @@ #define ERR_OUT_OF_RANGE -3 #define ERR_FUNC_ERR -4 - - +/* config flags */ #define CONF_MIN (1<<0) #define CONF_MAX (1<<1) #define CONF_RANGE (CONF_MIN|CONF_MAX) #define CONF_NOCFG (1<<2) #define CONF_NOCMD (1<<3) #define CONF_GLOBAL (1<<4) -#define CONF_NOSAVE (1<<5) +#define CONF_NOSAVE (1<<5) typedef struct config config_t; @@ -108,11 +108,11 @@ */ int m_config_register_options(m_config_t *config,const config_t *args); -void m_config_show_options(const config_t *args); +void m_config_show_options(const m_config_t* args); /* * For all the following function when it's a subconfig option - * you must give an option name like 'tv:channel' and not just + * you must give an option name like 'tv:channel' and not just * 'channel' */ Modified: mplayerxp/input/input.c =================================================================== --- mplayerxp/input/input.c 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/input/input.c 2010-01-11 18:28:46 UTC (rev 97) @@ -91,7 +91,7 @@ { MP_CMD_CHELP, "help", 0, { {-1,{0}} } }, { MP_CMD_CEXIT, "exit", 0, { {-1,{0}} } }, { MP_CMD_CHIDE, "hide", 0, { {MP_CMD_ARG_INT,{3000}}, {-1,{0}} } }, - + { 0, NULL, 0, {} } }; @@ -229,7 +229,7 @@ { { MOUSE_BTN4, 0 }, "seek -10" }, { { MOUSE_BTN5, 0 }, "volume 1" }, { { MOUSE_BTN6, 0 }, "volume -1" }, - + #ifdef USE_DVDNAV { { KEY_KP8, 0 }, "dvdnav 1" }, // up { { KEY_KP2, 0 }, "dvdnav 2" }, // down @@ -408,35 +408,32 @@ // Our command line options static const config_t input_conf[] = { - { "conf", &config_file, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL }, - { "ar-delay", &ar_delay, CONF_TYPE_INT, CONF_GLOBAL, 0, 0, NULL }, - { "ar-rate", &ar_rate, CONF_TYPE_INT, CONF_GLOBAL, 0, 0, NULL }, - { "keylist", mp_input_print_key_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL }, - { "cmdlist", mp_input_print_cmd_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL }, - { "js-dev", &js_dev, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL }, - { "file", &in_file, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL }, - { NULL, NULL, 0, 0, 0, 0, NULL} + { "conf", &config_file, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL, "" }, + { "ar-delay", &ar_delay, CONF_TYPE_INT, CONF_GLOBAL, 0, 0, NULL, "" }, + { "ar-rate", &ar_rate, CONF_TYPE_INT, CONF_GLOBAL, 0, 0, NULL, "" }, + { "keylist", mp_input_print_key_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL, "" }, + { "cmdlist", mp_input_print_cmd_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL, "" }, + { "js-dev", &js_dev, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL, "" }, + { "file", &in_file, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL, "" }, + { NULL, NULL, 0, 0, 0, 0, NULL, NULL} }; static const config_t mp_input_opts[] = { - { "input", &input_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, - { "nojoystick", &use_joystick, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL }, - { "joystick", &use_joystick, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL }, - { "nolirc", &use_lirc, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL }, - { "lirc", &use_lirc, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL }, - { "nolircc", &use_lircc, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL }, - { "lircc", &use_lircc, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL }, - { NULL, NULL, 0, 0, 0, 0, NULL} + { "input", &input_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL, ""}, + { "joystick", &use_joystick, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL, "enables using of joystick" }, + { "nojoystick", &use_joystick, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL, "disables using of joystick" }, + { "lirc", &use_lirc, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL, "enables using of lirc" }, + { "nolirc", &use_lirc, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL, "disables using of lirc" }, + { "lircc", &use_lircc, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL, "enables using of lirc daemon" }, + { "nolircc", &use_lircc, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL, "disables using of lirc daemon" }, + { NULL, NULL, 0, 0, 0, 0, NULL, NULL} }; -static int -mp_input_default_key_func(int fd); +static int mp_input_default_key_func(int fd); -static int -mp_input_default_cmd_func(int fd,char* buf, int l); +static int mp_input_default_cmd_func(int fd,char* buf, int l); -static char* -mp_input_get_key_name(int key); +static char* mp_input_get_key_name(int key); int @@ -598,7 +595,7 @@ if(e <= ptr2 || *(e - 1) != '\\') break; ptr2 = e + 1; } - + if(term != ' ' && (!e || e[0] == '\0')) { MSG_ERR("Command %s : argument %d is unterminated\n",cmd_def->name,i+1); ptr = NULL; @@ -667,8 +664,8 @@ mp_fd->buffer = (char*)malloc(MP_CMD_MAX_SIZE*sizeof(char)); mp_fd->pos = 0; mp_fd->size = MP_CMD_MAX_SIZE; - } - + } + // Get some data if needed/possible while( !(mp_fd->flags & MP_FD_GOT_CMD) && !(mp_fd->flags & MP_FD_EOF) && (mp_fd->size - mp_fd->pos > 1) ) { int r = ((mp_cmd_func_t)mp_fd->read_func)(mp_fd->fd,mp_fd->buffer+mp_fd->pos,mp_fd->size - 1 - mp_fd->pos); @@ -728,7 +725,7 @@ memmove(mp_fd->buffer,end+1,mp_fd->pos-(l+1)); mp_fd->pos -= l+1; } - + if(*ret) return 1; else @@ -764,8 +761,8 @@ filter->next = cmd_filters; cmd_filters = filter; } - + static char* mp_input_find_bind_for_key(const mp_cmd_bind_t* binds, int n,int* keys) { int j; @@ -864,12 +861,12 @@ if(n>0){ if(time >= 0 ) { - tv.tv_sec=time/1000; + tv.tv_sec=time/1000; tv.tv_usec = (time%1000)*1000; time_val = &tv; } else time_val = NULL; - + while(1) { if(select(max_fd+1,&fds,NULL,NULL,time_val) < 0) { if(errno == EINTR) @@ -916,7 +913,6 @@ } return MP_INPUT_NOTHING; } - static mp_cmd_t* mp_input_read_keys(int time,int paused) { @@ -969,7 +965,7 @@ key_down[num_key_down] = code; num_key_down++; last_key_down = 1; - } + } // We ignore key from last combination ret = last_key_down ? mp_input_get_cmd_from_keys(num_key_down,key_down,paused) : NULL; // Remove the key @@ -1052,7 +1048,7 @@ time_val = &tv; } else time_val = NULL; - + while(n > 0) { if((i = select(max_fd+1,&fds,NULL,NULL,time_val)) <= 0) { if(i < 0) { @@ -1096,9 +1092,9 @@ last_loop = i; return ret; } - + last_loop = 0; - return NULL; + return NULL; } int @@ -1119,14 +1115,14 @@ return NULL; ret = cmd_queue[cmd_queue_start]; - + if (!peek_only) { cmd_queue_length--; cmd_queue_start = (cmd_queue_start + 1) % CMD_QUEUE_SIZE; } - + return ret; -} +} /** * \param peek_only when set, the returned command stays in the queue. @@ -1209,7 +1205,7 @@ if(key_names[i].key == key) return key_names[i].name; } - + if(isascii(key)) { snprintf(key_str,12,"%c",(char)key); return key_str; @@ -1285,7 +1281,7 @@ } } } - + if(!bind) { cmd_binds = (mp_cmd_bind_t*)realloc(cmd_binds,(i+2)*sizeof(mp_cmd_bind_t)); memset(&cmd_binds[i],0,2*sizeof(mp_cmd_bind_t)); @@ -1482,7 +1478,7 @@ file = config_file[0] != '/' ? get_path(config_file) : config_file; if(!file) return; - + if(! mp_input_parse_config(file)) { // Try global conf dir file = CONFDIR "/input.conf"; @@ -1544,7 +1540,7 @@ if(cmd_fds[i].close_func) cmd_fds[i].close_func(cmd_fds[i].fd); } - + } void @@ -1552,21 +1548,52 @@ m_config_register_options(cfg,mp_input_opts); } +void mp_input_print_keys(void) { + unsigned i; + MSG_INFO("List of available KEYS:\n"); + for(i= 0; key_names[i].name != NULL ; i++) + MSG_INFO("%s\n",key_names[i].name); +} + static int mp_input_print_key_list(config_t* cfg) { - int i; - printf("\n"); - for(i= 0; key_names[i].name != NULL ; i++) - printf("%s\n",key_names[i].name); + mp_input_print_keys(); exit(0); } -static int mp_input_print_cmd_list(config_t* cfg) { +static char defkname[2]; +static const char * mp_find_keyname(int keyval) { + unsigned i; + defkname[1]='\0'; + if( keyval>' ' && keyval<='z' ) { + defkname[0]=keyval; + return defkname; + } + for(i= 0; key_names[i].name != NULL ; i++) { + if(keyval==key_names[i].key) return key_names[i].name; + } + return "unknown"; +} + +void mp_input_print_binds(void) { + unsigned i,j; + MSG_INFO("List of available key bindings:\n"); + for(i=0; def_cmd_binds[i].cmd != NULL ; i++) { + MSG_INFO(" %-15s",def_cmd_binds[i].cmd); + for(j=0;def_cmd_binds[i].input[j] != 0;j++) { + MSG_INFO(" %s",mp_find_keyname(def_cmd_binds[i].input[j])); + } + MSG_INFO("\n"); + } +} + +void mp_input_print_cmds(void) { const mp_cmd_t *cmd; int i,j; char* type; + MSG_INFO("List of available input commands:\n"); for(i = 0; (cmd = &mp_cmds[i])->name != NULL ; i++) { - printf("%-20.20s",cmd->name); + MSG_INFO(" %-20.20s",cmd->name); for(j= 0 ; j < MP_CMD_MAX_ARGS && cmd->args[j].type != -1 ; j++) { switch(cmd->args[j].type) { case MP_CMD_ARG_INT: @@ -1582,12 +1609,16 @@ type = "??"; } if(j+1 > cmd->nargs) - printf(" [%s]",type); + MSG_INFO(" [%s]",type); else - printf(" %s",type); + MSG_INFO(" %s",type); } - printf("\n"); + MSG_INFO("\n"); } +} + +static int mp_input_print_cmd_list(config_t* cfg) { + mp_input_print_cmds(); exit(0); } Modified: mplayerxp/input/input.h =================================================================== --- mplayerxp/input/input.h 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/input/input.h 2010-01-11 18:28:46 UTC (rev 97) @@ -208,3 +208,6 @@ int mp_input_check_interrupt(int time); +void mp_input_print_keys(void); +void mp_input_print_cmds(void); +void mp_input_print_binds(void); Modified: mplayerxp/libmpcodecs/vd_ffmpeg.c =================================================================== --- mplayerxp/libmpcodecs/vd_ffmpeg.c 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/libmpcodecs/vd_ffmpeg.c 2010-01-11 18:28:46 UTC (rev 97) @@ -43,21 +43,21 @@ static char *lavc_avopt = NULL; static const config_t options[] = { - {"ffmpeg_er", &lavc_param_error_resilience, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL}, - {"ffmpeg_idct", &lavc_param_idct_algo, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL}, - {"ffmpeg_ec", &lavc_param_error_concealment, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL}, - {"ffmpeg_vstats", &lavc_param_vstats, CONF_TYPE_FLAG, 0, 0, 1, NULL}, - {"ffmpeg_debug", &lavc_param_debug, CONF_TYPE_INT, CONF_RANGE, 0, 9999999, NULL}, - {"ffmpeg_vismv", &lavc_param_vismv, CONF_TYPE_INT, CONF_RANGE, 0, 9999999, NULL}, - {"ffmpeg_st", &lavc_param_skip_top, CONF_TYPE_INT, CONF_RANGE, 0, 999, NULL}, - {"ffmpeg_sb", &lavc_param_skip_bottom, CONF_TYPE_INT, CONF_RANGE, 0, 999, NULL}, - {"ffmpeg_lowres", &lavc_param_lowres_str, CONF_TYPE_STRING, 0, 0, 0, NULL}, - {"ffmpeg_skiploopfilter", &lavc_param_skip_loop_filter_str, CONF_TYPE_STRING, 0, 0, 0, NULL}, - {"ffmpeg_skipidct", &lavc_param_skip_idct_str, CONF_TYPE_STRING, 0, 0, 0, NULL}, - {"ffmpeg_skipframe", &lavc_param_skip_frame_str, CONF_TYPE_STRING, 0, 0, 0, NULL}, - {"ffmpeg_threads", &lavc_param_threads, CONF_TYPE_INT, CONF_RANGE, 1, 8, NULL}, - {"ffmpeg_o", &lavc_avopt, CONF_TYPE_STRING, 0, 0, 0, NULL}, - { NULL, NULL, 0, 0, 0, 0, NULL} + {"ffmpeg_er", &lavc_param_error_resilience, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL,"specifies error resilience for ffmpeg decoders"}, + {"ffmpeg_idct", &lavc_param_idct_algo, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL,"specifies idct algorithm for ffmpeg decoders"}, + {"ffmpeg_ec", &lavc_param_error_concealment, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL,"specifies error concealment for ffmpeg decoders"}, + {"ffmpeg_vstats", &lavc_param_vstats, CONF_TYPE_FLAG, 0, 0, 1, NULL,"specifies vstat for ffmpeg decoders"}, + {"ffmpeg_debug", &lavc_param_debug, CONF_TYPE_INT, CONF_RANGE, 0, 9999999, NULL,"specifies debug level for ffmpeg decoders"}, + {"ffmpeg_vismv", &lavc_param_vismv, CONF_TYPE_INT, CONF_RANGE, 0, 9999999, NULL,"specifies visualize motion vectors (MVs) for ffmpeg decoders"}, + {"ffmpeg_st", &lavc_param_skip_top, CONF_TYPE_INT, CONF_RANGE, 0, 999, NULL,"specifies skipping top lines for ffmpeg decoders"}, + {"ffmpeg_sb", &lavc_param_skip_bottom, CONF_TYPE_INT, CONF_RANGE, 0, 999, NULL,"specifies skipping bottom lines for ffmpeg decoders"}, + {"ffmpeg_lowres", &lavc_param_lowres_str, CONF_TYPE_STRING, 0, 0, 0, NULL,"specifies decoding at 1= 1/2, 2=1/4, 3=1/8 resolutions for ffmpeg decoders"}, + {"ffmpeg_skiploopfilter", &lavc_param_skip_loop_filter_str, CONF_TYPE_STRING, 0, 0, 0, NULL,"specifies skipping of loop filters for ffmpeg decoders"}, + {"ffmpeg_skipidct", &lavc_param_skip_idct_str, CONF_TYPE_STRING, 0, 0, 0, NULL,"specifies skipping of IDCT filters for ffmpeg decoders"}, + {"ffmpeg_skipframe", &lavc_param_skip_frame_str, CONF_TYPE_STRING, 0, 0, 0, NULL,"indicates frame skipping for ffmpeg decoders"}, + {"ffmpeg_threads", &lavc_param_threads, CONF_TYPE_INT, CONF_RANGE, 1, 8, NULL,"specifies number of threads for ffmpeg decoders"}, + {"ffmpeg_o", &lavc_avopt, CONF_TYPE_STRING, 0, 0, 0, NULL,"specifies additional option for ffmpeg decoders"}, + { NULL, NULL, 0, 0, 0, 0, NULL, NULL} }; LIBVD_EXTERN(ffmpeg) Modified: mplayerxp/libmpdemux/demux_audio.c =================================================================== --- mplayerxp/libmpdemux/demux_audio.c 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/libmpdemux/demux_audio.c 2010-01-11 18:28:46 UTC (rev 97) @@ -1767,9 +1767,9 @@ #include "../cfgparser.h" static const config_t audio_opts[] = { - { "hr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 0, 1, NULL }, - { "nohr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 1, 0, NULL}, - {NULL, NULL, 0, 0, 0, 0, NULL} + { "hr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 0, 1, NULL, "enables hight-resolution mp3 seeking" }, + { "nohr-mp3-seek", &hr_mp3_seek, CONF_TYPE_FLAG, 0, 1, 0, NULL, "disables hight-resolution mp3 seeking"}, + {NULL, NULL, 0, 0, 0, 0, NULL, NULL} }; demuxer_driver_t demux_audio = Modified: mplayerxp/libmpdemux/demux_lavf.c =================================================================== --- mplayerxp/libmpdemux/demux_lavf.c 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/libmpdemux/demux_lavf.c 2010-01-11 18:28:46 UTC (rev 97) @@ -48,9 +48,9 @@ extern int ts_prog; const config_t lavfdopts_conf[] = { - {"lavf_format", &(opt_format), CONF_TYPE_STRING, 0, 0, 0, NULL}, - {"lavf_cryptokey", &(opt_cryptokey), CONF_TYPE_STRING, 0, 0, 0, NULL}, - {NULL, NULL, 0, 0, 0, 0, NULL} + {"lavf_format", &(opt_format), CONF_TYPE_STRING, 0, 0, 0, NULL, "forces format of lavf demuxer"}, + {"lavf_cryptokey", &(opt_cryptokey), CONF_TYPE_STRING, 0, 0, 0, NULL, "specifies cryptokey for lavf demuxer"}, + {NULL, NULL, 0, 0, 0, 0, NULL, NULL} }; static int64_t mpxp_gcd(int64_t a, int64_t b){ Modified: mplayerxp/libmpdemux/demuxer.c =================================================================== --- mplayerxp/libmpdemux/demuxer.c 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/libmpdemux/demuxer.c 2010-01-11 18:28:46 UTC (rev 97) @@ -746,12 +746,12 @@ /******************* Options stuff **********************/ static const config_t demuxer_opts[] = { - { "audiofile", &audio_stream, CONF_TYPE_STRING, 0, 0, 0, NULL }, - { "subfile", &sub_stream, CONF_TYPE_STRING, 0, 0, 0, NULL }, - { "demuxer", &demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL }, - { "audio-demuxer", &audio_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL }, - { "sub-demuxer", &sub_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL }, - { NULL, NULL, 0, 0, 0, 0, NULL} + { "audiofile", &audio_stream, CONF_TYPE_STRING, 0, 0, 0, NULL, "forces reading of audio-stream from other file" }, + { "subfile", &sub_stream, CONF_TYPE_STRING, 0, 0, 0, NULL, "forces reading of subtitles from other file" }, + { "demuxer", &demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL, "forces demxer by given number" }, + { "audio-demuxer", &audio_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL, "forces using of audio-demuxer" }, + { "sub-demuxer", &sub_demuxer_type, CONF_TYPE_INT, CONF_RANGE, 1, DEMUXER_TYPE_MAX, NULL, "forces using of subtitle-demuxer" }, + { NULL, NULL, 0, 0, 0, 0, NULL, NULL} }; void demuxer_register_options(m_config_t* cfg) { Modified: mplayerxp/mplayer.c =================================================================== --- mplayerxp/mplayer.c 2010-01-11 15:52:10 UTC (rev 96) +++ mplayerxp/mplayer.c 2010-01-11 18:28:46 UTC (rev 97) @@ -991,8 +991,9 @@ } void show_long_help(void) { - show_help(); - m_config_show_options(mplayer_opts); + m_config_show_options(mconfig); + mp_input_print_binds(); + print_stream_drivers(); vo_print_help(); ao_print_help(); vf_help(); @@ -2030,7 +2031,7 @@ ,get_delay_audio_buffer() ); } - + int v_bright=0; int v_cont=0; int v_hue=0; @@ -2104,7 +2105,7 @@ playtree = play_tree_cleanup(playtree); if(playtree) { playtree_iter = play_tree_iter_new(playtree,mconfig); - if(playtree_iter) { + if(playtree_iter) { if(play_tree_iter_step(playtree_iter,0,0) != PLAY_TREE_ITER_ENTRY) { play_tree_iter_free(playtree_iter); playtree_iter = NULL; @@ -2116,7 +2117,7 @@ ao_da_buffs = vo_da_buffs; if(enable_xp!=XP_None) vo_doublebuffering=1; else vo_use_bm = 0; - + init_player(); if(!filename){ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |