[FFmpeg-cvslog] avformat/matroskaenc: Add check for using explicit TrackNumber
Andreas Rheinhardt
git at videolan.org
Tue Apr 21 08:32:48 EEST 2020
ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at gmail.com> | Fri Nov 1 11:49:47 2019 +0100| [86de864741fdc046f353a82da526445db44c4287] | committer: Andreas Rheinhardt
avformat/matroskaenc: Add check for using explicit TrackNumber
When creating DASH streams, the TrackNumber is externally prescribed
and not derived from the number of streams in the AVFormatContext, so
if the number of tracks for a file using an explicit TrackNumber was
more than one, the resulting file would be broken (it would be impossible
to tell to which track a Block belongs if different tracks share the
same TrackNumber). So disallow this.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=86de864741fdc046f353a82da526445db44c4287
---
libavformat/matroskaenc.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index a65221e143..2cd5933da8 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -2650,6 +2650,9 @@ static int mkv_init(struct AVFormatContext *s)
track->track_num_size = ebml_num_size(track->track_num);
}
+ if (mkv->is_dash && nb_tracks != 1)
+ return AVERROR(EINVAL);
+
return 0;
}
More information about the ffmpeg-cvslog
mailing list