mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-06 08:09:56 +00:00
mxfdemux: Fix build on GLib < 2.16 some more
This commit is contained in:
parent
e1c71b1b88
commit
cf4485133b
2 changed files with 42 additions and 32 deletions
|
@ -496,6 +496,14 @@ set_resolve_state_none (gpointer key, gpointer value, gpointer user_data)
|
|||
MXFMetadataBase *m = (MXFMetadataBase *) value;
|
||||
m->resolved = MXF_METADATA_BASE_RESOLVE_STATE_NONE;
|
||||
}
|
||||
|
||||
static void
|
||||
build_values_in_hash_table (gpointer key, gpointer value, gpointer user_data)
|
||||
{
|
||||
GList **valuelist = (GList **) (user_data);
|
||||
|
||||
*valuelist = g_list_prepend (*valuelist, value);
|
||||
}
|
||||
#endif
|
||||
|
||||
static GstFlowReturn
|
||||
|
@ -505,7 +513,7 @@ gst_mxf_demux_resolve_references (GstMXFDemux * demux)
|
|||
#if GLIB_CHECK_VERSION (2, 16, 0)
|
||||
GHashTableIter iter;
|
||||
#else
|
||||
GList *l, *values;
|
||||
GList *l, *values = NULL;
|
||||
#endif
|
||||
MXFMetadataBase *m = NULL;
|
||||
GstStructure *structure;
|
||||
|
@ -532,6 +540,7 @@ gst_mxf_demux_resolve_references (GstMXFDemux * demux)
|
|||
while (g_hash_table_iter_next (&iter, NULL, (gpointer) & m)) {
|
||||
gboolean resolved;
|
||||
#else
|
||||
g_hash_table_foreach (demux->metadata, build_values_in_hash_table, &values);
|
||||
for (l = values; l; l = l->next) {
|
||||
gboolean resolved;
|
||||
|
||||
|
@ -641,11 +650,11 @@ gst_mxf_demux_choose_package (GstMXFDemux * demux)
|
|||
|
||||
for (i = 0; i < demux->preface->content_storage->n_packages; i++) {
|
||||
if (demux->preface->content_storage->packages[i] &&
|
||||
MXF_IS_METADATA_MATERIAL_PACKAGE (demux->preface->
|
||||
content_storage->packages[i])) {
|
||||
MXF_IS_METADATA_MATERIAL_PACKAGE (demux->preface->content_storage->
|
||||
packages[i])) {
|
||||
ret =
|
||||
MXF_METADATA_GENERIC_PACKAGE (demux->preface->
|
||||
content_storage->packages[i]);
|
||||
MXF_METADATA_GENERIC_PACKAGE (demux->preface->content_storage->
|
||||
packages[i]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -805,8 +814,8 @@ gst_mxf_demux_update_essence_tracks (GstMXFDemux * demux)
|
|||
essence_container);
|
||||
|
||||
if (track->parent.type == MXF_METADATA_TRACK_PICTURE_ESSENCE) {
|
||||
if (MXF_IS_METADATA_GENERIC_PICTURE_ESSENCE_DESCRIPTOR (track->
|
||||
parent.descriptor[0]))
|
||||
if (MXF_IS_METADATA_GENERIC_PICTURE_ESSENCE_DESCRIPTOR (track->parent.
|
||||
descriptor[0]))
|
||||
mxf_ul_to_string (&MXF_METADATA_GENERIC_PICTURE_ESSENCE_DESCRIPTOR
|
||||
(track->parent.descriptor[0])->picture_essence_coding,
|
||||
essence_compression);
|
||||
|
@ -815,8 +824,8 @@ gst_mxf_demux_update_essence_tracks (GstMXFDemux * demux)
|
|||
g_strdup_printf ("video/x-mxf-%s-%s", essence_container,
|
||||
essence_compression);
|
||||
} else if (track->parent.type == MXF_METADATA_TRACK_SOUND_ESSENCE) {
|
||||
if (MXF_IS_METADATA_GENERIC_SOUND_ESSENCE_DESCRIPTOR (track->
|
||||
parent.descriptor[0]))
|
||||
if (MXF_IS_METADATA_GENERIC_SOUND_ESSENCE_DESCRIPTOR (track->parent.
|
||||
descriptor[0]))
|
||||
mxf_ul_to_string (&MXF_METADATA_GENERIC_SOUND_ESSENCE_DESCRIPTOR
|
||||
(track->parent.descriptor[0])->sound_essence_compression,
|
||||
essence_compression);
|
||||
|
@ -825,8 +834,8 @@ gst_mxf_demux_update_essence_tracks (GstMXFDemux * demux)
|
|||
g_strdup_printf ("audio/x-mxf-%s-%s", essence_container,
|
||||
essence_compression);
|
||||
} else if (track->parent.type == MXF_METADATA_TRACK_DATA_ESSENCE) {
|
||||
if (MXF_IS_METADATA_GENERIC_DATA_ESSENCE_DESCRIPTOR (track->
|
||||
parent.descriptor[0]))
|
||||
if (MXF_IS_METADATA_GENERIC_DATA_ESSENCE_DESCRIPTOR (track->parent.
|
||||
descriptor[0]))
|
||||
mxf_ul_to_string (&MXF_METADATA_GENERIC_DATA_ESSENCE_DESCRIPTOR
|
||||
(track->parent.descriptor[0])->data_essence_coding,
|
||||
essence_compression);
|
||||
|
@ -1417,8 +1426,8 @@ gst_mxf_demux_pad_set_component (GstMXFDemux * demux, GstMXFDemuxPad * pad,
|
|||
pad->current_component_index);
|
||||
|
||||
pad->current_component =
|
||||
MXF_METADATA_SOURCE_CLIP (sequence->
|
||||
structural_components[pad->current_component_index]);
|
||||
MXF_METADATA_SOURCE_CLIP (sequence->structural_components[pad->
|
||||
current_component_index]);
|
||||
if (pad->current_component == NULL) {
|
||||
GST_ERROR_OBJECT (demux, "No such structural component");
|
||||
return GST_FLOW_ERROR;
|
||||
|
@ -1426,8 +1435,8 @@ gst_mxf_demux_pad_set_component (GstMXFDemux * demux, GstMXFDemuxPad * pad,
|
|||
|
||||
if (!pad->current_component->source_package
|
||||
|| !pad->current_component->source_package->top_level
|
||||
|| !MXF_METADATA_GENERIC_PACKAGE (pad->
|
||||
current_component->source_package)->tracks) {
|
||||
|| !MXF_METADATA_GENERIC_PACKAGE (pad->current_component->
|
||||
source_package)->tracks) {
|
||||
GST_ERROR_OBJECT (demux, "Invalid component");
|
||||
return GST_FLOW_ERROR;
|
||||
}
|
||||
|
@ -3002,8 +3011,8 @@ gst_mxf_demux_pad_set_last_stop (GstMXFDemux * demux, GstMXFDemuxPad * p,
|
|||
for (i = 0; i < p->material_track->parent.sequence->n_structural_components;
|
||||
i++) {
|
||||
clip =
|
||||
MXF_METADATA_SOURCE_CLIP (p->material_track->parent.
|
||||
sequence->structural_components[i]);
|
||||
MXF_METADATA_SOURCE_CLIP (p->material_track->parent.sequence->
|
||||
structural_components[i]);
|
||||
|
||||
if (clip->parent.duration <= 0)
|
||||
break;
|
||||
|
|
|
@ -64,8 +64,9 @@ mxf_metadata_base_resolve_default (MXFMetadataBase * self,
|
|||
|
||||
#if !GLIB_CHECK_VERSION (2, 16, 0)
|
||||
static void
|
||||
build_values_in_hash_table (gpointer key, gpointer value, GList ** valuelist)
|
||||
build_values_in_hash_table (gpointer key, gpointer value, gpointer user_data)
|
||||
{
|
||||
GList **valuelist = (GList **) (user_data);
|
||||
*valuelist = g_list_prepend (*valuelist, value);
|
||||
}
|
||||
#endif
|
||||
|
@ -1595,8 +1596,8 @@ mxf_metadata_material_package_resolve (MXFMetadataBase * m,
|
|||
MXFMetadataTimelineTrack *tmp;
|
||||
|
||||
if (!sc->source_package->parent.tracks[k] ||
|
||||
!MXF_IS_METADATA_TIMELINE_TRACK (sc->source_package->
|
||||
parent.tracks[k]))
|
||||
!MXF_IS_METADATA_TIMELINE_TRACK (sc->source_package->parent.
|
||||
tracks[k]))
|
||||
continue;
|
||||
|
||||
tmp =
|
||||
|
@ -3444,8 +3445,8 @@ mxf_metadata_generic_picture_essence_descriptor_handle_tag (MXFMetadataBase *
|
|||
default:
|
||||
ret =
|
||||
MXF_METADATA_BASE_CLASS
|
||||
(mxf_metadata_generic_picture_essence_descriptor_parent_class)->
|
||||
handle_tag (metadata, primer, tag, tag_data, tag_size);
|
||||
(mxf_metadata_generic_picture_essence_descriptor_parent_class)->handle_tag
|
||||
(metadata, primer, tag, tag_data, tag_size);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -3466,8 +3467,8 @@ mxf_metadata_generic_picture_essence_descriptor_to_structure (MXFMetadataBase *
|
|||
{
|
||||
GstStructure *ret =
|
||||
MXF_METADATA_BASE_CLASS
|
||||
(mxf_metadata_generic_picture_essence_descriptor_parent_class)->
|
||||
to_structure (m);
|
||||
(mxf_metadata_generic_picture_essence_descriptor_parent_class)->to_structure
|
||||
(m);
|
||||
MXFMetadataGenericPictureEssenceDescriptor *self =
|
||||
MXF_METADATA_GENERIC_PICTURE_ESSENCE_DESCRIPTOR (m);
|
||||
gchar str[48];
|
||||
|
@ -3710,8 +3711,8 @@ mxf_metadata_generic_sound_essence_descriptor_handle_tag (MXFMetadataBase *
|
|||
default:
|
||||
ret =
|
||||
MXF_METADATA_BASE_CLASS
|
||||
(mxf_metadata_generic_sound_essence_descriptor_parent_class)->
|
||||
handle_tag (metadata, primer, tag, tag_data, tag_size);
|
||||
(mxf_metadata_generic_sound_essence_descriptor_parent_class)->handle_tag
|
||||
(metadata, primer, tag, tag_data, tag_size);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -3894,8 +3895,8 @@ mxf_metadata_cdci_picture_essence_descriptor_handle_tag (MXFMetadataBase *
|
|||
default:
|
||||
ret =
|
||||
MXF_METADATA_BASE_CLASS
|
||||
(mxf_metadata_cdci_picture_essence_descriptor_parent_class)->
|
||||
handle_tag (metadata, primer, tag, tag_data, tag_size);
|
||||
(mxf_metadata_cdci_picture_essence_descriptor_parent_class)->handle_tag
|
||||
(metadata, primer, tag, tag_data, tag_size);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -4077,8 +4078,8 @@ mxf_metadata_rgba_picture_essence_descriptor_handle_tag (MXFMetadataBase *
|
|||
default:
|
||||
ret =
|
||||
MXF_METADATA_BASE_CLASS
|
||||
(mxf_metadata_rgba_picture_essence_descriptor_parent_class)->
|
||||
handle_tag (metadata, primer, tag, tag_data, tag_size);
|
||||
(mxf_metadata_rgba_picture_essence_descriptor_parent_class)->handle_tag
|
||||
(metadata, primer, tag, tag_data, tag_size);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -4190,8 +4191,8 @@ mxf_metadata_generic_data_essence_descriptor_handle_tag (MXFMetadataBase *
|
|||
default:
|
||||
ret =
|
||||
MXF_METADATA_BASE_CLASS
|
||||
(mxf_metadata_generic_data_essence_descriptor_parent_class)->
|
||||
handle_tag (metadata, primer, tag, tag_data, tag_size);
|
||||
(mxf_metadata_generic_data_essence_descriptor_parent_class)->handle_tag
|
||||
(metadata, primer, tag, tag_data, tag_size);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue