/* caller verifies at least 8 bytes in buf */
static void
-extract_initial_length_and_fourcc (const guint8 * data, guint size,
+extract_initial_length_and_fourcc (const guint8 * data, gsize size,
guint64 * plength, guint32 * pfourcc)
{
guint64 length;
GST_ELEMENT_ERROR (qtdemux, STREAM, DEMUX,
(_("This file is incomplete and cannot be played.")),
("We got less than expected (received %" G_GSIZE_FORMAT
- ", wanted %u, offset %" G_GUINT64_FORMAT ")", map.size,
- (guint) length, cur_offset));
+ ", wanted %" G_GUINT64_FORMAT ", offset %" G_GUINT64_FORMAT ")",
+ map.size, length, cur_offset));
gst_buffer_unmap (moov, &map);
gst_buffer_unref (moov);
ret = GST_FLOW_ERROR;
"stream-format", G_TYPE_STRING, "avc3",
"alignment", G_TYPE_STRING, "au", NULL);
break;
+ case FOURCC_ai12:
+ case FOURCC_ai13:
+ case FOURCC_ai15:
+ case FOURCC_ai16:
+ case FOURCC_ai1p:
+ case FOURCC_ai1q:
+ case FOURCC_ai52:
+ case FOURCC_ai53:
+ case FOURCC_ai55:
+ case FOURCC_ai56:
+ case FOURCC_ai5p:
+ case FOURCC_ai5q:
+ _codec ("H.264 / AVC");
+ caps = gst_caps_new_simple ("video/x-h264",
+ "stream-format", G_TYPE_STRING, "byte-stream",
+ "alignment", G_TYPE_STRING, "au", NULL);
+ break;
case FOURCC_H265:
case FOURCC_hvc1:
case FOURCC_dvh1:
case FOURCC_av01:
_codec ("AV1");
caps = gst_caps_new_simple ("video/x-av1",
+ "stream-format", G_TYPE_STRING, "obu-stream",
"alignment", G_TYPE_STRING, "tu", NULL);
break;
case GST_MAKE_FOURCC ('k', 'p', 'c', 'd'):