question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

DASH stream stalling and crashing on Samsung Tizen

See original GitHub issue

Have you read the FAQ and checked for duplicate open issues? Yes I found this thread which sounded similar https://github.com/google/shaka-player/issues/2620

What version of Shaka Player are you using? 3.0.4 (Update: also tested in v3.0.8 and v3.0.10)

Can you reproduce the issue with our latest release version? Yes

Can you reproduce the issue with the latest code from master? Yes (as of 12/10)

Are you using the demo app or your own custom app? Custom App

If custom app, can you reproduce the issue using our demo app? Yes. I tried loading the stream on the demo page in the Samsung Browser and it crashed the browser.

What browser and OS are you using? Tizen 4.0

For embedded devices (smart TVs, etc.), what model and firmware version are you using? 2018 Tizen TV Model: UN32N5300 Software Version: T-KTSNAKUC-1310.4

What are the manifest and license server URIs? https://content.jwplatform.com/manifests/4jFmgjZr.mpd

What did you do?

  • For the custom app:

    1. I created a page following: https://github.com/google/shaka-player/blob/master/docs/tutorials/basic-usage.md
    2. Passed https://content.jwplatform.com/manifests/4jFmgjZr.mpd as the manifestUri
    3. Started the app on the TV
    4. The video loaded and immediately stalled. After ~30 seconds, the app crashed.

    This is the log from the custom app

    setup.js:12 initApp
    shaka-player.compiled.debug.js:1458 IndexedDB.install
    shaka-player.compiled.debug.js:1458 InputEvent.install
    shaka-player.compiled.debug.js:1459 mathRound.install
    shaka-player.compiled.debug.js:1460 MediaSource.install
    shaka-player.compiled.debug.js:1562 VideoPlayPromise.install
    shaka-player.compiled.debug.js:1564 Using native VTTCue.
    shaka-player.compiled.debug.js:1636 EmeEncryptionSchemePolyfill: Waiting to detect encryptionScheme support.
    shaka-player.compiled.debug.js:1642 McEncryptionSchemePolyfill: MediaCapabilities not found
    shaka-player.compiled.debug.js:682 Starting attach...
    shaka-player.compiled.debug.js:687 Starting load of https://content.jwplatform.com/manifests/4jFmgjZr.mpd...
    shaka-player.compiled.debug.js:732 Found variant with audio and video content, so filtering out audio-only content.
    shaka-player.compiled.debug.js:406 codecs vp9-vorbis avg bandwidth 843696.8
    shaka-player.compiled.debug.js:549 init: completed initial Stream setup
    shaka-player.compiled.debug.js:716 No preferred audio language set.  We have chosen an arbitrary language initially
    setup.js:44 The video has now been loaded!
    shaka-player.compiled.debug.js:431 Calling switch_(), bandwidth=19798 kbps
    shaka-player.compiled.debug.js:800 switch_
    shaka-player.compiled.debug.js:501 Stall detected at 0.02 for 1.0480000972747803 seconds.
    shaka-player.compiled.debug.js:501 Pausing and unpausing to break stall.
    

    This is the more verbose log showing what was happening after the Pausing and unpausing to break stall before it crashed.

    shaka-player.compiled.debug.js:501 Pausing and unpausing to break stall.
    shaka-player.compiled.debug.js:578 (audio:6) timeNeeded=14.993
    shaka-player.compiled.debug.js:578 (audio:6) update_: presentationTime=0.02 bufferedAhead=14.952
    shaka-player.compiled.debug.js:579 (audio:6) buffering goal met
    shaka-player.compiled.debug.js:607 (audio:6) updating in 0.5 seconds
    shaka-player.compiled.debug.js:578 (video:5) timeNeeded=12
    shaka-player.compiled.debug.js:578 (video:5) update_: presentationTime=0.02 bufferedAhead=11.979000000000001
    shaka-player.compiled.debug.js:579 (video:5) buffering goal met
    shaka-player.compiled.debug.js:607 (video:5) updating in 0.5 seconds
    shaka-player.compiled.debug.js:578 (audio:6) timeNeeded=14.993
    shaka-player.compiled.debug.js:578 (audio:6) update_: presentationTime=0.02 bufferedAhead=14.952
    shaka-player.compiled.debug.js:579 (audio:6) buffering goal met
    shaka-player.compiled.debug.js:607 (audio:6) updating in 0.5 seconds
    shaka-player.compiled.debug.js:578 (video:5) timeNeeded=12
    shaka-player.compiled.debug.js:578 (video:5) update_: presentationTime=0.02 bufferedAhead=11.979000000000001
    shaka-player.compiled.debug.js:579 (video:5) buffering goal met
    shaka-player.compiled.debug.js:607 (video:5) updating in 0.5 seconds
    shaka-player.compiled.debug.js:578 (audio:6) timeNeeded=14.993
    shaka-player.compiled.debug.js:578 (audio:6) update_: presentationTime=0.02 bufferedAhead=14.952
    shaka-player.compiled.debug.js:579 (audio:6) buffering goal met
    shaka-player.compiled.debug.js:607 (audio:6) updating in 0.5 seconds
    shaka-player.compiled.debug.js:578 (video:5) timeNeeded=12
    shaka-player.compiled.debug.js:578 (video:5) update_: presentationTime=0.02 bufferedAhead=11.979000000000001
    shaka-player.compiled.debug.js:579 (video:5) buffering goal met
    shaka-player.compiled.debug.js:607 (video:5) updating in 0.5 seconds
    shaka-player.compiled.debug.js:578 (audio:6) timeNeeded=14.993
    
  • For the demo page:

    1. Added Custom Content
    2. Set https://content.jwplatform.com/manifests/4jFmgjZr.mpd as the Manifest URL
    3. Clicked Play
    4. The video loaded, but the page froze and then the browser crashed

I can play the stream in the shaka demo-player on my MacOS Desktop and also in the custom app through the Tizen Simulator, but it keeps failing for me on the TV.

What did you expect to happen? The DASH stream to play

What actually happened? The stream loads, stalls, and the app/browser crashes. Sometimes the first frame is shown.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:8 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
joeyparrishcommented, Oct 4, 2021

Since we could not reproduce the issue with the content from @mamaddox, I believe we should close this issue.

@Puritanic, please feel free to open a new issue.

Thanks, and we apologize for any inconvenience.

0reactions
darktasevskicommented, Aug 26, 2021

FYI, I’ve also tried playing with the default configuration instead of the one above, and the issue persists. After digging some more through issues, Sometimes, the content starts playing after some time, but I could not reproduce this consistently. Looks like the there is lot of calls to switch after the shaka player loads the content:


13:01:41.638 mathRound.install
13:01:41.642 MediaSource.install
13:01:41.645 Using native MSE as-is.
13:01:41.649 VideoPlayPromise.install
13:01:41.652 Using native VTTCue.
13:01:41.656 MediaCapabilities: install
13:01:41.659 MediaCapabilities: Native mediaCapabilities support found.
13:01:42.060 mathRound.install
13:01:42.073 MediaSource.install
13:01:42.076 Using native MSE as-is.
13:01:42.079 VideoPlayPromise.install
13:01:42.081 Using native VTTCue.
13:01:42.084 MediaCapabilities: install
13:01:42.087 MediaCapabilities: Native mediaCapabilities support found.
13:01:43.912 Starting attach...
13:01:45.306 Starting load of https://trailers.redbox.com/assets/212464/dash/212464.mpd...
13:01:45.433 Found variant with audio and video content, so filtering out audio-only content.
13:01:45.482 codecs avc1-mp4a avg bandwidth 8596000
13:01:45.543 init: completed initial Stream setup
13:01:45.567 After load:  https://trailers.redbox.com/assets/212464/dash/212464.mpd
13:01:52.201 Calling switch_(), bandwidth=1048 kbps
13:01:52.210 switch_
13:01:52.218 switch: switching to Stream (video:6)
13:01:52.233 switch: Stream (audio:8) already active
13:02:00.656 Calling switch_(), bandwidth=826 kbps
13:02:00.667 switch_
13:02:09.045 Calling switch_(), bandwidth=987 kbps
13:02:09.057 switch_
13:02:17.317 Calling switch_(), bandwidth=951 kbps
13:02:17.329 switch_
13:02:25.496 Calling switch_(), bandwidth=934 kbps
13:02:25.507 switch_
13:02:34.148 Calling switch_(), bandwidth=891 kbps
13:02:34.158 switch_
13:02:42.549 Calling switch_(), bandwidth=898 kbps
13:02:42.560 switch_
13:02:51.073 Calling switch_(), bandwidth=891 kbps
13:02:51.086 switch_
13:02:59.432 Calling switch_(), bandwidth=856 kbps
13:02:59.443 switch_
13:03:07.906 Calling switch_(), bandwidth=844 kbps
13:03:07.917 switch_
13:03:16.035 Calling switch_(), bandwidth=819 kbps
13:03:16.047 switch_
13:03:24.335 Calling switch_(), bandwidth=850 kbps
13:03:24.348 switch_
13:03:33.144 Calling switch_(), bandwidth=822 kbps
13:03:33.157 switch_
13:03:41.333 Calling switch_(), bandwidth=807 kbps
13:03:41.348 switch_
13:03:49.476 Calling switch_(), bandwidth=808 kbps
13:03:49.489 switch_
13:03:57.587 Calling switch_(), bandwidth=808 kbps
13:03:57.599 switch_
13:04:05.866 Calling switch_(), bandwidth=796 kbps
13:04:05.876 switch_
13:04:14.165 Calling switch_(), bandwidth=747 kbps
13:04:14.176 switch_
13:04:22.345 Calling switch_(), bandwidth=731 kbps
13:04:22.357 switch_
13:04:30.521 Calling switch_(), bandwidth=732 kbps
13:04:30.531 switch_
13:04:39.179 Calling switch_(), bandwidth=706 kbps
13:04:39.196 switch_
13:04:47.848 Calling switch_(), bandwidth=659 kbps
13:04:47.863 switch_
13:04:56.334 Calling switch_(), bandwidth=699 kbps
13:04:56.344 switch_
13:05:04.836 Calling switch_(), bandwidth=700 kbps
13:05:04.846 switch_
13:05:13.258 Calling switch_(), bandwidth=715 kbps
13:05:13.267 switch_
13:05:21.740 Calling switch_(), bandwidth=662 kbps
13:05:21.750 switch_
13:05:30.741 Calling switch_(), bandwidth=704 kbps
13:05:30.749 switch_
13:05:39.415 Calling switch_(), bandwidth=694 kbps
13:05:39.424 switch_
13:05:47.876 Calling switch_(), bandwidth=655 kbps
13:05:47.885 switch_
13:05:56.757 Calling switch_(), bandwidth=631 kbps
13:05:56.768 switch_
13:06:05.725 Calling switch_(), bandwidth=656 kbps
13:06:05.734 switch_
13:06:14.687 Calling switch_(), bandwidth=664 kbps
13:06:14.697 switch_
13:06:23.384 Calling switch_(), bandwidth=645 kbps
13:06:23.394 switch_
13:06:31.451 Calling switch_(), bandwidth=620 kbps
13:06:31.459 switch_
13:06:40.143 Calling switch_(), bandwidth=625 kbps
13:06:40.152 switch_
13:06:48.708 Calling switch_(), bandwidth=638 kbps
13:06:48.719 switch_
13:06:57.602 Calling switch_(), bandwidth=625 kbps
13:06:57.613 switch_
13:07:05.908 Calling switch_(), bandwidth=600 kbps
13:07:05.918 switch_
13:07:14.040 Calling switch_(), bandwidth=623 kbps
13:07:14.053 switch_
13:07:22.273 Calling switch_(), bandwidth=622 kbps
13:07:22.282 switch_
13:07:30.844 Calling switch_(), bandwidth=547 kbps
13:07:30.855 switch_
13:07:39.932 Calling switch_(), bandwidth=550 kbps
13:07:39.944 switch_
13:07:48.012 Calling switch_(), bandwidth=543 kbps
13:07:48.024 switch_
13:07:56.416 Calling switch_(), bandwidth=584 kbps
13:07:56.428 switch_
13:08:05.005 Calling switch_(), bandwidth=595 kbps
13:08:05.017 switch_
13:08:13.812 Calling switch_(), bandwidth=534 kbps
13:08:13.829 switch_
13:08:20.219 Jumping forward 0.033 seconds because of gap before start time of 0.033
13:08:21.137 (all): seeked: buffered seek: presentationTime=0.033
13:08:25.570 Jumping forward 0.033 seconds because of gap before start time of 0.033
13:08:25.596 (all): seeked: buffered seek: presentationTime=0.033
13:08:27.965 Calling switch_(), bandwidth=534 kbps
13:08:27.972 switch_

In the log above, the playback started after 6 minutes… Because of this, I would say that this is also related to #3076.

Read more comments on GitHub >

github_iconTop Results From Across the Web

DASH stream stalling and crashing on Samsung Tizen #3046
If custom app, can you reproduce the issue using our demo app? Yes. I tried loading the stream on the demo page in...
Read more >
Smart TV Apps Keep Crashing - Samsung Community
No information is available for this page.
Read more >
Smart TV: HTTP video stream hangs - Tizen Developers
I'm trying to make HTTP video stream play on Samsung Smart TV (Tizen platform). It starts playing, plays for 3-4 minutes, then begins...
Read more >
CHANGELOG | THEOplayer Documentation
Fixed an issue on Tizen 2 for use-cases where stalls or video looping could ... Fixed an issue where play-back of a DASH...
Read more >
How to Clear Cache on HBO Max to Fix Playback Issues
If you find that HBO Max is consistently misbehaving when you try to stream, and you've verified that your internet is working normally, ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found