demux->global_tags = NULL;
}
#ifdef TIZEN_FEATURE_TSDEMUX_LANG_TAG
+ if (demux->pending_custom_event) {
+ gst_event_unref (demux->pending_custom_event);
+ demux->pending_custom_event = NULL;
+ }
+
if (demux->pending_language_tag) {
gst_tag_list_unref (demux->pending_language_tag);
demux->pending_language_tag = NULL;
g_free (tag);
}
}
+
+ if (GST_EVENT_TYPE (event) == GST_EVENT_TAG) {
+ const GstStructure *st = gst_event_get_structure (event);
+ if (gst_structure_has_name (st, "GstHLSMedia")) {
+ if (demux->pending_custom_event)
+ gst_event_unref (demux->pending_custom_event);
+ demux->pending_custom_event = gst_event_ref (event);
+ }
+ }
#endif
gst_event_unref (event);
return early_ret;
gst_event_new_tag (gst_tag_list_ref (demux->global_tags)));
}
+#ifdef TIZEN_FEATURE_TSDEMUX_LANG_TAG
+ if (demux->pending_custom_event) {
+ GST_DEBUG_OBJECT (stream->pad, "Pushing custom event");
+ gst_pad_push_event (stream->pad, demux->pending_custom_event);
+ demux->pending_custom_event = NULL;
+ }
+#endif
+
/* Push pending tags */
if (stream->taglist) {
#ifdef TIZEN_FEATURE_TSDEMUX_LANG_TAG