diff options
author | David Schleef <ds@schleef.org> | 2009-02-06 16:16:05 -0800 |
---|---|---|
committer | David Schleef <ds@schleef.org> | 2009-02-06 16:21:58 -0800 |
commit | 40bd3772306e1b6942c11d0aa40c3c31b1444e17 (patch) | |
tree | ca6b589888c85ae3264521e7be31cfd339d7f54a /gst/qtdemux/qtdemux_dump.c | |
parent | db0b8755e00bbdeed3882ad0e891462ff8b3f9b6 (diff) |
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.
Diffstat (limited to 'gst/qtdemux/qtdemux_dump.c')
-rw-r--r-- | gst/qtdemux/qtdemux_dump.c | 19 |
1 files changed, 19 insertions, 0 deletions
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 @@ -233,6 +233,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) { int i; |