ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinha...@gmail.com> | Mon Apr 27 03:12:24 2020 +0200| [0aed3002ad3104489d0e378dc9893271d14e0e5b] | committer: Andreas Rheinhardt
avformat/matroskaenc: Make sure UIDs of delayed chapters are != 0 This has previously only been checked if the chapters were initially available, but not if they were only written in the trailer. Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@gmail.com> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0aed3002ad3104489d0e378dc9893271d14e0e5b --- libavformat/matroskaenc.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index c07aa4f7e4..cccfdb41b6 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -1437,6 +1437,12 @@ static int mkv_write_chapters(AVFormatContext *s) if (!s->nb_chapters || mkv->wrote_chapters) return 0; + for (i = 0; i < s->nb_chapters; i++) + if (!s->chapters[i]->id) { + mkv->chapter_id_offset = 1; + break; + } + mkv_add_seekhead_entry(mkv, MATROSKA_ID_CHAPTERS, avio_tell(pb)); ret = start_ebml_master_crc32(&dyn_cp, mkv); @@ -1863,12 +1869,6 @@ static int mkv_write_header(AVFormatContext *s) if (ret < 0) return ret; - for (i = 0; i < s->nb_chapters; i++) - if (!s->chapters[i]->id) { - mkv->chapter_id_offset = 1; - break; - } - ret = mkv_write_chapters(s); if (ret < 0) return ret; @@ -1879,6 +1879,7 @@ static int mkv_write_header(AVFormatContext *s) return ret; } + /* Must come after mkv_write_chapters() because of chapter_id_offset */ ret = mkv_write_tags(s); if (ret < 0) return ret; _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".