summaryrefslogtreecommitdiffstats
path: root/libavformat/fifo.c
diff options
context:
space:
mode:
authorJan Sebechlebsky <sebechlebskyjan@gmail.com>2017-07-03 23:45:42 +0200
committerJan Sebechlebsky <sebechlebskyjan@gmail.com>2017-07-19 10:08:19 +0200
commit5c9dcd5c484f56fb9fb5d277256439f0becce12c (patch)
treef128d0eb074b543c53e00de3adf91383d1e6128b /libavformat/fifo.c
parent012620aa1b40b0642e3081871059a1be98411df4 (diff)
downloadffmpeg-streaming-5c9dcd5c484f56fb9fb5d277256439f0becce12c.zip
ffmpeg-streaming-5c9dcd5c484f56fb9fb5d277256439f0becce12c.tar.gz
libavformat/fifo: Fix initialization of underlying AVFormatContext
Muxers may want to directly access filename in stored in AVFormatContext. For example in case of RTSP, the filename (url) is used by the muxer to extract parameters of the connection. These muxers will fail when used with fifo pseudo-muxer. This commit fixes this issue by passing filename from AVFormatContext of fifo pseudo-muxer to all AVFormatContext(s) of underlying muxers during initialization. Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com>
Diffstat (limited to 'libavformat/fifo.c')
-rw-r--r--libavformat/fifo.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libavformat/fifo.c b/libavformat/fifo.c
index 2cbe5c5..c881f31 100644
--- a/libavformat/fifo.c
+++ b/libavformat/fifo.c
@@ -442,13 +442,14 @@ static void *fifo_consumer_thread(void *data)
return NULL;
}
-static int fifo_mux_init(AVFormatContext *avf, AVOutputFormat *oformat)
+static int fifo_mux_init(AVFormatContext *avf, AVOutputFormat *oformat,
+ const char *filename)
{
FifoContext *fifo = avf->priv_data;
AVFormatContext *avf2;
int ret = 0, i;
- ret = avformat_alloc_output_context2(&avf2, oformat, NULL, NULL);
+ ret = avformat_alloc_output_context2(&avf2, oformat, NULL, filename);
if (ret < 0)
return ret;
@@ -505,7 +506,7 @@ static int fifo_init(AVFormatContext *avf)
return ret;
}
- ret = fifo_mux_init(avf, oformat);
+ ret = fifo_mux_init(avf, oformat, avf->filename);
if (ret < 0)
return ret;
OpenPOWER on IntegriCloud