hdsenc: Clear the previous codec tag when setting up the chained muxer
authorMartin Storsjö <martin@martin.st>
Tue, 18 Nov 2014 12:28:50 +0000 (14:28 +0200)
committerMartin Storsjö <martin@martin.st>
Wed, 19 Nov 2014 11:37:00 +0000 (13:37 +0200)
The chained flv muxer wants one set of tags - normally this set
could be signaled via the AVOutputFormat codec_tag field (as
smoothstreamingenc and dashenc do). hdsenc doesn't signal it, since
the FLV codec tag arrays aren't exported from flvenc.c. This can
lead to the caller keeping an original codec tag from the originating
container here, which would then be a mismatch for the FLV muxer.
Since we don't really care about what codec tag the caller might
have set, just clear it and let the lavf muxer layer set the right
one for the chained FLV muxer later instead.

Signed-off-by: Martin Storsjö <martin@martin.st>
libavformat/hdsenc.c

index 012de60..d96a3d5 100644 (file)
@@ -395,6 +395,7 @@ static int hds_write_header(AVFormatContext *s)
             goto fail;
         }
         avcodec_copy_context(st->codec, s->streams[i]->codec);
+        st->codec->codec_tag = 0;
         st->sample_aspect_ratio = s->streams[i]->sample_aspect_ratio;
         st->time_base = s->streams[i]->time_base;
     }