[FFmpeg-cvslog] lavf/movenc: Write total number of tracks as part of metadata.

Carl Eugen Hoyos git at videolan.org
Thu Aug 1 19:23:00 CEST 2013


ffmpeg | branch: master | Carl Eugen Hoyos <cehoyos at ag.or.at> | Thu Aug  1 16:20:58 2013 +0200| [bb7f71d9b6aedf8e83061e326f09843fd21fcbce] | committer: Carl Eugen Hoyos

lavf/movenc: Write total number of tracks as part of metadata.

Fixes ticket #2157.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=bb7f71d9b6aedf8e83061e326f09843fd21fcbce
---

 libavformat/movenc.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 42ec3f2..e9f5b47 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -2022,6 +2022,10 @@ static int mov_write_trkn_tag(AVIOContext *pb, MOVMuxContext *mov,
     AVDictionaryEntry *t = av_dict_get(s->metadata, "track", NULL, 0);
     int size = 0, track = t ? atoi(t->value) : 0;
     if (track) {
+        int tracks = 0;
+        char *slash = strchr(t->value, '/');
+        if (slash)
+            tracks = atoi(slash + 1);
         avio_wb32(pb, 32); /* size */
         ffio_wfourcc(pb, "trkn");
         avio_wb32(pb, 24); /* size */
@@ -2030,7 +2034,7 @@ static int mov_write_trkn_tag(AVIOContext *pb, MOVMuxContext *mov,
         avio_wb32(pb, 0);
         avio_wb16(pb, 0);        // empty
         avio_wb16(pb, track);    // track number
-        avio_wb16(pb, 0);        // total track number
+        avio_wb16(pb, tracks);   // total track number
         avio_wb16(pb, 0);        // empty
         size = 32;
     }



More information about the ffmpeg-cvslog mailing list