diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-03-22 19:38:42 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-03-22 19:38:42 +0000 |
commit | b28b15db30010695c3dc59e57370186dd961e79c (patch) | |
tree | e2389d419f4fe91a6e077865ddcdd8c7a36ae119 | |
parent | a1f7ee1a4bf627554732dc41ef4e4f0a027018f6 (diff) | |
download | mpv-b28b15db30010695c3dc59e57370186dd961e79c.tar.bz2 mpv-b28b15db30010695c3dc59e57370186dd961e79c.tar.xz |
Start probing with a size matching the stream buffer size so it is possible
to restart without seeking even without cache for easily detectable formats.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30946 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libmpdemux/demux_lavf.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libmpdemux/demux_lavf.c b/libmpdemux/demux_lavf.c index a718fe6a54..fa86600bd0 100644 --- a/libmpdemux/demux_lavf.c +++ b/libmpdemux/demux_lavf.c @@ -43,7 +43,8 @@ #include "mp_taglists.h" -#define INITIAL_PROBE_SIZE (32*1024) +#define INITIAL_PROBE_SIZE STREAM_BUFFER_SIZE +#define SMALL_MAX_PROBE_SIZE (32 * 1024) #define PROBE_BUF_SIZE (2*1024*1024) extern char *audio_lang; @@ -171,7 +172,8 @@ static int lavf_check_file(demuxer_t *demuxer){ priv->avif= av_probe_input_format(&avpd, probe_data_size > 0); read_size = FFMIN(2*read_size, PROBE_BUF_SIZE - probe_data_size); - } while (demuxer->desc->type != DEMUXER_TYPE_LAVF_PREFERRED && + } while ((demuxer->desc->type != DEMUXER_TYPE_LAVF_PREFERRED || + probe_data_size < SMALL_MAX_PROBE_SIZE) && !priv->avif && read_size > 0 && probe_data_size < PROBE_BUF_SIZE); av_free(avpd.buf); |