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

custom loader aborted continuously #330

Closed
ilgooz opened this issue Mar 25, 2016 · 5 comments
Closed

custom loader aborted continuously #330

ilgooz opened this issue Mar 25, 2016 · 5 comments
Labels

Comments

@ilgooz
Copy link
Contributor

ilgooz commented Mar 25, 2016

hey, this relevant with #319. I'm able to reproduce the same issue but with a custom loader of ours. I see that hls.js continuously calls abort method on Loader and sets level to 0. I'm running on the same env with previous issue.

logs from chrome:

VM439:8025 [log] > loadSource:http://sample.vodobox.net/skate_phantom_flex_4k/skate_phantom_flex_4k.m3u8
VM439:8025 [log] > trigger BUFFER_RESET
VM439:8025 [log] > attachMedia
VM439:8025 [log] > media source opened
VM439:8025 [log] > manifest loaded,4 level(s) found, first bitrate:2742000
VM439:8025 [log] > startLoad
VM439:8025 [log] > demuxing in webworker
VM439:8025 [log] > switching to level 0
VM439:8025 [log] > (re)loading playlist for level 0
VM439:8025 [log] > level 0 loaded [1,36],duration:141.04
VM439:8025 [log] > Loading 1 of [1 ,36],level 0, currentTime:0,bufferEnd:0.000
VM439:8025 [log] > Demuxing 1 of [1 ,36],level 0
VM439:8025 [log] > creating sourceBuffer with mimeType:audio/mp4;codecs=mp4a.40.2
VM439:8025 [log] > creating sourceBuffer with mimeType:video/mp4;codecs=avc1.4d001f
VM439:8025 [log] > track:audio,container:audio/mp4,codecs[level/parsed]=[mp4a.40.2/mp4a.40.5]
VM439:8025 [log] > track:video,container:video/mp4,codecs[level/parsed]=[avc1.4d001f/avc1.4d401f]
VM439:8025 [log] > parsed video,PTS:[0.080,4.040],DTS:[0.000/4.000],nb:100
VM439:8025 [log] > parsed audio,PTS:[0.000,4.004],DTS:[0.000/3.971],nb:171
VM439:8025 [log] > media buffered : [0,3.970611]
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > (re)loading playlist for level 3
VM439:8025 [log] > level 3 loaded [1,36],duration:141.04
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:0,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/2.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/2.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/2.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:1.993497,bufferEnd:3.971
VM439:8025 [log] > playback seems stuck @3.889452
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/0.1/3375000.0
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/0.1/1713750.0
VM439:8025 [log] > switching to level 0
VM439:8025 [warn] > loading too slow, abort fragment loading and switch to level 0
VM439:8025 [log] > switching to level 3
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [warn] > level controller,fragLoopLoadingError: emergency switch-down for next fragment
VM439:8025 [warn] > mediaController: fragLoopLoadingError while loading frag,switch to IDLE state ...
VM439:8025 [log] > Loading 2 of [1 ,36],level 3, currentTime:3.889452,bufferEnd:3.971
VM439:8025 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/0.1/4722500.0
...
@mangui
Copy link
Member

mangui commented Mar 25, 2016

thanks, I found an issue in abr-controller

mangui added a commit that referenced this issue Mar 25, 2016
…of emergency switch down on the quality level of last successfully loaded fragment

eg:
Loaded 1 of [1 ,36],level 0
switching to level 3
Loading 2 of [1 ,36],level 3
...
loading too slow, abort fragment loading and switch to level 0
=> switching to level 3 (which is bad ... it should effectively switches to level 0 here)

change the logic in get nextAutoLevel() :
don't compare this._nextAutoLevel to lastfetchlevel. instead, reset this._nextAutoLevel on FRAG_LOADED

related to #330
@mangui mangui added the Bug label Mar 25, 2016
@mangui
Copy link
Member

mangui commented Mar 25, 2016

Hi @ilgooz plz recheck against hls.js v0.5.16 and let me know if it is fixed

@ilgooz
Copy link
Contributor Author

ilgooz commented Mar 25, 2016

@mangui
Hi, yes it is fixed, thx! from now on I exactly get 3 switch to level 0 unlike before(infinite). And it looks like this became identical to the 1st issue.

3x of this:

[warn] > loading too slow, abort fragment loading and switch to level 0
VM3096:8025 [log] > switching to level 3

here are my logs from chrome:

VM190:8257 [log] > loadSource:http://sample.vodobox.net/skate_phantom_flex_4k/skate_phantom_flex_4k.m3u8
VM190:8257 [log] > trigger BUFFER_RESET
VM190:8257 [log] > attachMedia
VM190:8257 [log] > media source opened
VM190:8257 [log] > manifest loaded,4 level(s) found, first bitrate:2742000
VM190:8257 [log] > startLoad
VM190:8257 [log] > demuxing in webworker
VM190:8257 [log] > switching to level 0
VM190:8257 [log] > (re)loading playlist for level 0
VM190:8257 [log] > level 0 loaded [1,36],duration:141.04
VM190:8257 [log] > Loading 1 of [1 ,36],level 0, currentTime:0,bufferEnd:0.000
VM190:8257 [log] > Demuxing 1 of [1 ,36],level 0
VM190:8257 [log] > creating sourceBuffer with mimeType:audio/mp4;codecs=mp4a.40.2
VM190:8257 [log] > creating sourceBuffer with mimeType:video/mp4;codecs=avc1.4d001f
VM190:8257 [log] > track:audio,container:audio/mp4,codecs[level/parsed]=[mp4a.40.2/mp4a.40.5]
VM190:8257 [log] > track:video,container:video/mp4,codecs[level/parsed]=[avc1.4d001f/avc1.4d401f]
VM190:8257 [log] > parsed video,PTS:[0.080,4.040],DTS:[0.000/4.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[0.000,4.004],DTS:[0.000/3.971],nb:171
VM190:8257 [log] > media buffered : [0,3.970611]
VM190:8257 [log] > switching to level 3
VM190:8257 [log] > (re)loading playlist for level 3
VM190:8257 [log] > level 3 loaded [1,36],duration:141.04
VM190:8257 [log] > Loading 2 of [1 ,36],level 3, currentTime:0,bufferEnd:3.971
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/2.1/4722500.0
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/2.1/3375000.0
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/2.1/1713750.0
VM190:8257 [log] > switching to level 0
VM190:8257 [warn] > loading too slow, abort fragment loading and switch to level 0
VM190:8257 [log] > Loading 2 of [1 ,36],level 0, currentTime:1.889055,bufferEnd:3.971
VM190:8257 [log] > Demuxing 2 of [1 ,36],level 0
VM190:8257 [log] > parsed video,PTS:[4.080,8.040],DTS:[4.000/8.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[4.004,8.021],DTS:[4.004/8.021],nb:173
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,8]
VM190:8257 [log] > switching to level 3
VM190:8257 [log] > Loading 3 of [1 ,36],level 3, currentTime:1.985944,bufferEnd:8.000
VM190:8257 [log] > playback seems stuck @3.846459
VM190:8257 [log] > adjust currentTime from 3.846459 to next buffered @ 4.004172
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/4.0/4722500.0
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/4.0/3375000.0
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/4.0/1713750.0
VM190:8257 [log] > switching to level 0
VM190:8257 [warn] > loading too slow, abort fragment loading and switch to level 0
VM190:8257 [log] > Loading 3 of [1 ,36],level 0, currentTime:4.004171,bufferEnd:8.000
VM190:8257 [log] > Demuxing 3 of [1 ,36],level 0
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[8.080,12.040],DTS:[8.000/12.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[8.021,12.015],DTS:[8.021/12.015],nb:172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,12]
VM190:8257 [log] > switching to level 3
VM190:8257 [log] > Loading 4 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:12.000
39VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[2] :5384000.0/8.0/4722500.0
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[1] :5384000.0/8.0/3375000.0
VM190:8257 [log] > fragLoadedDelay/bufferStarvationDelay/fragLevelNextLoadedDelay[0] :5384000.0/8.0/1713750.0
VM190:8257 [log] > switching to level 0
VM190:8257 [warn] > loading too slow, abort fragment loading and switch to level 0
VM190:8257 [log] > Loading 4 of [1 ,36],level 0, currentTime:4.004171,bufferEnd:12.000
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > Demuxing 4 of [1 ,36],level 0
VM190:8257 [log] > parsed video,PTS:[12.080,16.040],DTS:[12.000/16.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[12.015,16.009],DTS:[12.015/16.009],nb:172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,16]
VM190:8257 [log] > switching to level 3
VM190:8257 [log] > Loading 5 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:16.000
VM190:8257 [log] > Demuxing 5 of [1 ,36],level 3
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > track:audio,container:audio/mp4,codecs[level/parsed]=[mp4a.40.2/mp4a.40.5]
VM190:8257 [log] > track:video,container:video/mp4,codecs[level/parsed]=[avc1.640028/avc1.640028]
VM190:8257 [log] > parsed video,PTS:[16.080,20.040],DTS:[16.000/20.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[16.000,20.003],DTS:[16.000/19.994],nb:172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,19.993831]
VM190:8257 [log] > Loading 6 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:19.994
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > Demuxing 6 of [1 ,36],level 3
VM190:8257 [log] > parsed video,PTS:[20.080,24.040],DTS:[20.000/24.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[20.003,24.020],DTS:[20.003/24.020],nb:173
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,24]
VM190:8257 [log] > Loading 7 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:24.000
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > Demuxing 7 of [1 ,36],level 3
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[24.080,28.040],DTS:[24.000/28.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[24.020,28.014],DTS:[24.020/28.014],nb:172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,28]
VM190:8257 [log] > Loading 8 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:28.000
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > Demuxing 8 of [1 ,36],level 3
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[28.080,32.040],DTS:[28.000/32.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[28.014,32.007],DTS:[28.014/32.007],nb:172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,32]
VM190:8257 [log] > Loading 9 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:32.000
VM190:8257 [log] > Demuxing 9 of [1 ,36],level 3
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[32.080,36.000],DTS:[32.000/36.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[32.007,36.001],DTS:[32.007/36.001],nb:172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,36]
VM190:8257 [log] > Loading 10 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:36.000
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > Demuxing 10 of [1 ,36],level 3
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[36.080,40.040],DTS:[36.000/40.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[36.001,40.018],DTS:[36.001/40.018],nb:173
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,40]
VM190:8257 [log] > Loading 11 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:40.000
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > Demuxing 11 of [1 ,36],level 3
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[40.080,44.080],DTS:[40.000/44.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[40.018,44.012],DTS:[40.018/44.012],nb:172
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,44]
VM190:8257 [log] > Loading 12 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:44.000
VM190:8257 [log] > Demuxing 12 of [1 ,36],level 3
2VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[44.080,48.040],DTS:[44.000/48.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[44.012,48.006],DTS:[44.012/48.006],nb:172
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,48]
VM190:8257 [log] > Loading 13 of [1 ,36],level 3, currentTime:4.004171,bufferEnd:48.000
VM190:8257 [log] > Demuxing 13 of [1 ,36],level 3
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > parsed video,PTS:[48.080,52.040],DTS:[48.000/52.000],nb:100
VM190:8257 [log] > parsed audio,PTS:[48.006,52.023],DTS:[48.006/52.023],nb:173
VM190:8257 [log] > media buffered : [0,3.970611][4.004172,52]
24VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
57VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM192:3814 'KeyboardEvent.keyLocation' is deprecated. Please use 'KeyboardEvent.location' instead.
438VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
234VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
605VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172
68VM190:8257 [log] > adjust currentTime from 4.004171 to next buffered @ 4.004172

@mangui
Copy link
Member

mangui commented Mar 25, 2016

ok then I guess we can close this one.
3 level switch down in a row is not optimal ... ABR algorithm should be more conservative, especially if buffer is low ...
this deserves another ticket

@ilgooz
Copy link
Contributor Author

ilgooz commented Mar 25, 2016

alright, you can ping me again after fixes. I'd happily test.

mangui referenced this issue Mar 25, 2016
in case playback is still stalling although a seek over buffer hole just occured, hls.js will seek to next buffer start + (nb of consecutive stalls * seekHoleNudgeDuration to try to restore playback

related to https://github.com/dailymotion/hls.js/issues/319
related to https://github.com/dailymotion/hls.js/issues/330
mangui added a commit that referenced this issue Mar 25, 2016
related to #268
related to #319
related to #330
related to #331
@mangui mangui closed this as completed Mar 25, 2016
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