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

Video freezing when switching quality #5653

Open
5 tasks done
Sasha9393 opened this issue Jul 13, 2023 · 6 comments
Open
5 tasks done

Video freezing when switching quality #5653

Sasha9393 opened this issue Jul 13, 2023 · 6 comments

Comments

@Sasha9393
Copy link

What version of Hls.js are you using?

v1.4.7

What browser (including version) are you using?

Chrome 114 (114.0.5735.130/.131)

What OS (including version) are you using?

Samsung S23 Ultra or Samsung S22 Ultra

Test stream

https://nvms14.cdn.privatehost.com/hls/contents/videos/75000/75624/75624,.mp4,_360p.mp4,_720p.mp4,?&lra=5000k&c=9&exp_time=1689248297&sign=33930a4fce1ac6060e4930ba28671884

Configuration

{
  "debug": true,
  "enableWorker": true,
  "lowLatencyMode": true,
  "backBufferLength": 90
}

Additional player setup steps

No response

Checklist

Steps to reproduce

  1. on the demo https://hlsjs.video-dev.org/demo/
  2. start the video
  3. switch to 360p quality

Expected behaviour

toggle quality and the video plays on

What actually happened?

the video stops. The player shows that it is trying to play the video but cannot

Console output

31.165 | Media element detached
31.173 | Loading https://nvms14.cdn.privatehost.com/hls/contents/videos/75000/75624/75624,.mp4,_360p.mp4,_720p.mp4,?&lra=5000k&c=9&exp_time=1689248297&sign=33930a4fce1ac6060e4930ba28671884
31.198 | Loading manifest and attaching video element...
31.269 | Media element attached
31.418 | 3 quality levels found
31.419 | Manifest successfully loaded, trying to recover media error.
37.436 | Media element detached
37.444 | The video playback was aborted due to a corruption problem or because the video used features your browser did not support - PIPELINE_ERROR_DECODE: video decoder reinitialization failed
37.535 | Media element attached, trying to recover media error.
49.727 | Media element detached
49.738 | The video playback was aborted due to a corruption problem or because the video used features your browser did not support - PIPELINE_ERROR_DECODE: video decode error!
49.84 | Media element attached, trying to recover media error.
57.242 | Media element detached
57.248 | The video playback was aborted due to a corruption problem or because the video used features your browser did not support - PIPELINE_ERROR_DECODE: video decoder reinitialization failed
57.338 | Media element attached

Chrome media internals output

No response

@Sasha9393 Sasha9393 added Bug Needs Triage If there is a suspected stream issue, apply this label to triage if it is something we should fix. labels Jul 13, 2023
@Sasha9393
Copy link
Author

@robwalch
Copy link
Collaborator

Hi @Sasha9393,

Thanks for the updated example. Have tried playing it using the latest version v1.4.9?

#5632 is a good example of a media decode error that was isolated to a particular segment, and the remuxed output. For this it sounds specific to Samsung mobile devices. Isolating the issue to a specific variant and segment or set of these would be very helpful. If it only happens when level switching then perhaps it could also be reproduced with a discontinuity from one resolution to another in a single playlist. As I am not able to reproduce it on a desktop device, I recommend reporting the issue to Samsung.

@Sasha9393
Copy link
Author

Sasha9393 commented Jul 19, 2023

Yes I tried v1.4.9.
The error remains. Here is my log

[log] > destroy
[log] > detachMedia
[log] > [buffer-controller]: media source detaching
[log] > [stream-controller]: IDLE->STOPPED
[log] > [subtitle-stream-controller]: IDLE->STOPPED
hls-demo.js:24434 Using Hls.js config: {debug: true, enableWorker: true, lowLatencyMode: true, backBufferLength: 90}
[log] > Debug logs enabled for "Hls instance" in hls.js version 1.4.9
[log] > stopLoad
[log] > loadSource:https://nvms14.cdn.privatehost.com/hls/contents/videos/75000/75624/75624,_720p.mp4,.mp4,_360p.mp4,?&lra=5000k&c=9&sign=3466ed2b873e7f431ad38d486c72dd99
[log] > [stream-controller]: Trigger BUFFER_RESET
[log] > attachMedia
[log] > [buffer-controller]: Media source opened
[log] > [subtitle-stream-controller]: STOPPED->IDLE
[log] > [level-controller]: manifest loaded, 3 level(s) found, first bitrate: 2562826
[log] > 1 bufferCodec event(s) expected
[log] > startLoad(-1)
[log] > [level-controller]: Switching to level 2 from level -1
[log] > [level-controller]: Loading level index 2 with URI 1/1 https://nvms14.cdn.privatehost.com/media/nvme2/e28f20ce-41a5-5b31-a748-37281229e846/75624_720p.mp4/index-v1-a1.m3u8?&c=9&lra=5000k&sign=4146025e49139fd0dc9a9b4f72099be7
[log] > [stream-controller]: STOPPED->IDLE
[log] > [subtitle-stream-controller]: IDLE->STOPPED
[log] > [subtitle-stream-controller]: STOPPED->IDLE
[log] > [stream-controller]: Level 2 loaded [1,64][part-64--1], cc [0, 0] duration:315.36
[log] > [buffer-controller]: Updating Media Source duration to 315.360
[log] > [stream-controller]: Loading fragment 1 cc: 0 of [1-64] level: 2, target: 0
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > injecting Web Worker for "main"
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 1 p: -1 level: 2 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 0
        initSegmentChange: true
[log] > [stream-controller]: Loaded fragment 1 of level 2
[log] > Debug logs enabled for "main" in hls.js version 1.4.9
[log] > [mp4-remuxer]: ISGenerated flag reset
[log] > [mp4-remuxer]: initPTS & initDTS reset
[log] > [mp4-remuxer]: reset next timestamp
[log] > manifest codec:mp4a.40.2, ADTS type:2, samplingIndex:4
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [stream-controller]: Android: force audio codec to mp4a.40.2
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[mp4a.40.2/mp4a.40.2/mp4a.40.2]
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[avc1.640029/avc1.640029]
[log] > [buffer-controller]: creating sourceBuffer(audio/mp4;codecs=mp4a.40.2)
[log] > [buffer-controller]: creating sourceBuffer(video/mp4;codecs=avc1.640029)
[log] > [audio-stream-controller]: InitPTS for cc: 0 found from main: 9090
[log] > [transmuxer.ts]: Flushed fragment 1 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 1 of level 2 (frag:[0.000-5.016] > buffer:[0.000-5.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-64] level: 2, target: 5
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 2 of level 2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 2 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 2 of level 2 (frag:[5.000-10.008] > buffer:[0.000-10.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 3 cc: 0 of [1-64] level: 2, target: 10
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 3 of level 2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 3 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 3 of level 2 (frag:[10.000-15.000] > buffer:[0.000-15.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 4 cc: 0 of [1-64] level: 2, target: 15
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 4 of level 2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 4 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 4 of level 2 (frag:[15.000-20.016] > buffer:[0.000-20.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 5 cc: 0 of [1-64] level: 2, target: 20
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 5 of level 2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 5 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 5 of level 2 (frag:[20.000-25.008] > buffer:[0.000-25.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 6 cc: 0 of [1-64] level: 2, target: 25
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 6 of level 2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 6 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 6 of level 2 (frag:[25.000-30.000] > buffer:[0.000-30.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 7 cc: 0 of [1-64] level: 2, target: 30
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 7 of level 2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 7 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 7 of level 2 (frag:[30.000-35.016] > buffer:[0.000-35.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 8 cc: 0 of [1-64] level: 2, target: 35
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 8 of level 2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 8 of level 2
[log] > [stream-controller]: PARSING->PARSED
[log] > set currentLevel:0
[log] > set loadLevel:0
[log] > [level-controller]: Switching to level 0 from level 2
[log] > [level-controller]: Loading level index 0 with URI 1/1 https://nvms14.cdn.privatehost.com/media/nvme2/e28f20ce-41a5-5b31-a748-37281229e846/75624_360p.mp4/index-v1-a1.m3u8?&c=9&lra=5000k&sign=7f4a980ed8c382d9ac88d3a190a58d64
[log] > [stream-controller]: PARSED->IDLE
[log] > [level-controller]: Switching to level 0 from level 0
[log] > [level-controller]: Loading level index 0 with URI 1/1 https://nvms14.cdn.privatehost.com/media/nvme2/e28f20ce-41a5-5b31-a748-37281229e846/75624_360p.mp4/index-v1-a1.m3u8?&c=9&lra=5000k&sign=7f4a980ed8c382d9ac88d3a190a58d64
[log] > [stream-controller]: IDLE->WAITING_LEVEL
[log] > [stream-controller]: Level 0 loaded [1,64][part-64--1], cc [0, 0] duration:315.36
[log] > [stream-controller]: WAITING_LEVEL->IDLE
[log] > [stream-controller]: Loading fragment 8 cc: 0 of [1-64] level: 0, target: 36.88
[log] > [stream-controller]: IDLE->FRAG_LOADING
[warn] > [stream-controller]: Fragment 8 of level 2 finished buffering, but was aborted. state: FRAG_LOADING
onFragBuffered @ hls.js:15981
emit @ hls.js:14429
emit @ hls.js:25675
trigger @ hls.js:25679
onUnblocked @ hls.js:19234
(anonymous) @ hls.js:19562
Promise.then (async)
blockBuffers @ hls.js:19560
onFragParsed @ hls.js:19244
emit @ hls.js:14429
emit @ hls.js:25675
trigger @ hls.js:25679
updateLevelTiming @ hls.js:9822
_handleTransmuxerFlush @ hls.js:9206
onWorkerMessage @ hls.js:15004
TransmuxerInterface.onwmsg @ hls.js:14806
[log] > [buffer-controller]: Removing [0,315.36] from the audio SourceBuffer
[log] > [buffer-controller]: Removing [0,315.36] from the video SourceBuffer
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 8 p: -1 level: 0 id: 1
        discontinuity: false
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 35
        initSegmentChange: false
[log] > [stream-controller]: Loaded fragment 8 of level 0
[log] > [mp4-remuxer]: ISGenerated flag reset
[log] > [mp4-remuxer]: initPTS & initDTS reset
[log] > [mp4-remuxer]: reset next timestamp
[log] > manifest codec:mp4a.40.2, ADTS type:2, samplingIndex:4
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2
[warn] > [mp4-remuxer]: Dropped 25 out of 125 video samples due to a missing keyframe
onWorkerMessage @ hls.js:15011
TransmuxerInterface.onwmsg @ hls.js:14806
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [stream-controller]: Android: force audio codec to mp4a.40.2
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[mp4a.40.2/mp4a.40.2/mp4a.40.2]
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[avc1.640029/avc1.640029]
[log] > [stream-controller]: PARSING->IDLE
[log] > [stream-controller]: Loading fragment 1 cc: 0 of [1-64] level: 0, target: 4.102
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [buffer-controller]: Removing [0,35] from the audio SourceBuffer
[log] > [buffer-controller]: Removing [0,35] from the video SourceBuffer
[log] > injecting Web Worker for "main"
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 1 p: -1 level: 0 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 0
        initSegmentChange: true
[log] > [stream-controller]: Loaded fragment 1 of level 0
[log] > Debug logs enabled for "main" in hls.js version 1.4.9
[log] > [mp4-remuxer]: ISGenerated flag reset
[log] > [mp4-remuxer]: initPTS & initDTS reset
[log] > [mp4-remuxer]: reset next timestamp
[log] > manifest codec:mp4a.40.2, ADTS type:2, samplingIndex:4
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [stream-controller]: Android: force audio codec to mp4a.40.2
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[mp4a.40.2/mp4a.40.2/mp4a.40.2]
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[avc1.640029/avc1.640029]
[log] > [transmuxer.ts]: Flushed fragment 1 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 1 of level 0 (frag:[0.000-5.120] > buffer:[0.120-5.016])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-64] level: 0, target: 5.016
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 2 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 2 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 2 of level 0 (frag:[5.016-10.120] > buffer:[0.120-10.008])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 3 cc: 0 of [1-64] level: 0, target: 10.008
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 3 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 3 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 3 of level 0 (frag:[10.008-15.120] > buffer:[0.120-15.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 4 cc: 0 of [1-64] level: 0, target: 15
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 4 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 4 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 4 of level 0 (frag:[15.000-20.120] > buffer:[0.120-20.016])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 5 cc: 0 of [1-64] level: 0, target: 20.016
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 5 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 5 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 5 of level 0 (frag:[20.016-25.120] > buffer:[0.120-25.008])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 6 cc: 0 of [1-64] level: 0, target: 25.008
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 6 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 6 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 6 of level 0 (frag:[25.008-30.120] > buffer:[0.120-30.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 7 cc: 0 of [1-64] level: 0, target: 30
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 7 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 7 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 7 of level 0 (frag:[30.000-35.120] > buffer:[0.120-35.016])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 8 cc: 0 of [1-64] level: 0, target: 35.016
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 8 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 8 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 8 of level 0 (frag:[35.016-40.120] > buffer:[0.120-40.008])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 9 cc: 0 of [1-64] level: 0, target: 40.008
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 9 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 9 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 9 of level 0 (frag:[40.008-45.120] > buffer:[0.120-45.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 10 cc: 0 of [1-64] level: 0, target: 45
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 10 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 10 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 10 of level 0 (frag:[45.000-50.120] > buffer:[0.120-50.016])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 11 cc: 0 of [1-64] level: 0, target: 50.016
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 11 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 11 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 11 of level 0 (frag:[50.016-55.120] > buffer:[0.120-55.008])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 12 cc: 0 of [1-64] level: 0, target: 55.008
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 12 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 12 of level 0
[log] > [stream-controller]: PARSING->PARSED
hls.js:15225 [warn] > Playback stalling at @7.219814 due to low buffer ({"len":47.788257,"start":0.12,"end":55.008071})
_reportStall @ hls.js:15225
poll @ hls.js:15163
checkBuffer @ hls.js:16044
onTickEnd @ hls.js:15492
doTick @ hls.js:15488
tick @ hls.js:7787
setInterval (async)
setInterval @ hls.js:7749
startLoad @ hls.js:15416
(anonymous) @ hls.js:25779
startLoad @ hls.js:25778
filterAndSortMediaOptions @ hls.js:6424
onManifestLoaded @ hls.js:6299
emit @ hls.js:14429
emit @ hls.js:25675
trigger @ hls.js:25679
handleMasterPlaylist @ hls.js:3992
onSuccess @ hls.js:3930
readystatechange @ hls.js:24772
XMLHttpRequest.send (async)
openAndSendXhr @ hls.js:24716
loadInternal @ hls.js:24690
load @ hls.js:24656
load @ hls.js:3943
onManifestLoading @ hls.js:3798
emit @ hls.js:14429
emit @ hls.js:25675
trigger @ hls.js:25679
loadSource @ hls.js:25761
loadSelectedStream @ hls-demo.js:24457
(anonymous) @ hls-demo.js:24274
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3
hls-demo.js:24772 Error event: {type: "mediaError", details: "bufferStalledError", fatal: false, error: Error: Playback stalling at @7.219814 due to low buffer ({"len":47.788257,"start":0.12,"end":55.008…, buffer: 47.788257, …}
(anonymous) @ hls-demo.js:24772
emit @ hls.js:14429
emit @ hls.js:25675
trigger @ hls.js:25679
_reportStall @ hls.js:15226
poll @ hls.js:15163
checkBuffer @ hls.js:16044
onTickEnd @ hls.js:15492
doTick @ hls.js:15488
tick @ hls.js:7787
setInterval (async)
setInterval @ hls.js:7749
startLoad @ hls.js:15416
(anonymous) @ hls.js:25779
startLoad @ hls.js:25778
filterAndSortMediaOptions @ hls.js:6424
onManifestLoaded @ hls.js:6299
emit @ hls.js:14429
emit @ hls.js:25675
trigger @ hls.js:25679
handleMasterPlaylist @ hls.js:3992
onSuccess @ hls.js:3930
readystatechange @ hls.js:24772
XMLHttpRequest.send (async)
openAndSendXhr @ hls.js:24716
loadInternal @ hls.js:24690
load @ hls.js:24656
load @ hls.js:3943
onManifestLoading @ hls.js:3798
emit @ hls.js:14429
emit @ hls.js:25675
trigger @ hls.js:25679
loadSource @ hls.js:25761
loadSelectedStream @ hls-demo.js:24457
(anonymous) @ hls-demo.js:24274
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3
[log] > [stream-controller]: Buffered main sn: 12 of level 0 (frag:[55.008-60.120] > buffer:[0.120-60.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 13 cc: 0 of [1-64] level: 0, target: 60
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 13 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 13 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 13 of level 0 (frag:[60.000-65.120] > buffer:[0.120-65.016])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 14 cc: 0 of [1-64] level: 0, target: 65.016
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 14 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 14 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 14 of level 0 (frag:[65.016-70.120] > buffer:[0.120-70.008])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 15 cc: 0 of [1-64] level: 0, target: 70.008
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 15 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 15 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 15 of level 0 (frag:[70.008-75.120] > buffer:[0.120-75.000])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 16 cc: 0 of [1-64] level: 0, target: 75
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 16 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING
[log] > [transmuxer.ts]: Flushed fragment 16 of level 0
[log] > [stream-controller]: PARSING->PARSED
[log] > [stream-controller]: Buffered main sn: 16 of level 0 (frag:[75.000-80.120] > buffer:[0.120-80.016])
[log] > [stream-controller]: PARSED->IDLE
[log] > [stream-controller]: Loading fragment 17 cc: 0 of [1-64] level: 0, target: 80.016
[log] > [stream-controller]: IDLE->FRAG_LOADING
[log] > [stream-controller]: Loaded fragment 17 of level 0
[log] > [stream-controller]: FRAG_LOADING->PARSING

@Sbn44
Copy link

Sbn44 commented Aug 31, 2023

Hi @Sasha9393
I have experienced issues on android in the past with other brands.

Do you get frame freeze and an endless spinner or does it blank out ?

@robwalch robwalch removed the Needs Triage If there is a suspected stream issue, apply this label to triage if it is something we should fix. label May 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants