video-dev / video-dev/hls.js

Audio track switching does not apply immediately

Open
#5,881 13 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Browser issue browser: Firefox Enhancement Revisit-at-later-release-cycle seek-to-flush-rendering-pipeline Suggested-Workaround
Dominant language
TypeScript
Stars
16.9k
Forks
2.8k
Avg merge
1d 12h
Merged PRs (30d)
27

Description

What version of Hls.js are you using?

v1.4.12

What browser (including version) are you using?

Firefox 118.0.1 (Official Build) (x86_64)

What OS (including version) are you using?

Windows 11 (22H2)

Test stream

https://hlsjs.video-dev.org/demo/?src=https%3A%2F%2Fstorage.googleapis.com%2Fshaka-demo-assets%2Fangel-one-hls%2Fhls.m3u8&demoConfig=eyJlbmFibGVTdHJlYW1pbmciOnRydWUsImF1dG9SZWNvdmVyRXJyb3IiOnRydWUsInN0b3BPblN0YWxsIjpmYWxzZSwiZHVtcGZNUDQiOmZhbHNlLCJsZXZlbENhcHBpbmciOi0xLCJsaW1pdE1ldHJpY3MiOi0xfQ==

Configuration
{
  "debug": true,
  "enableWorker": true,
  "lowLatencyMode": true,
  "backBufferLength": 90
}
Additional player setup steps

No response

Checklist
Steps to reproduce
  1. Play the video until someone talks
  2. Switch to one of the other five audio tracks
Expected behaviour

The new audio track should load and play immediately, potentially stopping the playback to buffer the new audio until it can be played.

What actually happened?

The old audio continues playing for a few seconds, until it is replaced by the new audio. This does not happen on shaka-player, using exactly the same HLS manifest. Microsoft Edge on the same system also continues playing the old audio, but only until the "audio track switched" event is triggered.

Firefox HLS.js (very noticeable delay, even after "audio track switched" is triggered):

https://github.com/video-dev/hls.js/assets/590517/662c37fc-4f58-4afe-811a-d3c9a18d24fc

Firefox shaka-player (stops to buffer, but then plays without delay):

https://github.com/video-dev/hls.js/assets/590517/5d77a3f4-4e97-4442-985c-d220082c5eb8

Microsoft Edge (short delay in HLS.js, but plays immediately when "audio track switched" is triggered; same behavior as Firefox in shaka-player):

https://github.com/video-dev/hls.js/assets/590517/4d1ceafc-b6ed-44da-9700-54cac34723f7

Console output
Using Hls.js config: 
Object { debug: true, enableWorker: true, lowLatencyMode: true, backBufferLength: 90 }
main.js:339:10
[log] > Debug logs enabled for "Hls instance" in hls.js version 1.4.12 logger.ts:74:21
[log] > stopLoad hls.ts:410:11
[log] > loadSource:https://storage.googleapis.com/shaka-demo-assets/angel-one-hls/hls.m3u8 hls.ts:379:11
[log] > [stream-controller]: Trigger BUFFER_RESET stream-controller.ts:569:9
[log] > attachMedia hls.ts:351:11
[log] > [level-controller]: manifest loaded, 5 level(s) found, first bitrate: 1824731 level-controller.ts:269:13
[log] > 2 bufferCodec event(s) expected buffer-controller.ts:148:11
[log] > startLoad(-1) hls.ts:400:11
[log] > [level-controller]: Switching to level 4 from level -1 level-controller.ts:351:9
[log] > [audio-track-controller]: Updating audio tracks, 6 track(s) found in group:default-audio-group audio-track-controller.ts:138:11
[log] > [audio-track-controller]: Switching to audio-track 0 "stream_5" lang:en group:default-audio-group audio-track-controller.ts:195:9
[log] > [audio-stream-controller]: Reset loading state base-stream-controller.ts:1631:9
[log] > [audio-stream-controller]: STOPPED->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-track-controller]: Updating subtitle tracks, 4 track(s) found in "default-text-group" group-id subtitle-track-controller.ts:217:11
[log] > [level-controller]: Loading level index 4 with URI 1/1 https://storage.googleapis.com/shaka-demo-assets/angel-one-hls/playlist_v-0576p-1400k-libx264.mp4.m3u8 level-controller.ts:520:11
[log] > [stream-controller]: STOPPED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-track-controller]: loading audio-track playlist 0 "stream_5" lang:en group:default-audio-group audio-track-controller.ts:273:11
[log] > [audio-stream-controller]: IDLE->STOPPED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: STOPPED->WAITING_TRACK base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: STOPPED->IDLE base-stream-controller.ts:1777:11
[log] > [buffer-controller]: Media source opened buffer-controller.ts:800:11
[log] > [subtitle-track-controller]: Switching to subtitle-track 0 "stream_0" lang:en group:default-text-group subtitle-track-controller.ts:371:9
[log] > [subtitle-track-controller]: Loading subtitle playlist for id 0 subtitle-track-controller.ts:292:11
[log] > [stream-controller]: Level 4 loaded [0,14][part-14--1], cc [0, 0] duration:60 stream-controller.ts:634:9
[log] > [buffer-controller]: Updating Media Source duration to 60.000 buffer-controller.ts:692:13
[log] > [stream-controller]: Loading fragment initSegment cc: 0 of [0-14] level: 4, target: 0 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-track-controller]: audio-track 0 "stream_5" lang:en group:default-audio-group loaded [0-14] audio-track-controller.ts:90:9
[log] > [audio-stream-controller]: Track 0 loaded [0,14][part-14--1],duration:60 audio-stream-controller.ts:497:9
[log] > [audio-stream-controller]: WAITING_TRACK->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment initSegment cc: 0 of [0-14] track: 0, target: 0 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-track-controller]: subtitle track 0 loaded [0-15] subtitle-track-controller.ts:173:9
[log] > [subtitle-stream-controller]: Loading fragment 0 cc: 0 of [0-15] track: 0, target: 0 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: initSegment of level 4 (frag:[NaN-NaN] > buffer:) base-stream-controller.ts:572:9
[log] > [stream-controller]: Loading fragment 0 cc: 0 of [0-14] level: 4, target: 0 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: initSegment of track 0 (frag:[NaN-NaN] > buffer:) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: Loading fragment 0 cc: 0 of [0-14] track: 0, target: 0 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 0 of level 0 base-stream-controller.ts:386:15
[log] > injecting Web Worker for "audio" transmuxer-interface.ts:85:19
[log] > [audio-stream-controller]: Unknown video PTS for cc 0, waiting for video PTS before demuxing audio frag 0 of [0 ,14],track 0 audio-stream-controller.ts:610:11
[log] > [audio-stream-controller]: FRAG_LOADING->WAITING_INIT_PTS base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 0 of level 0 base-stream-controller.ts:386:15
[log] > injecting Web Worker for "main" transmuxer-interface.ts:85:19
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 0 p: -1 level: 4 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 0
        initSegmentChange: true hls.js:14939:16
[log] > [stream-controller]: Loaded fragment 0 of level 4 base-stream-controller.ts:386:15
[log] > Debug logs enabled for "audio" in hls.js version 1.4.12 d7f1c0ae-6fb0-40ba-8dcf-3992cf575109:542:24
[log] > Debug logs enabled for "main" in hls.js version 1.4.12 336ddc74-49d3-439f-ab54-f21a3f6804fc:542:24
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[avc1.4d401f/avc1.4d401f] hls.js:16358:14
[log] > [audio-stream-controller]: InitPTS for cc: 0 found from main: 0 hls.js:17130:14
[log] > [audio-stream-controller]: WAITING_INIT_PTS->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [transmuxer-interface, audio]: Starting new transmux session for sn: 0 p: -1 level: 0 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: false
        timeOffset: 0
        initSegmentChange: true hls.js:14939:16
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 0 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Init audio buffer, container:audio/mp4, codecs[parsed]=[mp4a.40.2] hls.js:17707:12
[log] > [buffer-controller]: creating sourceBuffer(video/mp4;codecs=avc1.4d401f) hls.js:19473:18
[log] > [buffer-controller]: creating sourceBuffer(audio/mp4;codecs=mp4a.40.2) hls.js:19473:18
[log] > [stream-controller]: Alternate track found, use video.buffered to schedule main fragment loading hls.js:16000:14
[log] > [transmuxer.ts]: Flushed fragment 0 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 0 of level 4 (frag:[0.000-4.000] > buffer:[0.000-4.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 1 cc: 0 of [0-14] level: 4, target: 4 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 0 of track 0 (frag:[0.000-4.032] > buffer:[0.000-4.011]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 1 cc: 0 of [0-14] track: 0, target: 4.032 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 1 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 1 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 1 of level 4 (frag:[4.000-8.000] > buffer:[0.000-8.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [0-14] level: 4, target: 8 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 1 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 1 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 1 of track 0 (frag:[4.032-8.021] > buffer:[0.000-8.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 2 cc: 0 of [0-14] track: 0, target: 8.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 2 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 2 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 2 of level 4 (frag:[8.000-12.000] > buffer:[0.000-12.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 3 cc: 0 of [0-14] level: 4, target: 12 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 2 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 2 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 2 of track 0 (frag:[8.021-12.032] > buffer:[0.000-12.011]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 3 cc: 0 of [0-14] track: 0, target: 12.032 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 3 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 3 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 3 of level 4 (frag:[12.000-16.000] > buffer:[0.000-16.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 4 cc: 0 of [0-14] level: 4, target: 16 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 3 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 3 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 3 of track 0 (frag:[12.032-16.021] > buffer:[0.000-16.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 4 cc: 0 of [0-14] track: 0, target: 16.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 4 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 4 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 4 of level 4 (frag:[16.000-20.000] > buffer:[0.000-20.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 5 cc: 0 of [0-14] level: 4, target: 20 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 4 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 4 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 4 of track 0 (frag:[16.021-20.032] > buffer:[0.000-20.011]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 5 cc: 0 of [0-14] track: 0, target: 20.032 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 5 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 5 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 5 of level 4 (frag:[20.000-24.000] > buffer:[0.000-24.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 6 cc: 0 of [0-14] level: 4, target: 24 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 5 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 5 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 5 of track 0 (frag:[20.032-24.021] > buffer:[0.000-24.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 6 cc: 0 of [0-14] track: 0, target: 24.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 6 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 6 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 6 of level 4 (frag:[24.000-28.000] > buffer:[0.000-28.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 7 cc: 0 of [0-14] level: 4, target: 28 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 6 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 6 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 6 of track 0 (frag:[24.021-28.032] > buffer:[0.000-28.011]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 7 cc: 0 of [0-14] track: 0, target: 28.032 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 7 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 7 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 7 of level 4 (frag:[28.000-32.000] > buffer:[0.000-32.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 8 cc: 0 of [0-14] level: 4, target: 32 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 7 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 7 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 7 of track 0 (frag:[28.032-32.021] > buffer:[0.000-32.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 8 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 8 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 8 of level 4 (frag:[32.000-36.000] > buffer:[0.000-36.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 9 cc: 0 of [0-14] level: 4, target: 36 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 9 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 9 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 9 of level 4 (frag:[36.000-40.000] > buffer:[0.000-40.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 10 cc: 0 of [0-14] level: 4, target: 40 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 8 cc: 0 of [0-14] track: 0, target: 32.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 10 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 10 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 10 of level 4 (frag:[40.000-44.000] > buffer:[0.000-44.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 11 cc: 0 of [0-14] level: 4, target: 44 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 8 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 8 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 8 of track 0 (frag:[32.021-36.032] > buffer:[0.000-36.011]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 9 cc: 0 of [0-14] track: 0, target: 36.032 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 11 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 11 of level 4 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: Loaded fragment 9 of level 0 base-stream-controller.ts:386:15
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 9 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 11 of level 4 (frag:[44.000-48.000] > buffer:[0.000-48.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 12 cc: 0 of [0-14] level: 4, target: 48 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 9 of track 0 (frag:[36.032-40.021] > buffer:[0.000-40.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 10 cc: 0 of [0-14] track: 0, target: 40.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 12 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 12 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 10 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 10 of level 0 transmuxer-interface.ts:379:36
[log] > [stream-controller]: Buffered main sn: 12 of level 4 (frag:[48.000-52.000] > buffer:[0.000-52.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 13 cc: 0 of [0-14] level: 4, target: 52 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 10 of track 0 (frag:[40.021-44.032] > buffer:[0.000-44.011]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 11 cc: 0 of [0-14] track: 0, target: 44.032 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 13 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 13 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 11 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 13 of level 4 (frag:[52.000-56.000] > buffer:[0.000-56.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loading fragment 14 cc: 0 of [0-14] level: 4, target: 56 base-stream-controller.ts:743:9
[log] > [stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 11 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 11 of track 0 (frag:[44.032-48.021] > buffer:[0.000-48.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 12 cc: 0 of [0-14] track: 0, target: 48.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 12 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 12 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 12 of track 0 (frag:[48.021-52.032] > buffer:[0.000-52.011]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 13 cc: 0 of [0-14] track: 0, target: 52.032 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [stream-controller]: Loaded fragment 14 of level 4 base-stream-controller.ts:386:15
[log] > [stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 14 of level 4 transmuxer-interface.ts:379:36
[log] > [stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [stream-controller]: Buffered main sn: 14 of level 4 (frag:[56.000-60.000] > buffer:[0.000-60.000]) base-stream-controller.ts:572:9
[log] > [stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [buffer-controller]: video sourceBuffer now EOS buffer-controller.ts:544:17
[log] > [stream-controller]: IDLE->ENDED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 13 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 13 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 13 of track 0 (frag:[52.032-56.021] > buffer:[0.000-56.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 14 cc: 0 of [0-14] track: 0, target: 56.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 14 of level 0 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 14 of level 0 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 14 of track 0 (frag:[56.021-60.021] > buffer:[0.000-60.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [buffer-controller]: audio sourceBuffer now EOS buffer-controller.ts:544:17
[log] > [buffer-controller]: Queueing mediaSource.endOfStream() buffer-controller.ts:551:13
[log] > [audio-stream-controller]: IDLE->ENDED base-stream-controller.ts:1777:11
[log] > [buffer-controller]: Calling mediaSource.endOfStream() buffer-controller.ts:568:15
[log] > [buffer-controller]: Media source ended buffer-controller.ts:819:11
[log] > [subtitle-stream-controller]: Loading fragment 1 cc: 0 of [0-15] track: 0, target: 4 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 1 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 2 cc: 0 of [0-15] track: 0, target: 8 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 2 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 3 cc: 0 of [0-15] track: 0, target: 12 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 3 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 4 cc: 0 of [0-15] track: 0, target: 16 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 4 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 5 cc: 0 of [0-15] track: 0, target: 20 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 5 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 6 cc: 0 of [0-15] track: 0, target: 24 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 6 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 7 cc: 0 of [0-15] track: 0, target: 28 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 7 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 8 cc: 0 of [0-15] track: 0, target: 32 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 8 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 9 cc: 0 of [0-15] track: 0, target: 36 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 9 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 10 cc: 0 of [0-15] track: 0, target: 40 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 10 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [audio-track-controller]: Switching to audio-track 1 "stream_4" lang:de group:default-audio-group audio-track-controller.ts:195:9
[log] > [audio-stream-controller]: Reset loading state base-stream-controller.ts:1631:9
[log] > [audio-stream-controller]: ENDED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: IDLE->WAITING_TRACK base-stream-controller.ts:1777:11
[log] > [audio-track-controller]: loading audio-track playlist 1 "stream_4" lang:de group:default-audio-group audio-track-controller.ts:273:11
[log] > [audio-track-controller]: audio-track 1 "stream_4" lang:de group:default-audio-group loaded [0-14] audio-track-controller.ts:90:9
[log] > [audio-stream-controller]: Track 1 loaded [0,14][part-14--1],duration:59.221 audio-stream-controller.ts:497:9
[log] > [audio-stream-controller]: WAITING_TRACK->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment initSegment cc: 0 of [0-14] track: 1, target: 0 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: initSegment of track 1 (frag:[NaN-NaN] > buffer:[0.000-60.000]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: Loading fragment 1 cc: 0 of [0-14] track: 1, target: 4.951 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [transmuxer-interface, audio]: Starting new transmux session for sn: 1 p: -1 level: 1 id: 1
        discontinuity: false
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: false
        timeOffset: 3.243
        initSegmentChange: true hls.js:14939:16
[log] > [audio-stream-controller]: Loaded fragment 1 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Switching audio track : flushing all audio hls.js:17752:14
[log] > [buffer-controller]: Removing [0,60] from the audio SourceBuffer hls.js:19549:16
[log] > [audio-stream-controller]: Init audio buffer, container:audio/mp4, codecs[parsed]=[mp4a.40.2] hls.js:17707:12
[log] > [transmuxer.ts]: Flushed fragment 1 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 1 of track 1 (frag:[4.021-8.010] > buffer:[4.021-8.010]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 2 cc: 0 of [0-14] track: 1, target: 8.01 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 2 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 2 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 2 of track 1 (frag:[8.010-12.021] > buffer:[4.021-12.021]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 3 cc: 0 of [0-14] track: 1, target: 12.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 3 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 3 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 3 of track 1 (frag:[12.021-16.010] > buffer:[4.021-16.010]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 4 cc: 0 of [0-14] track: 1, target: 16.01 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 4 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 4 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 4 of track 1 (frag:[16.010-20.021] > buffer:[4.021-20.021]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 5 cc: 0 of [0-14] track: 1, target: 20.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 5 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 5 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 5 of track 1 (frag:[20.021-24.010] > buffer:[4.021-24.010]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 6 cc: 0 of [0-14] track: 1, target: 24.01 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 6 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 6 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 6 of track 1 (frag:[24.010-28.021] > buffer:[4.021-28.021]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 7 cc: 0 of [0-14] track: 1, target: 28.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 7 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 7 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 7 of track 1 (frag:[28.021-32.010] > buffer:[4.021-32.010]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 8 cc: 0 of [0-14] track: 1, target: 32.01 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 8 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 8 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 8 of track 1 (frag:[32.010-36.021] > buffer:[4.021-36.021]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 9 cc: 0 of [0-14] track: 1, target: 36.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 9 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 9 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 9 of track 1 (frag:[36.021-40.010] > buffer:[4.021-40.010]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 10 cc: 0 of [0-14] track: 1, target: 40.01 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 10 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 10 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 10 of track 1 (frag:[40.010-44.021] > buffer:[4.021-44.021]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 11 cc: 0 of [0-14] track: 1, target: 44.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 11 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 11 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 11 of track 1 (frag:[44.021-48.010] > buffer:[4.021-48.010]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 12 cc: 0 of [0-14] track: 1, target: 48.01 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 12 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 12 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 12 of track 1 (frag:[48.010-52.021] > buffer:[4.021-52.021]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 13 cc: 0 of [0-14] track: 1, target: 52.021 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 13 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 13 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 13 of track 1 (frag:[52.021-56.010] > buffer:[4.021-56.010]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loading fragment 14 cc: 0 of [0-14] track: 1, target: 56.01 base-stream-controller.ts:743:9
[log] > [audio-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Loaded fragment 14 of level 1 base-stream-controller.ts:386:15
[log] > [audio-stream-controller]: FRAG_LOADING->PARSING base-stream-controller.ts:1777:11
[log] > [transmuxer.ts]: Flushed fragment 14 of level 1 transmuxer-interface.ts:379:36
[log] > [audio-stream-controller]: PARSING->PARSED base-stream-controller.ts:1777:11
[log] > [audio-stream-controller]: Buffered audio sn: 14 of track 1 (frag:[56.010-59.999] > buffer:[4.021-59.999]) base-stream-controller.ts:572:9
[log] > [audio-stream-controller]: PARSED->IDLE base-stream-controller.ts:1777:11
[log] > [buffer-controller]: audio sourceBuffer now EOS buffer-controller.ts:544:17
[log] > [buffer-controller]: Queueing mediaSource.endOfStream() buffer-controller.ts:551:13
[log] > [audio-stream-controller]: IDLE->ENDED base-stream-controller.ts:1777:11
[log] > [buffer-controller]: Calling mediaSource.endOfStream() buffer-controller.ts:568:15
[log] > [buffer-controller]: Media source ended buffer-controller.ts:819:11
[log] > [subtitle-stream-controller]: Loading fragment 11 cc: 0 of [0-15] track: 0, target: 44 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 11 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 12 cc: 0 of [0-15] track: 0, target: 48 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 12 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 13 cc: 0 of [0-15] track: 0, target: 52 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 13 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 14 cc: 0 of [0-15] track: 0, target: 56 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 14 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loading fragment 15 cc: 0 of [0-15] track: 0, target: 60 base-stream-controller.ts:743:9
[log] > [subtitle-stream-controller]: IDLE->FRAG_LOADING base-stream-controller.ts:1777:11
[log] > [subtitle-stream-controller]: Loaded fragment 15 of level 0 base-stream-controller.ts:386:15
[log] > [subtitle-stream-controller]: FRAG_LOADING->IDLE base-stream-controller.ts:1777:11
Chrome media internals output

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the delay with the linked Hls.js demo and the supplied stream, then start by tracing the audio-track-controller.ts and audio-stream-controller.ts log transitions around a track switch. Check the related buffer-controller.ts behavior against Firefox and Edge; done means the selected audio track replaces the old track immediately or playback pauses to buffer it, with regression coverage added.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, typescript
Domain
audio-video-rtc, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.