aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2019-12-20 19:26:00 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-06-27 23:17:07 +0200
commit76a413d961f793e9c9cec482b06df615a0dc694d (patch)
treeeb9c0e7f1a50b105c8c73d4fd2cc1202883f8b76
parentb6fbbe08c325415cc784df296058beb6604f0b9c (diff)
downloadffmpeg-76a413d961f793e9c9cec482b06df615a0dc694d.tar.gz
avformat/smoothstreaming: Don't write trailer of subcontext
Nothing written in avformat_write_trailer() for the submuxers will be output anyway because the AVIOContexts used for actual output have been closed before the call. Writing the trailer of the subcontext has probably only been done in order to free the memory allocated by the submuxer. And this job has been taken over by the deinit functions. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-rw-r--r--libavformat/smoothstreamingenc.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/libavformat/smoothstreamingenc.c b/libavformat/smoothstreamingenc.c
index eefc61d08b..6599687681 100644
--- a/libavformat/smoothstreamingenc.c
+++ b/libavformat/smoothstreamingenc.c
@@ -49,7 +49,6 @@ typedef struct Fragment {
typedef struct OutputStream {
AVFormatContext *ctx;
- int ctx_inited;
char dirname[1024];
uint8_t iobuf[32768];
URLContext *out; // Current output stream where all output is written
@@ -173,8 +172,6 @@ static void ism_free(AVFormatContext *s)
ffurl_closep(&os->out);
ffurl_closep(&os->out2);
ffurl_closep(&os->tail_out);
- if (os->ctx && os->ctx_inited)
- av_write_trailer(os->ctx);
if (os->ctx && os->ctx->pb)
avio_context_free(&os->ctx->pb);
avformat_free_context(os->ctx);
@@ -357,7 +354,6 @@ static int ism_write_header(AVFormatContext *s)
if (ret < 0) {
goto fail;
}
- os->ctx_inited = 1;
avio_flush(ctx->pb);
s->streams[i]->time_base = st->time_base;
if (st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO) {