dashdemux: read language from ContentComponent node as a fallback

If the language is not specified in the AdaptationSet, use the ContentComponent
node to get it. We only get it if there is only a single ContentComponent as
it doesn't seem clear on what to do if there are multiple entries

https://bugzilla.gnome.org/show_bug.cgi?id=732237
This commit is contained in:
Thiago Santos 2014-08-19 16:01:58 -03:00
parent 82fdb3aefc
commit 4afa05e567

View file

@ -753,7 +753,14 @@ gst_dash_demux_setup_all_streams (GstDashDemux * demux)
gst_pad_push_event (stream->pad, gst_event_new_caps (caps));
if (active_stream->cur_adapt_set) {
lang = active_stream->cur_adapt_set->lang;
GstAdaptationSetNode *adp_set = active_stream->cur_adapt_set;
lang = adp_set->lang;
/* Fallback to the language in ContentComponent node */
if (lang == NULL && g_list_length (adp_set->ContentComponents) == 1) {
GstContentComponentNode *cc_node = adp_set->ContentComponents->data;
lang = cc_node->lang;
}
}
if (lang) {