dashdemux: only one SegmentList element is supported
Submitted by Florin Apostol
Link to original bug (#752229)
Description
The standard specifies that "The Segment list is defined by one or more SegmentList elements".
But the implementation supports only 1 element. The SegmentList member of _GstRepresentationNode, _GstAdaptationSetNode, _GstPeriodNode is a pointer to GstSegmentListNode, instead of a list. So, these elements support only 1 instance of SegmentList element. When a second one is detected, the gst_mpdparser_parse_segment_list_node function will free the previous one:
gst_mpdparser_parse_segment_list_node (GstSegmentListNode ** pointer,
....
gst_mpdparser_free_segment_list_node (*pointer);
*pointer = new_segment_list = g_slice_new0 (GstSegmentListNode);