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

Buffer Stalled Error breaks looping video with loop="true" #3986

Closed
3 of 5 tasks
lpommers opened this issue Jun 1, 2021 · 3 comments
Closed
3 of 5 tasks

Buffer Stalled Error breaks looping video with loop="true" #3986

lpommers opened this issue Jun 1, 2021 · 3 comments
Labels
Bug missing-keyframe Stream has non-independent segments (no key-frames) or missing key-frame at start
Milestone

Comments

@lpommers
Copy link
Contributor

lpommers commented Jun 1, 2021

What version of Hls.js are you using?

1.0.5

The error does not occur on 0.14.16 so I believe this is a regression.

What browser and OS (including versions) are you using?

  • Firefox 89.0 (64-bit)
  • Chrome Version 91.0.4472.77
  • Safari Version 14.1.1

Test stream:

I didn't know how to add the loop attribute to the video elem using the test page... so this is the HTML I used. Basically the demo HTML, w/ a small change or two

<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>

<video id="video" loop="true" controls></video>
<script>
  var video = document.getElementById('video');
  var videoSrc = 'https://wistia-temp.s3.amazonaws.com/luke-hls-audio-test/loop.m3u8';
  if (Hls.isSupported()) {
    var config = {
      debug: true,
    };
    var hls = new Hls(config);
    hls.loadSource(videoSrc);
    hls.attachMedia(video);
  }
</script>

Configuration:

{
  "debug": true,
}

Checklist

  • The stream has correct Access-Control-Allow-Origin headers (CORS)
  • There are no network errors such as 404s in the browser console when trying to play the stream

Steps to reproduce

  1. Add the loop="true" attribute to a video element used for HLS.js
  2. Play the test stream
  3. Notice that after the first time through, the video repeatedly downloads frag http://embed.wistia.com/deliveries/fd7f6e2c8bbcf86f2f297553a3c01061f0e0aa38.m3u8/seg-2-v1-a1.ts
  4. the video fails to play again with due to a low buffer and buffer stalled error

Expected behavior

That the video would loop indefinitely and that the same frag would not be downloaded repeatedly.

Actual behavior

The same frag is repeatedly downloaded, the video does not play again, and there is a buffer stalled error.

Console output

[log] > hls.js@latest:1:3909
[log] > stopLoad hls.js@latest:1:306986
[log] > loadSource:https://wistia-temp.s3.amazonaws.com/luke-hls-audio-test/loop.m3u8 hls.js@latest:1:306666
[log] > [stream-controller]: Trigger BUFFER_RESET hls.js@latest:1:177644
[log] > attachMedia hls.js@latest:1:306335
[log] > [buffer-controller]: Media source opened hls.js@latest:1:224747
[log] > [subtitle-stream-controller]: STOPPED->IDLE hls.js@latest:1:162561
GEThttp://player.wistia.io/favicon.ico
[HTTP/1.1 404 Not Found 2ms]

Source map error: Error: request failed with status 404
Resource URL: https://cdn.jsdelivr.net/npm/hls.js@latest
Source Map URL: hls.min.js.map

[log] > [level-controller]: manifest loaded, 4 level(s) found, first bitrate: 239048 hls.js@latest:1:125831
[log] > 1 bufferCodec event(s) expected hls.js@latest:1:226914
[log] > startLoad(-1) hls.js@latest:1:306872
[log] > [level-controller]: switching to level 0 from -1 hls.js@latest:1:130212
[log] > [audio-track-controller]: Updating audio tracks, 1 track(s) found in "\"audio\"" group-id hls.js@latest:1:210591
[log] > [audio-track-controller]: Now switching to audio-track index 0 hls.js@latest:1:211128
[log] > [level-controller]: Attempt loading level index 0 with URL-id 0 http://embed.wistia.com/deliveries/04e7f1e60f1ff58e3101fd4f2bae3e26781e568e.m3u8 hls.js@latest:1:128997
[log] > [stream-controller]: STOPPED->IDLE hls.js@latest:1:162561
[log] > [audio-stream-controller]: STOPPED->WAITING_TRACK hls.js@latest:1:162561
[log] > [subtitle-stream-controller]: IDLE->STOPPED hls.js@latest:1:162561
[log] > [subtitle-stream-controller]: STOPPED->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Level 0 loaded [1,3], cc [0, 0] duration:7.639 hls.js@latest:1:178616
[log] > [buffer-controller]: Updating Media Source duration to 7.639 hls.js@latest:1:233744
[log] > [stream-controller]: Loading fragment 1 cc: 0 of [1-3] level: 0, target: 0 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 1 p: -1 level: 0 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 0 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 1 of level 0 hls.js@latest:1:150309
[log] > 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:28186
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 1 of level 0 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:37214
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64000d] hls.js@latest:1:186795
[log] > [buffer-controller]: creating sourceBuffer(audio/mp4;codecs=mp4a.40.2) hls.js@latest:1:234862
[log] > [buffer-controller]: creating sourceBuffer(video/mp4;codecs=avc1.64000d) hls.js@latest:1:234862
[log] > [audio-stream-controller]: InitPTS for cc: 0 found from main: 9090 hls.js@latest:1:198248
[log] > [stream-controller]: PARSING->PARSED hls.js@latest:1:162561
[log] > [stream-controller]: Buffered main sn: 1 of level 0 [0.083,3.019] hls.js@latest:1:152073
[log] > [stream-controller]: PARSED->IDLE hls.js@latest:1:162561
[log] > [level-controller]: switching to level 3 from 0 hls.js@latest:1:130212
[log] > [level-controller]: Attempt loading level index 3 with URL-id 0 http://embed.wistia.com/deliveries/fd7f6e2c8bbcf86f2f297553a3c01061f0e0aa38.m3u8 hls.js@latest:1:128997
[log] > [stream-controller]: IDLE->WAITING_LEVEL hls.js@latest:1:162561
[log] > [stream-controller]: Level 3 loaded [1,3], cc [0, 0] duration:7.639 hls.js@latest:1:178616
[log] > [stream-controller]: WAITING_LEVEL->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 3.019 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: false
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > [mp4-remuxer]: ISGenerated flag reset 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:57052
[log] > [mp4-remuxer]: reset next timestamp 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:56922
[log] > [mp4-remuxer]: ISGenerated flag reset 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 26180ef4-8a72-9e4a-b218-b1c1fd5660f7:1:37214
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [buffer-controller]: Removing [0,3] from the audio SourceBuffer hls.js@latest:1:236320
[log] > [buffer-controller]: Removing [0,3] from the video SourceBuffer hls.js@latest:1:236320
[log] > [stream-controller]: Loading fragment 1 cc: 0 of [1-3] level: 3, target: 0 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 1 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 0 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 1 of level 3 hls.js@latest:1:150309
[log] > bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:28186
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 1 of level 3 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:37214
[log] > [stream-controller]: PARSING->PARSED hls.js@latest:1:162561
[log] > [stream-controller]: Buffered main sn: 1 of level 3 [0.083,3.019] hls.js@latest:1:152073
[log] > [stream-controller]: PARSED->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 3.019 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:28186
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:37214
[log] > [stream-controller]: PARSING->PARSED hls.js@latest:1:162561
[log] > [stream-controller]: Buffered main sn: 2 of level 3 [0.083,6.014] hls.js@latest:1:152073
[log] > [stream-controller]: PARSED->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 3 cc: 0 of [1-3] level: 3, target: 6.014 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > [stream-controller]: Loaded fragment 3 of level 3 hls.js@latest:1:150309
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 2 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:28186
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 3 of level 3 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:37214
[log] > [stream-controller]: PARSING->PARSED hls.js@latest:1:162561
[log] > [stream-controller]: Buffered main sn: 3 of level 3 [0.083,7.639] hls.js@latest:1:152073
[log] > [stream-controller]: PARSED->IDLE hls.js@latest:1:162561
[log] > [buffer-controller]: audio sourceBuffer now EOS hls.js@latest:1:232235
[log] > [buffer-controller]: video sourceBuffer now EOS hls.js@latest:1:232235
[log] > [stream-controller]: IDLE->ENDED hls.js@latest:1:162561
[log] > [buffer-controller]: Media source ended hls.js@latest:1:225084
[warn] > skipping hole, adjusting currentTime from 0 to 0.13342199999999999 hls.js@latest:1:168811
[log] > [stream-controller]: media seeking to 0.133, state: ENDED hls.js@latest:1:148423
[log] > [stream-controller]: ENDED->IDLE hls.js@latest:1:162561
[log] > [audio-stream-controller]: media seeking to 0.133, state: WAITING_TRACK hls.js@latest:1:148423
[log] > [subtitle-stream-controller]: media seeking to 0.133, state: IDLE hls.js@latest:1:148423
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.674 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > [stream-controller]: Media seeked to 0.133 hls.js@latest:1:177558
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: false
        trackSwitch: false
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > [mp4-remuxer]: reset next timestamp bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:56922
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 bb14bb1f-7187-be4d-8aa4-54ee1ac740c7:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.674 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 84a3db02-7b07-144d-a27f-de5399600f6b:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 84a3db02-7b07-144d-a27f-de5399600f6b:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 84a3db02-7b07-144d-a27f-de5399600f6b:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 84a3db02-7b07-144d-a27f-de5399600f6b:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 84a3db02-7b07-144d-a27f-de5399600f6b:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 84a3db02-7b07-144d-a27f-de5399600f6b:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 84a3db02-7b07-144d-a27f-de5399600f6b:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 84a3db02-7b07-144d-a27f-de5399600f6b:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 6be492ce-21b8-4f4f-9325-ba957f710e68:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 6be492ce-21b8-4f4f-9325-ba957f710e68:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 6be492ce-21b8-4f4f-9325-ba957f710e68:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 6be492ce-21b8-4f4f-9325-ba957f710e68:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 6be492ce-21b8-4f4f-9325-ba957f710e68:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 6be492ce-21b8-4f4f-9325-ba957f710e68:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 6be492ce-21b8-4f4f-9325-ba957f710e68:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 6be492ce-21b8-4f4f-9325-ba957f710e68:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 8e17e090-134d-9042-bf4f-a1e03e277729:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 8e17e090-134d-9042-bf4f-a1e03e277729:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 8e17e090-134d-9042-bf4f-a1e03e277729:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 8e17e090-134d-9042-bf4f-a1e03e277729:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 8e17e090-134d-9042-bf4f-a1e03e277729:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 8e17e090-134d-9042-bf4f-a1e03e277729:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 8e17e090-134d-9042-bf4f-a1e03e277729:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 8e17e090-134d-9042-bf4f-a1e03e277729:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 6eca05ca-a711-984c-9e04-b21fb7a8c482:1:37214
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 6fc3dd96-c8a9-cf4b-95a9-f669045dc3da:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 1dfa3545-8a80-f14b-9743-6dcd3d413d1e:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 c67e1ac1-417e-1542-8ce9-33d1a52b86b7:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 1d0fe520-21db-2d4c-9acf-53ecebf88158:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 5e1fa89d-f7c3-1e41-ada5-e69976b29505:1:37214
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 a234e4c9-8c15-5349-9d2b-8ac11875f9a3:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 920b01f0-516e-5340-8321-37069d098d7b:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 920b01f0-516e-5340-8321-37069d098d7b:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 920b01f0-516e-5340-8321-37069d098d7b:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 920b01f0-516e-5340-8321-37069d098d7b:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 920b01f0-516e-5340-8321-37069d098d7b:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 920b01f0-516e-5340-8321-37069d098d7b:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 920b01f0-516e-5340-8321-37069d098d7b:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 920b01f0-516e-5340-8321-37069d098d7b:1:37214
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > d956beef-a19d-0747-96ea-64931522d220:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset d956beef-a19d-0747-96ea-64931522d220:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset d956beef-a19d-0747-96ea-64931522d220:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 d956beef-a19d-0747-96ea-64931522d220:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 d956beef-a19d-0747-96ea-64931522d220:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 d956beef-a19d-0747-96ea-64931522d220:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe d956beef-a19d-0747-96ea-64931522d220:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 d956beef-a19d-0747-96ea-64931522d220:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 ccfb7ec3-ffbd-684b-b3fb-1aaac899d35a:1:37214
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 73e73042-2bd7-bd45-aa07-10ea7146b470:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 73e73042-2bd7-bd45-aa07-10ea7146b470:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 73e73042-2bd7-bd45-aa07-10ea7146b470:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 73e73042-2bd7-bd45-aa07-10ea7146b470:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 73e73042-2bd7-bd45-aa07-10ea7146b470:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 73e73042-2bd7-bd45-aa07-10ea7146b470:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 73e73042-2bd7-bd45-aa07-10ea7146b470:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 73e73042-2bd7-bd45-aa07-10ea7146b470:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 3b145a9f-ebfc-0a4c-a3ce-366059999852:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 8a03b065-d3d4-be4d-973a-0dceb85b5479:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 027f8391-c003-be4b-ae8d-a5018b38c9fe:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 9d72ba30-8380-6247-84bf-c026f611a636:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 9d72ba30-8380-6247-84bf-c026f611a636:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 9d72ba30-8380-6247-84bf-c026f611a636:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 9d72ba30-8380-6247-84bf-c026f611a636:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 9d72ba30-8380-6247-84bf-c026f611a636:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 9d72ba30-8380-6247-84bf-c026f611a636:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 9d72ba30-8380-6247-84bf-c026f611a636:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 9d72ba30-8380-6247-84bf-c026f611a636:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 48ef493e-4209-de46-8404-a98b0ed88e12:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 48ef493e-4209-de46-8404-a98b0ed88e12:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 48ef493e-4209-de46-8404-a98b0ed88e12:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 48ef493e-4209-de46-8404-a98b0ed88e12:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 48ef493e-4209-de46-8404-a98b0ed88e12:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 48ef493e-4209-de46-8404-a98b0ed88e12:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 48ef493e-4209-de46-8404-a98b0ed88e12:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 48ef493e-4209-de46-8404-a98b0ed88e12:1:37214
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 3db4a787-1f32-294d-815c-5a28d0bcb62b:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > f72ad443-502d-1744-9a4d-24ca63ee2df3:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset f72ad443-502d-1744-9a4d-24ca63ee2df3:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset f72ad443-502d-1744-9a4d-24ca63ee2df3:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 f72ad443-502d-1744-9a4d-24ca63ee2df3:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 f72ad443-502d-1744-9a4d-24ca63ee2df3:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 f72ad443-502d-1744-9a4d-24ca63ee2df3:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe f72ad443-502d-1744-9a4d-24ca63ee2df3:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 f72ad443-502d-1744-9a4d-24ca63ee2df3:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > b36ea75a-21cf-c246-baf9-3b8609b6b939:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset b36ea75a-21cf-c246-baf9-3b8609b6b939:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset b36ea75a-21cf-c246-baf9-3b8609b6b939:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 b36ea75a-21cf-c246-baf9-3b8609b6b939:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 b36ea75a-21cf-c246-baf9-3b8609b6b939:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 b36ea75a-21cf-c246-baf9-3b8609b6b939:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe b36ea75a-21cf-c246-baf9-3b8609b6b939:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 b36ea75a-21cf-c246-baf9-3b8609b6b939:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 66b5ebd5-083c-594e-8080-9ac269e1f1ac:1:37214
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 81f3829a-12cd-b146-ada4-80da8559471e:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 81f3829a-12cd-b146-ada4-80da8559471e:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 81f3829a-12cd-b146-ada4-80da8559471e:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 81f3829a-12cd-b146-ada4-80da8559471e:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 81f3829a-12cd-b146-ada4-80da8559471e:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 81f3829a-12cd-b146-ada4-80da8559471e:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 81f3829a-12cd-b146-ada4-80da8559471e:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 81f3829a-12cd-b146-ada4-80da8559471e:1:37214
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 78252562-f421-e743-b504-28ea3334fce3:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 78252562-f421-e743-b504-28ea3334fce3:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 78252562-f421-e743-b504-28ea3334fce3:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 78252562-f421-e743-b504-28ea3334fce3:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 78252562-f421-e743-b504-28ea3334fce3:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 78252562-f421-e743-b504-28ea3334fce3:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 78252562-f421-e743-b504-28ea3334fce3:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 78252562-f421-e743-b504-28ea3334fce3:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 4a562d2c-14b1-d746-93ea-96dae93e7cbd:1:37214
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 7.639 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 9131005a-4908-9a40-ac74-8f568b1b53d7:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 9131005a-4908-9a40-ac74-8f568b1b53d7:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 9131005a-4908-9a40-ac74-8f568b1b53d7:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 9131005a-4908-9a40-ac74-8f568b1b53d7:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 9131005a-4908-9a40-ac74-8f568b1b53d7:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 9131005a-4908-9a40-ac74-8f568b1b53d7:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 9131005a-4908-9a40-ac74-8f568b1b53d7:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 9131005a-4908-9a40-ac74-8f568b1b53d7:1:37214
[log] > [stream-controller]: PARSING->PARSED hls.js@latest:1:162561
[log] > [stream-controller]: Buffered main sn: 2 of level 3 [0.083,6.215] hls.js@latest:1:152073
[log] > [stream-controller]: PARSED->IDLE hls.js@latest:1:162561
[log] > [level-controller]: switching to level 1 from 3 hls.js@latest:1:130212
[log] > [level-controller]: Attempt loading level index 1 with URL-id 0 http://embed.wistia.com/deliveries/5d497d270d22fac0f300ae2acb63b425dcd47de2.m3u8 hls.js@latest:1:128997
[log] > [stream-controller]: IDLE->WAITING_LEVEL hls.js@latest:1:162561
[log] > [stream-controller]: Level 1 loaded [1,3], cc [0, 0] duration:7.639 hls.js@latest:1:178616
[log] > [stream-controller]: WAITING_LEVEL->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 3 cc: 0 of [1-3] level: 1, target: 6.303 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 3 p: -1 level: 1 id: 1
        discontinuity: false
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 6 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 3 of level 1 hls.js@latest:1:150309
[log] > [mp4-remuxer]: ISGenerated flag reset 9131005a-4908-9a40-ac74-8f568b1b53d7:1:57052
[log] > [mp4-remuxer]: reset next timestamp 9131005a-4908-9a40-ac74-8f568b1b53d7:1:56922
[log] > [mp4-remuxer]: ISGenerated flag reset 9131005a-4908-9a40-ac74-8f568b1b53d7:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 9131005a-4908-9a40-ac74-8f568b1b53d7:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 9131005a-4908-9a40-ac74-8f568b1b53d7:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 9131005a-4908-9a40-ac74-8f568b1b53d7:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 2 9131005a-4908-9a40-ac74-8f568b1b53d7:1:28186
[warn] > [mp4-remuxer]: No keyframe found out of 38 video samples 9131005a-4908-9a40-ac74-8f568b1b53d7:1:57940
[log] > [transmuxer.ts]: Flushed fragment 3 of level 1 9131005a-4908-9a40-ac74-8f568b1b53d7:1:37214
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [buffer-controller]: Removing [0,6] from the video SourceBuffer hls.js@latest:1:236320
[log] > [stream-controller]: PARSING->IDLE hls.js@latest:1:162561
[log] > [buffer-controller]: Removing [0,6] from the audio SourceBuffer hls.js@latest:1:236320
[log] > [level-controller]: switching to level 3 from 1 hls.js@latest:1:130212
[log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-3] level: 3, target: 6.553 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > demuxing in webworker hls.js@latest:1:163511
[log] > [transmuxer-interface, main]: Starting new transmux session for sn: 2 p: -1 level: 3 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 3.018594104308385 hls.js@latest:1:164938
[log] > [stream-controller]: Loaded fragment 2 of level 3 hls.js@latest:1:150309
[log] > 3c9652e2-2322-314c-bdf5-0291771563e2:1:5026
[log] > [mp4-remuxer]: ISGenerated flag reset 3c9652e2-2322-314c-bdf5-0291771563e2:1:57052
[log] > [mp4-remuxer]: initPTS & initDTS reset 3c9652e2-2322-314c-bdf5-0291771563e2:1:56809
[log] > manifest codec:undefined, ADTS type:2, samplingIndex:4 3c9652e2-2322-314c-bdf5-0291771563e2:1:10045
[log] > parsed codec:mp4a.40.2, rate:44100, channels:2 3c9652e2-2322-314c-bdf5-0291771563e2:1:10898
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 4 3c9652e2-2322-314c-bdf5-0291771563e2:1:28186
[warn] > [mp4-remuxer]: Dropped 70 out of 72 video samples due to a missing keyframe 3c9652e2-2322-314c-bdf5-0291771563e2:1:57709
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.2] hls.js@latest:1:186616
[log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f] hls.js@latest:1:186795
[log] > [transmuxer.ts]: Flushed fragment 2 of level 3 3c9652e2-2322-314c-bdf5-0291771563e2:1:37214
[log] > [stream-controller]: PARSING->PARSED hls.js@latest:1:162561
[log] > [buffer-controller]: Removing [0,3.018594104308385] from the audio SourceBuffer hls.js@latest:1:236320
[log] > [buffer-controller]: Removing [0,3.018594104308385] from the video SourceBuffer hls.js@latest:1:236320
[log] > [stream-controller]: Buffered main sn: 2 of level 3 [6.006,6.215] hls.js@latest:1:152073
[log] > [stream-controller]: PARSED->IDLE hls.js@latest:1:162561
[log] > [stream-controller]: Loading fragment 3 cc: 0 of [1-3] level: 3, target: 7.108 hls.js@latest:1:153411
[log] > [stream-controller]: IDLE->FRAG_LOADING hls.js@latest:1:162561
[log] > [stream-controller]: Loaded fragment 3 of level 3 hls.js@latest:1:150309
[log] > [tsdemuxer]: AAC: align PTS for overlapping frames by -23 2 3c9652e2-2322-314c-bdf5-0291771563e2:1:28186
[log] > [stream-controller]: FRAG_LOADING->PARSING hls.js@latest:1:162561
[log] > [transmuxer.ts]: Flushed fragment 3 of level 3 3c9652e2-2322-314c-bdf5-0291771563e2:1:37214
[log] > [stream-controller]: PARSING->PARSED hls.js@latest:1:162561
[log] > [stream-controller]: Buffered main sn: 3 of level 3 [6.006,7.639] hls.js@latest:1:152073
[log] > [stream-controller]: PARSED->IDLE hls.js@latest:1:162561
[log] > [level-controller]: switching to level 2 from 3 hls.js@latest:1:130212
[log] > [level-controller]: Attempt loading level index 2 with URL-id 0 http://embed.wistia.com/deliveries/5904592873fa23351af2fca5d72065c007e40cbe.m3u8 hls.js@latest:1:128997
[log] > [stream-controller]: IDLE->WAITING_LEVEL hls.js@latest:1:162561
[log] > [stream-controller]: Level 2 loaded [1,3], cc [0, 0] duration:7.639 hls.js@latest:1:178616
[log] > [stream-controller]: WAITING_LEVEL->IDLE hls.js@latest:1:162561
[log] > [level-controller]: switching to level 1 from 2 hls.js@latest:1:130212
[log] > [buffer-controller]: audio sourceBuffer now EOS hls.js@latest:1:232235
[log] > [buffer-controller]: video sourceBuffer now EOS hls.js@latest:1:232235
[log] > [stream-controller]: IDLE->ENDED hls.js@latest:1:162561
[log] > [buffer-controller]: Media source ended hls.js@latest:1:225084
[warn] > Playback stalling at @7.639385 due to low buffer (buffer=0.03495899999999974) hls.js@latest:1:168397
[warn] > [playback-rate-controller]: Stall detected, adjusting target latency hls.js@latest:1:111519

@robwalch
Copy link
Collaborator

robwalch commented Jun 2, 2021

Adding the "loop" attribute to the video element will make it automatically seek back to 0 when the end is reached. Out seeking event listener responds to that by clearing the loading state of recent fragments and preparing to check if more media needs to be reloaded:

https://github.com/video-dev/hls.js/blob/v1.0.5/src/controller/base-stream-controller.ts#L205-L206

On the next IDLE tick, before seeking is complete the player checks if the last segment needs to be loaded, because previousFrag was just cleared, and this stream has segments that do not start with keyframes, these lines will remove the loaded state of the second segment to ensure that the 3rd can be appended correctly (even though both are already loaded and appended):
https://github.com/video-dev/hls.js/blob/v1.0.5/src/controller/stream-controller.ts#L278-L289

This results in the buffer being removed and fragments reloaded as playback loops which is what results in the stalls.

@robwalch
Copy link
Collaborator

robwalch commented Jun 2, 2021

You can either:

  1. Use a 7 second MP4 to loop (HLS is a lot of overhead for a video gif)
  2. Repackage your HLS so that all segments start with a keyframe (that will prevent the behavior we're seeing here)

To fix the issue, we need to tweak one of the blocks above. There's no need to remove the second segment if the third is already loaded. there's also no need to switch to IDLE on seeking in the first place if the entire stream is already buffered.
I think the best solution would be one that adds less code and even removes some as bolting on more code for edge cases only adds to stream-controller complexity and code branching.

@robwalch robwalch added the missing-keyframe Stream has non-independent segments (no key-frames) or missing key-frame at start label Mar 28, 2022
@robwalch robwalch added Verify Fixed An unreleased bug fix has been merged and should be verified before closing. Bug and removed Confirmed labels Jul 20, 2022
@robwalch robwalch added this to the 1.2.0 milestone Jul 20, 2022
@robwalch
Copy link
Collaborator

robwalch commented Jul 20, 2022

Not a Contribution

To be clear, the fix in #4801 will not address looping of longer form streams whose duration cannot fit at once in the buffer. It will also not help with looping interruptions on streams with start gaps. See #4553 or file a new issue if these are problems you are encountering.

@robwalch robwalch removed the Verify Fixed An unreleased bug fix has been merged and should be verified before closing. label Jul 27, 2022
@robwalch robwalch moved this to Done in HLS.js Performance Dec 1, 2022
@robwalch robwalch moved this to Top priorities in HLS.js Release Planning and Backlog Dec 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug missing-keyframe Stream has non-independent segments (no key-frames) or missing key-frame at start
Projects
Development

No branches or pull requests

2 participants