diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-07-11 17:25:37 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-07-11 17:25:37 +0000 |
commit | 3ee94605052ebae0b4de4ed448fb0aa7ac365637 (patch) | |
tree | 26412f25c0bd2af3f479c4981e9c245046bd8afa | |
parent | 8833f7c4ce9d8f9bd8bd6edc98f3f84c3766a68d (diff) | |
download | mpv-3ee94605052ebae0b4de4ed448fb0aa7ac365637.tar.bz2 mpv-3ee94605052ebae0b4de4ed448fb0aa7ac365637.tar.xz |
Correct stream-seekability tests in demux_audio and demux_lavf
Based on a patch by Alexander Kanavin (alexander.kanavin nokia com)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27250 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libmpdemux/demux_audio.c | 2 | ||||
-rw-r--r-- | libmpdemux/demux_lavf.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/libmpdemux/demux_audio.c b/libmpdemux/demux_audio.c index c9f0dbbfe7..ebaf4e4c3c 100644 --- a/libmpdemux/demux_audio.c +++ b/libmpdemux/demux_audio.c @@ -329,7 +329,7 @@ static int demux_audio_open(demuxer_t* demuxer) { sh_audio->i_bps = sh_audio->wf->nAvgBytesPerSec; free(mp3_found); mp3_found = NULL; - if(s->end_pos) { + if(s->end_pos && (s->flags & STREAM_SEEK) == STREAM_SEEK) { char tag[4]; stream_seek(s,s->end_pos-128); stream_read(s,tag,3); diff --git a/libmpdemux/demux_lavf.c b/libmpdemux/demux_lavf.c index bc49ee0ab7..426ae0227c 100644 --- a/libmpdemux/demux_lavf.c +++ b/libmpdemux/demux_lavf.c @@ -454,7 +454,7 @@ static demuxer_t* demux_open_lavf(demuxer_t *demuxer){ priv->pb = av_alloc_put_byte(priv->buffer, BIO_BUFFER_SIZE, 0, demuxer->stream, mp_read, NULL, mp_seek); - priv->pb->is_streamed = !demuxer->stream->end_pos; + priv->pb->is_streamed = !demuxer->stream->end_pos || (s->flags & STREAM_SEEK) != STREAM_SEEK; if(av_open_input_stream(&avfc, priv->pb, mp_filename, priv->avif, &ap)<0){ mp_msg(MSGT_HEADER,MSGL_ERR,"LAVF_header: av_open_input_stream() failed\n"); |