diff options
Diffstat (limited to 'libmpdemux/demux_lavf.c')
-rw-r--r-- | libmpdemux/demux_lavf.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/libmpdemux/demux_lavf.c b/libmpdemux/demux_lavf.c index 82ca90f9fc..0be7679cd2 100644 --- a/libmpdemux/demux_lavf.c +++ b/libmpdemux/demux_lavf.c @@ -595,11 +595,13 @@ static demuxer_t *demux_open_lavf(demuxer_t *demuxer) } else av_strlcat(mp_filename, "foobar.dummy", sizeof(mp_filename)); - priv->pb = av_alloc_put_byte(priv->buffer, BIO_BUFFER_SIZE, 0, - demuxer, mp_read, NULL, mp_seek); - priv->pb->read_seek = mp_read_seek; - priv->pb->is_streamed = !demuxer->stream->end_pos || - (demuxer->stream->flags & MP_STREAM_SEEK) != MP_STREAM_SEEK; + if (!(priv->avif->flags & AVFMT_NOFILE)) { + priv->pb = av_alloc_put_byte(priv->buffer, BIO_BUFFER_SIZE, 0, + demuxer, mp_read, NULL, mp_seek); + priv->pb->read_seek = mp_read_seek; + priv->pb->is_streamed = !demuxer->stream->end_pos || + (demuxer->stream->flags & MP_STREAM_SEEK) != MP_STREAM_SEEK; + } if (av_open_input_stream(&avfc, priv->pb, mp_filename, priv->avif, &ap) < 0) { |