[FFmpeg-cvslog] Read channel layout atom in mov files.

Carl Eugen Hoyos git at videolan.org
Thu Apr 28 10:52:38 CEST 2011


ffmpeg | branch: master | Carl Eugen Hoyos <cehoyos at ag.or.at> | Thu Apr 28 10:47:40 2011 +0200| [2d8d6882a7316a49818778a953648b3770e8f604] | committer: Carl Eugen Hoyos

Read channel layout atom in mov files.

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

 libavformat/mov.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index a44182a..8bb3580 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -2180,6 +2180,15 @@ static int mov_read_elst(MOVContext *c, AVIOContext *pb, MOVAtom atom)
     return 0;
 }
 
+static int mov_read_chan(MOVContext *c, AVIOContext *pb, MOVAtom atom)
+{
+    if (atom.size < 16)
+        return AVERROR_INVALIDDATA;
+    avio_skip(pb, 4);
+    ff_mov_read_chan(c->fc, atom.size - 4, c->fc->streams[0]->codec);
+    return 0;
+}
+
 static const MOVParseTableEntry mov_default_parse_table[] = {
 { MKTAG('a','v','s','s'), mov_read_extradata },
 { MKTAG('c','h','p','l'), mov_read_chpl },
@@ -2233,6 +2242,7 @@ static const MOVParseTableEntry mov_default_parse_table[] = {
 { MKTAG('d','a','c','3'), mov_read_dac3 }, /* AC-3 info */
 { MKTAG('w','i','d','e'), mov_read_wide }, /* place holder */
 { MKTAG('c','m','o','v'), mov_read_cmov },
+{ MKTAG('c','h','a','n'), mov_read_chan },
 { 0, NULL }
 };
 



More information about the ffmpeg-cvslog mailing list