dashdemux: Store box fourccs in the header at a central place
https://bugzilla.gnome.org/show_bug.cgi?id=741104
This commit is contained in:
parent
0b0a1a52d3
commit
c4ad30d6b4
@ -1835,8 +1835,8 @@ gst_dash_demux_parse_isobmff (GstAdaptiveDemux * demux,
|
|||||||
|
|
||||||
gst_buffer_unmap (buffer, &map);
|
gst_buffer_unmap (buffer, &map);
|
||||||
/* mdat? Push all we have and wait for it to be over */
|
/* mdat? Push all we have and wait for it to be over */
|
||||||
if (dash_stream->isobmff_parser.current_fourcc == GST_MAKE_FOURCC ('m', 'd',
|
if (dash_stream->isobmff_parser.current_fourcc == GST_ISOFF_FOURCC_MDAT
|
||||||
'a', 't') || dash_stream->isobmff_parser.current_size == -1) {
|
|| dash_stream->isobmff_parser.current_size == -1) {
|
||||||
/* Nothing here, we just go out */
|
/* Nothing here, we just go out */
|
||||||
GST_LOG_OBJECT (stream->pad,
|
GST_LOG_OBJECT (stream->pad,
|
||||||
"box %" GST_FOURCC_FORMAT " at offset %" G_GUINT64_FORMAT " size %"
|
"box %" GST_FOURCC_FORMAT " at offset %" G_GUINT64_FORMAT " size %"
|
||||||
|
@ -93,7 +93,7 @@ gst_isoff_parse_box_header (GstByteReader * reader, guint32 * type,
|
|||||||
*size = size_field;
|
*size = size_field;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (*type == GST_MAKE_FOURCC ('u', 'u', 'i', 'd')) {
|
if (*type == GST_ISOFF_FOURCC_UUID) {
|
||||||
if (gst_byte_reader_get_remaining (reader) < 16)
|
if (gst_byte_reader_get_remaining (reader) < 16)
|
||||||
goto not_enough_data;
|
goto not_enough_data;
|
||||||
|
|
||||||
|
@ -39,11 +39,10 @@ typedef enum {
|
|||||||
|
|
||||||
gboolean gst_isoff_parse_box_header (GstByteReader * reader, guint32 * type, guint8 extended_type[16], guint * header_size, guint64 * size);
|
gboolean gst_isoff_parse_box_header (GstByteReader * reader, guint32 * type, guint8 extended_type[16], guint * header_size, guint64 * size);
|
||||||
|
|
||||||
/* this is the minimum size, it can be larger if it
|
#define GST_ISOFF_FOURCC_UUID GST_MAKE_FOURCC('u','u','i','d')
|
||||||
* uses extended size or type */
|
#define GST_ISOFF_FOURCC_MDAT GST_MAKE_FOURCC('m','d','a','t')
|
||||||
#define GST_ISOFF_FULL_BOX_SIZE 12
|
|
||||||
|
|
||||||
#define GST_ISOFF_FOURCC_SIDX GST_MAKE_FOURCC('s','i','d','x')
|
#define GST_ISOFF_FOURCC_SIDX GST_MAKE_FOURCC('s','i','d','x')
|
||||||
|
|
||||||
typedef struct _GstSidxBoxEntry
|
typedef struct _GstSidxBoxEntry
|
||||||
{
|
{
|
||||||
gboolean ref_type;
|
gboolean ref_type;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user