-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DASH playback start position is wrong under SegmentTemplate number mode #8537
Comments
In nearly all cases where we've received reports similar to this one, the problem was that the media being played did not conform to the DASH specification. In any case, we need concrete reproduction steps to investigate this further. Please provide an accessible sample stream and reproduction steps for us to take a look. |
Our test live stream is difficult to push to the public network, I can only provide one MPD for reference. Here it is single period with non-zero value for start@Period. I also find one public dashif test streaming for testing,
|
@tonihei - The stream provided above works in 2.12, but not in 2.13. I think this must be related to changes made for low latency live streaming. I did a bit of digging and shared a possible fix for discussion. |
Thanks both! @happyong-ib Your initial investigation exactly pinpointed the problem, sorry for the delay in addressing this. We'll push a fix soon and release it as part of 2.13.1. |
The available end time was accidentally substracted by the start time of the last period. To avoid similar time reference confusion in the future, also renaming many variables and methods to clearly reflect the time reference point. And to avoid constant conversion, the processManifest method also attempts to converge to time relative to the start of the window as quickly as possible. Issue: #8537 PiperOrigin-RevId: 357001624
The available end time was accidentally substracted by the start time of the last period. To avoid similar time reference confusion in the future, also renaming many variables and methods to clearly reflect the time reference point. And to avoid constant conversion, the processManifest method also attempts to converge to time relative to the start of the window as quickly as possible. Issue: #8537 PiperOrigin-RevId: 357001624
Under Dash number mode, the playback starts from the begin of window, seems the suggestedPresentationDelay of manifest does not apply.
I use the dev-v2 branch 724ded1 (2021-01-26).
I also debug the code, please check the following code in DashMediaSource.java line 917,
long liveStreamEndPositionInLastPeriodUs = currentEndTimeUs - C.msToUs(lastPeriod.startMs);
Here the currentEndTimeUs refers to the period-relative endTimeUs, it shouldn't subtract the period.startMs.
The text was updated successfully, but these errors were encountered: