Skip to content
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

Player freezes for 2 seconds on starting to playback next manifest after the mpd refresh event reload #3639

Closed
Murmur opened this issue May 18, 2021 · 5 comments
Assignees
Labels
Milestone

Comments

@Murmur
Copy link

Murmur commented May 18, 2021

Nightly build and a test script.
https://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html
https://refapp.hbbtv.org/videos/multiperiod_test.php

This is a simplified live script, uses the vod segments, Period@start, SegmentTemplate@startNumber, SegmentTemplate@presentationTimeOffset values to control the global timeline.

Player freezes for 2 seconds on starting to playback next manifest after the mpd refresh event reload
This test mdp writes three <Period> on each manifest, each a total duration of 24s of 8s seg_1/_2_/_3.m4s segment files.
Last period has an out-of-band(=in manifest) EventStream schemeIdUri="urn:mpeg:dash:event:2012" value="1" reload event.

Periods use SupplementalProperty schemeIdUri="urn:mpeg:dash:period-connectivity:2015" link to the previous period as this is the same continuous main content, first period in a manifest does not have a link field.

Player is playing 24s3 periods fine but then switch to a new manifest will freeze player for 2 seconds. After a short freeze player runs 24s3 periods fine until same freeze again. So this test is looping the same three 8s*3 segments=24s over and over.

Ideas why player freezes when starting to playback the second refreshed manifest?

@dsilhavy
Copy link
Collaborator

dsilhavy commented Jun 8, 2021

@Murmur I get an error on the MPD reload attempt:

XHRLoader.js:90 GET https://refapp.hbbtv.org/videos/multiperiod_v3.php?firstperiod=67631822 500 (Internal Server Error)

@Murmur
Copy link
Author

Murmur commented Jun 9, 2021

My bad refactoring copypaste error but now fixed. Test manifest consist of three periods on each reply (3*24s, same clip from the start). Last period has an ´` reload scheduling.

Player freezes for few seconds when switching from the current(old) manifest to the new manifest. It does not freeze while playing periods within an active manifest snapshot.

https://refapp.hbbtv.org/videos/multiperiod_test.php
https://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html

@dsilhavy
Copy link
Collaborator

dsilhavy commented Jun 9, 2021

Thanks, can you please check if a762316 fixed your problem.

Change is available in nightly.

@Murmur
Copy link
Author

Murmur commented Jun 9, 2021

thx, latest nightly build does not freeze anymore on a manifest switch-over period. I am compiling a better and more complex test so can have more test data later.

@dsilhavy
Copy link
Collaborator

dsilhavy commented Jun 9, 2021

ok thx, will close this issue then. feel free to open another one if encounter any problems.

@dsilhavy dsilhavy closed this as completed Jun 9, 2021
@dsilhavy dsilhavy added this to the 4.0.0 milestone Jun 9, 2021
@dsilhavy dsilhavy self-assigned this Jun 9, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants