After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 764728 - dashdemux: apply suggestedPresentationDelay to seek and seek range
dashdemux: apply suggestedPresentationDelay to seek and seek range
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-04-07 13:33 UTC by Wojciech Przybyl
Modified: 2018-11-03 13:48 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
fix (4.98 KB, patch)
2016-04-07 13:35 UTC, Wojciech Przybyl
none Details | Review
Updated patch (3.96 KB, patch)
2016-04-15 09:02 UTC, Wojciech Przybyl
none Details | Review

Description Wojciech Przybyl 2016-04-07 13:33:40 UTC
When seeking or querying a range of seek on a live stream,
suggestedPresentationDelay has to be taken into account. Currently
it is only used in streams setup. As a result seeking to live position
discards suggestedPresentationDelay and seeks to earlier time than allowed.
Comment 1 Wojciech Przybyl 2016-04-07 13:35:06 UTC
Created attachment 325538 [details] [review]
fix

This change provides checking suggestedPresentationDelay during streams
setup, seek and seek range query for live streams.
Comment 2 A Ashley 2016-04-07 16:15:35 UTC
Changing gst_dash_demux_get_server_now_utc() to apply suggestedPresentationDelay will change the segment numbers that dashdemux requests. I think this is not a good idea.

The DASH standard does not mandate that suggestedPresentationDelay has to be taken into account in the calculation of available segments.

To quote the DASH specification:

5.3.9.5.3 Media Segment information
For services with MPD@type='dynamic', the Segment availability start time of a Media Segment is the sum of
- the value of the MPD@availabilityStartTime,
- the PeriodStart time of the containing Period as defined in 5.3.2.1,
- the MPD start time of the Media Segment, and
- the MPD duration of the Media Segment.

The Segment availability end time of a Media Segment is the sum of the Segment availability start time, the MPD duration of the Media Segment and the value of the attribute @timeShiftBufferDepth for this Representation.
Comment 3 Wojciech Przybyl 2016-04-15 09:02:43 UTC
Created attachment 326074 [details] [review]
Updated patch

Updated patch:
- Removed clamping when seeking.
- Applying suggestedPresentationDelay only to the end of the seek range.
- Fixed time conversions.
Comment 4 GStreamer system administrator 2018-11-03 13:48:32 UTC
-- 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/366.