summaryrefslogtreecommitdiff
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)
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 2cbe5c56af..c881f31e94 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;