GNOME Bugzilla – Bug 760837
dash, mpdparser: Implement the flow to check invalid adaption sets or representations according to ISO/IEC 23009-1 : section 8.3
Last modified: 2018-11-03 13:45:24 UTC
Created attachment 319348 [details] [review] patch to fix the issue According to ISO/IEC 23009-1 : section 8.3, there are several checks should be executed to filter out the adaption sets or representations which are not in correct form. For example, if it is a ISO BASE media file format On Demand profile with URN ="urn:mpeg:dash:profile:isoff-on-demand:2011" & AdaptationSet@subsegmentAlignment does not present,the adaption set should be ignored. However, current MPD parser does not fully comply with this rule. Hence when I played the MPD as attached TestSuit.mpd, the playback will stuck by requesting an invalid URL link. In the attached patch it tries to implement the flow to check the claimed rules within ISO/IEC 23009-1 : section 8.3.
Created attachment 319350 [details] The issued MPD whose video adaption set should be ignored but not so The issued MPD whose video adaption set should be ignored but not so. As the result, the playback fails.
Review of attachment 319348 [details] [review]: Please provide a test for this also ::: ext/dash/gstmpdparser.c @@ +1853,3 @@ gchar *actuate; + gboolean has_subsegmentAlignment = FALSE; + gboolean has_subsegmentStartsWithSAP = FALSE; And run gst-indent over your code to fix indentation @@ +1972,3 @@ } + if (0 == g_list_length (new_adap_set->Representations)) { This is O(n), better would be to just check if ->Representations == NULL @@ +2121,3 @@ } + if (0 == g_list_length (new_period->AdaptationSets)) { And here
As far as I can tell the spec says "may be ignored". Why should which adaptation sets or representations be ignored here?
Dear Tim: Thanks a lot for your reply after a long time it is still reached. I do not work for GStreamer DASH plugin anymore. For the question, I would like to say as I remembered, it is an official verification items. Many vendors purchase commercial verification tools since they provide complete sanity check. As I remembered, it is one of it. Sure. we can ignore it; not hurt much but for me, as an user who hope GStreamer better I report it. Please close it if you think it is minor. Thank you!
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/342.