analyzeduration option for lavf demuxer

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24655 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
henry 2007-09-29 07:55:43 +00:00
parent b267bd3921
commit fffb09b9b3
2 changed files with 10 additions and 0 deletions

View File

@ -10100,6 +10100,10 @@ The same principle as for vbuf_size applies.
.SS FFmpeg libavformat demuxers (\-lavfdopts)
.
.TP
.B analyzeduration=<value>
Maximum length in seconds to analyze the stream properties.
.
.TP
.B format=<value>
Force a specific libavformat demuxer.
.

View File

@ -47,11 +47,13 @@
extern char *audio_lang;
static unsigned int opt_probesize = 0;
static unsigned int opt_analyzeduration = 0;
static char *opt_format;
m_option_t lavfdopts_conf[] = {
{"probesize", &(opt_probesize), CONF_TYPE_INT, CONF_RANGE, 32, INT_MAX, NULL},
{"format", &(opt_format), CONF_TYPE_STRING, 0, 0, 0, NULL},
{"analyzeduration", &(opt_analyzeduration), CONF_TYPE_INT, CONF_RANGE, 0, INT_MAX, NULL},
{NULL, NULL, 0, 0, 0, 0, NULL}
};
@ -273,6 +275,10 @@ static demuxer_t* demux_open_lavf(demuxer_t *demuxer){
opt = av_set_int(avfc, "probesize", opt_probesize);
if(!opt) mp_msg(MSGT_HEADER,MSGL_ERR, "demux_lavf, couldn't set option probesize to %u\n", opt_probesize);
}
if(opt_analyzeduration) {
opt = av_set_int(avfc, "analyzeduration", opt_analyzeduration * AV_TIME_BASE);
if(!opt) mp_msg(MSGT_HEADER,MSGL_ERR, "demux_lavf, couldn't set option analyzeduration to %u\n", opt_analyzeduration);
}
if(demuxer->stream->url)
strncpy(mp_filename + 3, demuxer->stream->url, sizeof(mp_filename)-3);