Closed technogeek00 closed 1 year ago
How about defining a pseudo messagedata for Ended Media Presentation, e.g. ///&&##!!!DashMediaPresentationIsEndedAtTheStartofThisEvent!!##&&// ?
@dsilhavy Does dash.js handles the case of presentation_time_delta = event_duration=0?
Questions during the DASH-IF's Event TF 9/2:
Suggest deprecating this specific feature?
DASH-IF's Event Task force call 11/11/2022:
MPEG's response to DASH-IF's liaison:
Regarding the question about the event duration in the MPD expiration validity event, we included
further clarification in the 5th edition AMD2 Working Draft, discouraging the use of event duration to update the media presentation duration.
Then we do not need to do any special treatment of the event duration, in this case, the DASH-IF client and the application ignore the event duration and we can close the issue.
Check the rest of IOP V5 to make sure that the reset of V5 is consistent in terms of media presentation duration update -> Live TF should clarify.
@irajs @haudiobe : I got an action in the last IOP Call:
Regarding the question about the event duration in the MPD expiration validity event, we included further clarification in the 5th edition AMD2 Working Draft, discouraging the use of event duration to update the media presentation duration. => Daniel please check
I am not completely sure what to look for but this is what we support in dash.js at this point in terms of DASH-specific events:
We handle urn:mpeg:dash:event:2012
with value 1
. Values 2
for MPD Patch and 3
for the complete MPD are not supported
We update the duration
according to:
if (event.calculatedPresentationTime == 0xFFFFFFFF) {//0xFF... means remaining duration unknown
newDuration = NaN;
} else {
newDuration = event.calculatedPresentationTime + event.duration;
}
event.calculatedPresentationTime
is defined as:
For version 0 events: calculatedPresentationTime = periodStart + mediaStartTime - presentationTimeOffset + presentationTimeDelta;
For version 1 events: calculatedPresentationTime = periodStart - presentationTimeOffset + presentationTimeDelta
I assume this needs to be removed based on what was defined in AMD2?
There is a special case called out for MPD Expiration events:
How is this event exposed via our model since version 0 vs 1 message boxes are not exposed? This might logically expose as
presentation_time
equal to the containing segment start time andevent_duration
of zero, but that same value set could also be aemsg
type 1 withpresentation_time
equal to the segment start time and a zeroevent_duration