From 40bd3772306e1b6942c11d0aa40c3c31b1444e17 Mon Sep 17 00:00:00 2001 From: David Schleef Date: Fri, 6 Feb 2009 16:16:05 -0800 Subject: qtdemux: Add handling for stps atoms stps atoms contain "partial sync" information, which means that it's a sync point where pts != dts. This is needed to properly handle MPEG2, H.264, Dirac, etc., in quicktime. --- gst/qtdemux/qtdemux_dump.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gst/qtdemux/qtdemux_dump.c') diff --git a/gst/qtdemux/qtdemux_dump.c b/gst/qtdemux/qtdemux_dump.c index 391d67a0..506a3f7e 100644 --- a/gst/qtdemux/qtdemux_dump.c +++ b/gst/qtdemux/qtdemux_dump.c @@ -232,6 +232,25 @@ qtdemux_dump_stts (GstQTDemux * qtdemux, guint8 * buffer, int depth) } } +void +qtdemux_dump_stps (GstQTDemux * qtdemux, guint8 * buffer, int depth) +{ + int i; + int n; + int offset; + + GST_LOG ("%*s version/flags: %08x", depth, "", QT_UINT32 (buffer + 8)); + GST_LOG ("%*s n entries: %d", depth, "", QT_UINT32 (buffer + 12)); + n = QT_UINT32 (buffer + 12); + offset = 16; + for (i = 0; i < n; i++) { + GST_LOG ("%*s sample: %u", depth, "", + QT_UINT32 (buffer + offset)); + + offset += 4; + } +} + void qtdemux_dump_stss (GstQTDemux * qtdemux, guint8 * buffer, int depth) { -- cgit