diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-11-10 16:49:00 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-11-10 16:49:00 +0000 |
commit | 085f35f4b48766a5740c7802e4a9a7d809f73441 (patch) | |
tree | 39b99851ef569f9447532ef88b720454ccc931fb | |
parent | 5fd17a2c073abc2c674e81cdca761f390a5a4e08 (diff) | |
download | mpv-085f35f4b48766a5740c7802e4a9a7d809f73441.tar.bz2 mpv-085f35f4b48766a5740c7802e4a9a7d809f73441.tar.xz |
Allow lavf demuxer to also probe and play files < 32 kB (full probe buffer size).
Based on patch by On2.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29882 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 d954378295..4d4137babd 100644 --- a/libmpdemux/demux_lavf.c +++ b/libmpdemux/demux_lavf.c @@ -133,6 +133,7 @@ static int lavf_check_file(demuxer_t *demuxer){ AVProbeData avpd; uint8_t buf[PROBE_BUF_SIZE]; lavf_priv_t *priv; + int probe_data_size; if(!demuxer->priv) demuxer->priv=calloc(sizeof(lavf_priv_t),1); @@ -154,11 +155,12 @@ static int lavf_check_file(demuxer_t *demuxer){ return DEMUXER_TYPE_LAVF; } - if(stream_read(demuxer->stream, buf, PROBE_BUF_SIZE)!=PROBE_BUF_SIZE) + probe_data_size = stream_read(demuxer->stream, buf, PROBE_BUF_SIZE); + if(probe_data_size <= 0) return 0; avpd.filename= demuxer->stream->url; avpd.buf= buf; - avpd.buf_size= PROBE_BUF_SIZE; + avpd.buf_size= probe_data_size; priv->avif= av_probe_input_format(&avpd, 1); if(!priv->avif){ |