summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2007-07-16 12:11:36 +0000
committerWim Taymans <wim.taymans@gmail.com>2007-07-16 12:11:36 +0000
commit82d3eca90bd4d06d12d6bc022934efc02f4853f6 (patch)
treea6e4455eb1cc08c64f84ad8834514aa9e66078f1
parent682ecd9b672d0c4734e26b04c0dec7ec175813f9 (diff)
gst/qtdemux/qtdemux.c: Fix parsing of esds atoms inside mp4a atoms so that we can set correct codec_info for AAC audi...
Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_node): Fix parsing of esds atoms inside mp4a atoms so that we can set correct codec_info for AAC audio. Fixes #457097 along with a whole other bunch of qt/aac files.
-rw-r--r--ChangeLog7
-rw-r--r--gst/qtdemux/qtdemux.c5
2 files changed, 10 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 989a30a0..2d310c3d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-07-16 Wim Taymans <wim.taymans@gmail.com>
+
+ * gst/qtdemux/qtdemux.c: (qtdemux_parse_node):
+ Fix parsing of esds atoms inside mp4a atoms so that we can set correct
+ codec_info for AAC audio. Fixes #457097 along with a whole other bunch
+ of qt/aac files.
+
2007-07-16 Sebastian Dröge <slomo@circular-chaos.org>
* ext/wavpack/gstwavpackdec.c:
diff --git a/gst/qtdemux/qtdemux.c b/gst/qtdemux/qtdemux.c
index 0b4b7aa8..72a67d4d 100644
--- a/gst/qtdemux/qtdemux.c
+++ b/gst/qtdemux/qtdemux.c
@@ -1999,6 +1999,7 @@ qtdemux_parse_node (GstQTDemux * qtdemux, GNode * node, guint8 * buffer,
guint32 offset;
if (length < 20) {
+ /* small boxes are also inside wave inside the mp4a box */
GST_LOG_OBJECT (qtdemux, "skipping small mp4a box");
break;
}
@@ -2010,10 +2011,10 @@ qtdemux_parse_node (GstQTDemux * qtdemux, GNode * node, guint8 * buffer,
switch (version) {
case 0x00000000:
case 0x00010000:
- offset = 0x24;
+ offset = 0x34;
break;
case 0x00020000:
- offset = 0x48;
+ offset = 0x58;
break;
default:
GST_WARNING_OBJECT (qtdemux, "unhandled mp4a version 0x%08x",