OSDN Git Service

movdec: Add support for the 'wfex' atom.
authorAlex Converse <alex.converse@gmail.com>
Mon, 6 Jun 2011 17:59:46 +0000 (10:59 -0700)
committerAlex Converse <alex.converse@gmail.com>
Thu, 9 Jun 2011 17:14:32 +0000 (10:14 -0700)
The 'wfex' is just a Microsoft WaveFormatEx struct.

libavformat/mov.c

index 245933d..4d3f4f6 100644 (file)
@@ -508,6 +508,19 @@ static int mov_read_dac3(MOVContext *c, AVIOContext *pb, MOVAtom atom)
     return 0;
 }
 
+static int mov_read_wfex(MOVContext *c, AVIOContext *pb, MOVAtom atom)
+{
+    AVStream *st;
+
+    if (c->fc->nb_streams < 1)
+        return 0;
+    st = c->fc->streams[c->fc->nb_streams-1];
+
+    ff_get_wav_header(pb, st->codec, atom.size);
+
+    return 0;
+}
+
 static int mov_read_pasp(MOVContext *c, AVIOContext *pb, MOVAtom atom)
 {
     const int num = avio_rb32(pb);
@@ -2247,6 +2260,7 @@ static const MOVParseTableEntry mov_default_parse_table[] = {
 { MKTAG('e','s','d','s'), mov_read_esds },
 { MKTAG('d','a','c','3'), mov_read_dac3 }, /* AC-3 info */
 { MKTAG('w','i','d','e'), mov_read_wide }, /* place holder */
+{ MKTAG('w','f','e','x'), mov_read_wfex },
 { MKTAG('c','m','o','v'), mov_read_cmov },
 { 0, NULL }
 };