summaryrefslogtreecommitdiffstats
path: root/gst/qtdemux/qtdemux_dump.c
diff options
context:
space:
mode:
authorEdward Hervey <bilboed@bilboed.com>2007-03-28 15:17:27 +0000
committerEdward Hervey <bilboed@bilboed.com>2007-03-28 15:17:27 +0000
commit365437cbc0a210a71756528331c5b3b6fd667813 (patch)
tree5a3d79e0c4bd47a4fca4379bbd8730ba7e9544d6 /gst/qtdemux/qtdemux_dump.c
parent51ef42dd966c7574daf56034902054390727db49 (diff)
downloadgst-plugins-bad-365437cbc0a210a71756528331c5b3b6fd667813.tar.gz
gst-plugins-bad-365437cbc0a210a71756528331c5b3b6fd667813.tar.bz2
gst-plugins-bad-365437cbc0a210a71756528331c5b3b6fd667813.zip
gst/qtdemux/: Process 'ctts' atoms, which are present in AVC ISO files (.mov files with h264 video).
Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_prepare_current_sample), (gst_qtdemux_chain), (qtdemux_parse_samples): * gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_ctts): * gst/qtdemux/qtdemux_dump.h: * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: Process 'ctts' atoms, which are present in AVC ISO files (.mov files with h264 video). Use the offset present in 'ctts' to calculate the PTS for each packet and set the PTS on outgoing buffers. Fixes #423283
Diffstat (limited to 'gst/qtdemux/qtdemux_dump.c')
-rw-r--r--gst/qtdemux/qtdemux_dump.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/gst/qtdemux/qtdemux_dump.c b/gst/qtdemux/qtdemux_dump.c
index 561b20d0..357a5b15 100644
--- a/gst/qtdemux/qtdemux_dump.c
+++ b/gst/qtdemux/qtdemux_dump.c
@@ -298,6 +298,26 @@ qtdemux_dump_stco (GstQTDemux * qtdemux, guint8 * buffer, int depth)
}
void
+qtdemux_dump_ctts (GstQTDemux * qtdemux, guint8 * buffer, int depth)
+{
+ int i;
+ int n;
+ int offset;
+
+ GST_LOG ("%*s version/flags: %08x", depth, "", QT_UINT32 (buffer + 8));
+ n = QT_UINT32 (buffer + 12);
+ GST_LOG ("%*s n entries: %d", depth, "", n);
+ offset = 16;
+ for (i = 0; i < n; i++) {
+ GST_LOG ("%*s sample count :%8d offset: %8d",
+ depth, "", QT_UINT32 (buffer + offset),
+ QT_UINT32 (buffer + offset + 4));
+
+ offset += 8;
+ }
+}
+
+void
qtdemux_dump_co64 (GstQTDemux * qtdemux, guint8 * buffer, int depth)
{
//int i;