summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libmpdemux/demux_lavf.c12
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) {