video-dev / hls.js

HLS.js is a JavaScript library that plays HLS in browsers with support for MSE.
https://hlsjs.video-dev.org/demo
Other
14.74k stars 2.56k forks source link

[llhls]on play first m4s, hlsjs uses wrong m4s, not the latest #4690

Closed jinleileiking closed 2 years ago

jinleileiking commented 2 years ago

What version of Hls.js are you using?

master

What browser (including version) are you using?

chrome

What OS (including version) are you using?

macos

Test stream

No response

Configuration

default

Additional player setup steps

No response

Checklist

Steps to reproduce

play a llhls live stream

network trace:

https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/2M/playlist.m3u8?expired=0

this will give:

#EXTM3U
#EXT-X-VERSION:7
#EXT-X-TARGETDURATION:2
#EXT-X-SERVER-CONTROL:CAN-BLOCK-RELOAD=YES,CAN-SKIP-UNTIL=12,PART-HOLD-BACK=3.000
#EXT-X-PART-INF:PART-TARGET=1.000000
#EXT-X-MEDIA-SEQUENCE:4669
#EXT-X-MAP:URI="playlist-init-stream-2M.1652244755.mp4"
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:30.351+0000
#EXTINF:2.00000,
playlistsegment4670.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:32.351+0000
#EXTINF:2.00000,
playlistsegment4671.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:34.351+0000
#EXTINF:2.00000,
playlistsegment4672.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:36.351+0000
#EXTINF:2.00000,
playlistsegment4673.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:38.351+0000
#EXTINF:2.00000,
playlistsegment4674.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:40.351+0000
#EXTINF:2.00000,
playlistsegment4675.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:42.351+0000
#EXTINF:2.00000,
playlistsegment4676.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:44.351+0000
#EXTINF:2.00000,
playlistsegment4677.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:46.351+0000
#EXTINF:2.00000,
playlistsegment4678.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:48.351+0000
#EXTINF:2.00000,
playlistsegment4679.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:50.351+0000
#EXTINF:2.00000,
playlistsegment4680.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:52.351+0000
#EXTINF:2.00000,
playlistsegment4681.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:54.351+0000
#EXTINF:2.00000,
playlistsegment4682.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:56.351+0000
#EXT-X-PART:DURATION=1.00000,INDEPENDENT=YES,URI="playlistsegment4683.1652244755.m4s.part0.m4s"
#EXT-X-PART:DURATION=1.00000,URI="playlistsegment4683.1652244755.m4s.part1.m4s"
#EXTINF:2.00000,
playlistsegment4683.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:58.351+0000
#EXT-X-PART:DURATION=1.00000,INDEPENDENT=YES,URI="playlistsegment4684.1652244755.m4s.part0.m4s"
#EXT-X-PART:DURATION=1.00000,URI="playlistsegment4684.1652244755.m4s.part1.m4s"
#EXTINF:2.00000,
playlistsegment4684.1652244755.m4s
#EXT-X-PRELOAD-HINT:TYPE=PART,URI="playlistsegment4685.1652244755.m4s.part0.m4s"
#EXT-X-RENDITION-REPORT:URI="../1.2M/playlist.m3u8",LAST-MSN=4684,LAST-PART=1
#EXT-X-RENDITION-REPORT:URI="../700K/playlist.m3u8",LAST-MSN=4684,LAST-PART=1

then, will request m3u8 with msn:

https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/2M/playlist.m3u8?expired=0&_HLS_msn=4684&_HLS_part=0&_HLS_skip=YES

response:

#EXTM3U
#EXT-X-VERSION:9
#EXT-X-TARGETDURATION:2
#EXT-X-SERVER-CONTROL:CAN-BLOCK-RELOAD=YES,CAN-SKIP-UNTIL=12,PART-HOLD-BACK=3.000
#EXT-X-PART-INF:PART-TARGET=1.000000
#EXT-X-MEDIA-SEQUENCE:4669
#EXT-X-MAP:URI="playlist-init-stream-2M.1652244755.mp4"
#EXT-X-SKIP:SKIPPED-SEGMENTS=8
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:46.351+0000
#EXTINF:2.00000,
playlistsegment4678.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:48.351+0000
#EXTINF:2.00000,
playlistsegment4679.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:50.351+0000
#EXTINF:2.00000,
playlistsegment4680.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:52.351+0000
#EXTINF:2.00000,
playlistsegment4681.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:54.351+0000
#EXTINF:2.00000,
playlistsegment4682.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:56.351+0000
#EXT-X-PART:DURATION=1.00000,INDEPENDENT=YES,URI="playlistsegment4683.1652244755.m4s.part0.m4s"
#EXT-X-PART:DURATION=1.00000,URI="playlistsegment4683.1652244755.m4s.part1.m4s"
#EXTINF:2.00000,
playlistsegment4683.1652244755.m4s
#EXT-X-PROGRAM-DATE-TIME:2022-05-11T07:28:58.351+0000
#EXT-X-PART:DURATION=1.00000,INDEPENDENT=YES,URI="playlistsegment4684.1652244755.m4s.part0.m4s"
#EXT-X-PART:DURATION=1.00000,URI="playlistsegment4684.1652244755.m4s.part1.m4s"
#EXTINF:2.00000,
playlistsegment4684.1652244755.m4s
#EXT-X-PART:DURATION=1.00000,INDEPENDENT=YES,URI="playlistsegment4685.1652244755.m4s.part0.m4s"
#EXT-X-PRELOAD-HINT:TYPE=PART,URI="playlistsegment4685.1652244755.m4s.part1.m4s"
#EXT-X-RENDITION-REPORT:URI="../1.2M/playlist.m3u8",LAST-MSN=4685,LAST-PART=0
#EXT-X-RENDITION-REPORT:URI="../700K/playlist.m3u8",LAST-MSN=4685,LAST-PART=0

then hlsjs will load :

https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/2M/playlistsegment4683.1652244755.m4s.part0.m4s

Expected behaviour

load playlistsegment4684.1652244755.m4s

What actually happened?

load playlistsegment4683.1652244755.m4s

Console output

[HMR] Waiting for update signal from WDS...
log.js:24 [HMR] Waiting for update signal from WDS...
timeline-chart.ts:98 [Violation] Added non-passive event listener to a scroll-blocking 'wheel' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
TimelineChart @ timeline-chart.ts:98
setupTimelineChart @ main.js:1565
(anonymous) @ main.js:97
j @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
I @ jquery.min.js:2
main.js:341 Using Hls.js config: {debug: true, enableWorker: true, lowLatencyMode: true, backBufferLength: 90}
logger.ts:74 [log] >
hls.ts:371 [log] > stopLoad
hls.ts:339 [log] > loadSource:https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI.m3u8
stream-controller.ts:539 [log] > [stream-controller]: Trigger BUFFER_RESET
hls.ts:310 [log] > attachMedia
index.js:551 [webpack-dev-server] Hot Module Replacement enabled.
index.js:551 [webpack-dev-server] Hot Module Replacement enabled.
index.js:551 [webpack-dev-server] Live Reloading enabled.
index.js:551 [webpack-dev-server] Live Reloading enabled.
buffer-controller.ts:755 [log] > [buffer-controller]: Media source opened
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: STOPPED->IDLE
level-controller.ts:172 [log] > [level-controller]: manifest loaded, 3 level(s) found, first bitrate: 2270400
buffer-controller.ts:136 [log] > 1 bufferCodec event(s) expected
hls.ts:361 [log] > startLoad(-1)
level-controller.ts:251 [log] > [level-controller]: switching to level 2 from -1
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 2 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/2M/playlist.m3u8?expired=0
base-stream-controller.ts:1381 [log] > [stream-controller]: STOPPED->IDLE
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: IDLE->STOPPED
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: STOPPED->IDLE
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 2 at sn 4684 part 0 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/2M/playlist.m3u8?expired=0&_HLS_msn=4684&_HLS_part=0&_HLS_skip=YES
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->WAITING_LEVEL
stream-controller.ts:603 [log] > [stream-controller]: Level 2 loaded [4669,4683], cc [0, 0] duration:30
base-stream-controller.ts:1125 [log] > [stream-controller]: Live playlist sliding: 0.00 start-sn: na->4669 prev-sn: na fragments: 15
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 30.000
base-stream-controller.ts:1381 [log] > [stream-controller]: WAITING_LEVEL->IDLE
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment url: playlist-init-stream-2M.1652244755.mp4, initSegment cc: 0 level: 2, target: 0
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
DevTools failed to load source map: Could not load content for chrome-extension://pgjjikdiikihdfpoppgaidccahalehjh/webspeed.js.map: System error: net::ERR_BLOCKED_BY_CLIENT
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->IDLE
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: initSegment of level 2 
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: playlistsegment4683.1652244755.m4s sn: 4682 p: 0 cc: 0 of playlist [4669-4683] parts [0-0-3] level: 2, target: 27.006
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 2 REFRESHED 4684-0
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 2 at sn 4684 part 1 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/2M/playlist.m3u8?expired=0&_HLS_msn=4684&_HLS_part=1&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 2 loaded [4669,4683], cc [0, 0] duration:31
base-stream-controller.ts:1125 [log] > [stream-controller]: Live playlist sliding: 0.00 start-sn: 4669->4669 prev-sn: na fragments: 15
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 31.000
transmuxer-interface.ts:67 [log] > demuxing in webworker
transmuxer-interface.ts:187 [log] > [transmuxer-interface, main]: Starting new transmux session for sn: 4682 p: 0 level: 2 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: false
        timeOffset: 26
        initSegmentChange: true
0eca82ad-93c1-4b78-bf6b-6840932e5448:603 [log] >
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4682 p: 1 of level 2
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
stream-controller.ts:1235 [log] > [stream-controller]: Init audiovideo buffer, container:video/mp4, codecs[level/parsed]=[avc1.64001f,mp4a.40.2/mp4a.40.2,avc1.64001f]
buffer-controller.ts:716 [log] > [buffer-controller]: creating sourceBuffer(video/mp4;codecs=mp4a.40.2,avc1.64001f)
audio-stream-controller.ts:113 [log] > [audio-stream-controller]: InitPTS for cc: 0 found from main: 9340
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
stream-controller.ts:994 [log] > [stream-controller]: seek to target start position 27.00610009765625 from current time 0
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4682 part: 1 of level 2 [26.000,28.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
level-controller.ts:251 [log] > [level-controller]: switching to level 0 from 2
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0
playlist-loader.ts:218 [log] > [playlist-loader]: aborting previous loader for type: level
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->WAITING_LEVEL
base-stream-controller.ts:218 [log] > [stream-controller]: media seeking to 27.006, state: WAITING_LEVEL
base-stream-controller.ts:218 [log] > [audio-stream-controller]: media seeking to 27.006, state: STOPPED
base-stream-controller.ts:218 [log] > [subtitle-stream-controller]: media seeking to 27.006, state: IDLE
stream-controller.ts:530 [log] > [stream-controller]: Media seeked to 27.006
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4685 part 0 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4685&_HLS_part=0&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4670,4684], cc [0, 0] duration:30
discontinuities.ts:168 [log] > Adjusting PTS using programDateTime delta 1801ms, sliding:1.801 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0 
base-stream-controller.ts:1125 [log] > [stream-controller]: Live playlist sliding: 1.80 start-sn: na->4670 prev-sn: 4682 fragments: 15
base-stream-controller.ts:1381 [log] > [stream-controller]: WAITING_LEVEL->IDLE
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment url: playlist-init-stream-700K.1652244755.mp4, initSegment cc: 0 level: 0, target: 0
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 31.801
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->IDLE
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: initSegment of level 0 [26.000,28.000]
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: playlistsegment4684.1652244755.m4s sn: 4683 p: 0 cc: 0 of playlist [4670-4684] parts [0-0-3] level: 0, target: 28
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
transmuxer-interface.ts:187 [log] > [transmuxer-interface, main]: Starting new transmux session for sn: 4683 p: 0 level: 0 id: 1
        discontinuity: false
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: false
        timeOffset: 27.801
        initSegmentChange: true
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
stream-controller.ts:1235 [log] > [stream-controller]: Init audiovideo buffer, container:video/mp4, codecs[level/parsed]=[avc1.64001f,mp4a.40.2/mp4a.40.2,avc1.64001f]
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 0 REFRESHED 4685-0
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4685 part 1 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4685&_HLS_part=1&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4670,4684], cc [0, 0] duration:31.000000000000004
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 32.801
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4683 p: 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4683 part: 1 of level 0 [26.000,30.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: playlistsegment4685.1652244755.m4s sn: 4684 p: 0 cc: 0 of playlist [4670-4684] parts [0-2-4] level: 0, target: 30
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4684 p: 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4684 part: 1 of level 0 [26.000,32.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: undefined sn: 4685 p: 0 cc: 0 of playlist [4670-4684] parts [0-4-4] level: 0, target: 32
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 0 REFRESHED 4685-1
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4686 part 0 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4686&_HLS_part=0&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4671,4685], cc [0, 0] duration:30
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 33.801
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4685 p: 0 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4685 part: 0 of level 0 [26.000,32.967]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: playlistsegment4686.1652244755.m4s sn: 4685 p: 1 cc: 0 of playlist [4671-4685] parts [0-3-3] level: 0, target: 32.967
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4685 p: 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4685 part: 1 of level 0 [26.000,34.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 0 REFRESHED 4686-0
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4686 part 1 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4686&_HLS_part=1&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4671,4685], cc [0, 0] duration:31
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: undefined sn: 4686 p: 0 cc: 0 of playlist [4671-4685] parts [0-4-4] level: 0, target: 34
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 34.801
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4686 p: 0 of level 0
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 0 REFRESHED 4686-1
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4687 part 0 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4687&_HLS_part=0&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4672,4686], cc [0, 0] duration:30
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 35.801
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4686 part: 0 of level 0 [26.000,34.967]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: playlistsegment4687.1652244755.m4s sn: 4686 p: 1 cc: 0 of playlist [4672-4686] parts [0-3-3] level: 0, target: 34.967
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 0 REFRESHED 4687-1
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4688 part 0 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4688&_HLS_part=0&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4673,4687], cc [0, 0] duration:30
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 37.801
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4686 p: 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4686 part: 1 of level 0 [26.000,36.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: playlistsegment4688.1652244755.m4s sn: 4687 p: 0 cc: 0 of playlist [4673-4687] parts [0-2-3] level: 0, target: 36
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4687 p: 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4687 part: 1 of level 0 [26.000,38.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 0 REFRESHED 4688-0
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4688 part 1 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4688&_HLS_part=1&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4673,4687], cc [0, 0] duration:31
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: undefined sn: 4688 p: 0 cc: 0 of playlist [4673-4687] parts [0-4-4] level: 0, target: 38
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 38.801
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4688 p: 0 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4688 part: 0 of level 0 [26.000,38.967]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
base-playlist-controller.ts:120 [log] > [level-controller]: live playlist 0 REFRESHED 4688-1
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 at sn 4689 part 0 with URL-id 0 https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/700K/playlist.m3u8?expired=0&_HLS_msn=4689&_HLS_part=0&_HLS_skip=YES
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [4674,4688], cc [0, 0] duration:30
base-stream-controller.ts:554 [log] > [stream-controller]: Loading part url: playlistsegment4689.1652244755.m4s sn: 4688 p: 1 cc: 0 of playlist [4674-4688] parts [0-3-3] level: 0, target: 38.967
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
buffer-controller.ts:647 [log] > [buffer-controller]: Updating Media Source duration to 39.801
0eca82ad-93c1-4b78-bf6b-6840932e5448:938 [log] > [transmuxer.ts]: Flushed fragment 4688 p: 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 4688 part: 1 of level 0 [26.000,40.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE


### Chrome media internals output

_No response_
jinleileiking commented 2 years ago

It seems https://stream.visionular.com/MWQzZWM0MmNmY2ZlZDNlNjMzYmZhZmVkMWM5ODYxNTI/2M/playlist.m3u8?expired=0&_HLS_msn=4684&_HLS_part=0&_HLS_skip=YES hlsjs do not update the duration list, so use the latest m4s of last request

jinleileiking commented 2 years ago
image
jinleileiking commented 2 years ago

bufferend should be 29.015 ( frag is 2s long)