# HG changeset patch # User reimar # Date 1269286722 0 # Node ID c449f1667e78af7c40db35be6c3736a06c3e0a53 # Parent 565f6d0f0d2a37135a926c309c1af519ceb6505d 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. diff -r 565f6d0f0d2a -r c449f1667e78 libmpdemux/demux_lavf.c --- a/libmpdemux/demux_lavf.c Sun Mar 21 10:13:00 2010 +0000 +++ b/libmpdemux/demux_lavf.c Mon Mar 22 19:38:42 2010 +0000 @@ -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 @@ 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);