-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Description
What do you want to do with Hls.js?
We are delivering live video using Multicast, which is a feature we provide to our enterprise customers.
While playing the stream in Safari, we are encountering an intermittent issue where a specific .ts segment appears to be corrupted or malformed. When this segment is parsed and appended to the buffer, the MediaSource gets closed and the video element throws the following error:
MediaErrorCode.DECODE
("Media failed to decode")
We have implemented an onError handler on the video element. When we detect error.code === MediaErrorCode.DECODE, we call hls.js recoverMediaError() followed by hls.startLoad() to recover playback.
This issue occurs infrequently, and our enterprise customer understands the benefits of using multicast for stream delivery. The same implementation works reliably in Chrome and Edge, and it previously worked correctly in Safari as well. However, we have recently started experiencing this issue specifically in Safari.
Based on our investigation, we observed that after calling recoverMediaError(), hls.js does not immediately refresh the playlist. Instead, it continues requesting .ts segments from the previous playlist before fetching an updated playlist. It appears that Safari does not tolerate re-fetching older segments, which results in a black screen on the video element.
captured the logs for further analysis: I have provided limited logs because of size contraint.
Please search 3Media failed to decode in below logs.
[Log] [log] > – "[stream-controller]:" – "Level 0 loaded [179786,179788][part-179788--1], cc [0, 0] duration:6.1708666666666545" (hls.js.js, line 33949)
[Log] [log] > – "[buffer-controller]:" – "Updating MediaSource duration to 104.267" (hls.js.js, line 19590)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179788 of level 0 (frag:[102.265-104.267]) cc: 0 [179786-179788], target: 102.265" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179788 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179788 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179788 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179788 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179788 of level 0 (frag:[102.100-104.355])" (hls.js.js, line 10172)
[Log] [log] > – "[stream-controller]:" – "Buffered main sn: 179788 of level 0 (frag:[102.100-104.355] > buffer:[0.014-104.102])" (hls.js.js, line 9165)
[Log] [log] > – "[stream-controller]:" – "PARSED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[level-controller]:" – "Loading level index 0 age 2.0 https://localstreaming.vbrick.com:3443/QADME10TV/playlist.m3u8" (hls.js.js, line 33359)
[Log] [log] > – "[level-controller]:" – "live playlist 0 REFRESHED 179789--1" (hls.js.js, line 17853)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4250392bps in 1974 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "Level 0 loaded [179787,179789][part-179789--1], cc [0, 0] duration:6.259577777777764" (hls.js.js, line 33949)
[Log] [log] > – "[buffer-controller]:" – "Updating MediaSource duration to 106.357" (hls.js.js, line 19590)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179789 of level 0 (frag:[104.355-106.357]) cc: 0 [179787-179789], target: 104.355" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179789 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179789 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179789 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179789 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179789 of level 0 (frag:[104.102-106.361])" (hls.js.js, line 10172)
[Log] [log] > – "[stream-controller]:" – "Buffered main sn: 179789 of level 0 (frag:[104.102-106.361] > buffer:[0.014-106.104])" (hls.js.js, line 9165)
[Log] [log] > – "[stream-controller]:" – "PARSED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[level-controller]:" – "Loading level index 0 age 2.0 https://localstreaming.vbrick.com:3443/QADME10TV/playlist.m3u8" (hls.js.js, line 33359)
[Log] [log] > – "[level-controller]:" – "live playlist 0 REFRESHED 179790--1" (hls.js.js, line 17853)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4250835bps in 1979 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "Level 0 loaded [179788,179790][part-179790--1], cc [0, 0] duration:6.26295555555555" (hls.js.js, line 33949)
[Log] [log] > – "[buffer-controller]:" – "Updating MediaSource duration to 108.363" (hls.js.js, line 19590)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179790 of level 0 (frag:[106.361-108.363]) cc: 0 [179788-179790], target: 106.361" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179790 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179790 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179790 of level 0 (frag:[106.104-108.387])" (hls.js.js, line 10172)
[Log] [log] > – "[stream-controller]:" – "Buffered main sn: 179790 of level 0 (frag:[106.104-108.387] > buffer:[0.014-108.106])" (hls.js.js, line 9165)
[Log] [log] > – "[stream-controller]:" – "PARSED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[level-controller]:" – "Loading level index 0 age 2.0 https://localstreaming.vbrick.com:3443/QADME10TV/playlist.m3u8" (hls.js.js, line 33359)
[Log] [log] > – "[level-controller]:" – "live playlist 0 REFRESHED 179791--1" (hls.js.js, line 17853)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4249216bps in 1980 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "Level 0 loaded [179789,179791][part-179791--1], cc [0, 0] duration:6.287666666666652" (hls.js.js, line 33949)
[Log] [log] > – "[buffer-controller]:" – "Updating MediaSource duration to 110.389" (hls.js.js, line 19590)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179791 of level 0 (frag:[108.387-110.389]) cc: 0 [179789-179791], target: 108.387" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179791 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179791 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179791 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179791 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179791 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179791 of level 0 (frag:[108.106-110.393])" (hls.js.js, line 10172)
[Log] [log] > – "[stream-controller]:" – "Buffered main sn: 179791 of level 0 (frag:[108.106-110.393] > buffer:[0.014-110.108])" (hls.js.js, line 9165)
[Log] [log] > – "[stream-controller]:" – "PARSED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[level-controller]:" – "Loading level index 0 age 2.0 https://localstreaming.vbrick.com:3443/QADME10TV/playlist.m3u8" (hls.js.js, line 33359)
[Log] [log] > – "[level-controller]:" – "live playlist 0 REFRESHED 179792--1" (hls.js.js, line 17853)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4249336bps in 1974 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "Level 0 loaded [179790,179792][part-179792--1], cc [0, 0] duration:6.291055555555545" (hls.js.js, line 33949)
[Log] [log] > – "[buffer-controller]:" – "Updating MediaSource duration to 112.395" (hls.js.js, line 19590)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179792 of level 0 (frag:[110.393-112.395]) cc: 0 [179790-179792], target: 110.393" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179792 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179792 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179792 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179792 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179792 of level 0 (frag:[110.108-112.355])" (hls.js.js, line 10172)
[Log] [log] > – "[stream-controller]:" – "Buffered main sn: 179792 of level 0 (frag:[110.108-112.355] > buffer:[0.014-112.110])" (hls.js.js, line 9165)
[Log] [log] > – "[stream-controller]:" – "PARSED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "Media source closed" (hls.js.js, line 18548)
[Error] vbrick-player media error – "3Media failed to decode"
[Info] vbrick-player configured to ignore decoding errors (sharedApp.js, line 104057)
[Log] [log] > – "recoverMediaError" (hls.js.js, line 36133)
[Log] [log] > – "detachMedia" (hls.js.js, line 35968)
[Log] [log] > – "[buffer-controller]:" – "media source detaching" (hls.js.js, line 18835)
[Log] [log] > – "[stream-controller]:" – "IDLE->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "IDLE->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "attachMedia" (hls.js.js, line 35950)
[Log] [log] > – "[buffer-controller]:" – "created media source: ManagedMediaSource" (hls.js.js, line 18733)
[Log] [log] > – "startLoad(106.14081476531112)" (hls.js.js, line 36038)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4249774bps in 1336 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "startLoad(-1)" (hls.js.js, line 36038)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4249774bps in 1335 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "IDLE->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Override startPosition with lastCurrentTime @106.141" (hls.js.js, line 33590)
[Log] [log] > – "[stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "IDLE->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "Media source opened" (hls.js.js, line 18530)
[Log] [log] > – "[buffer-controller]:" – "Updating MediaSource duration to 112.355" (hls.js.js, line 19590)
[Log] [log] > – "[buffer-controller]:" – "checkPendingTracks (pending: 0 codec events expected: 1) {}" (hls.js.js, line 19609)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179790 of level 0 (frag:[106.104-108.106]) cc: 0 [179790-179792], target: 106.141" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[transmuxer-interface]: Starting new transmux session for main sn: 179790 level: 0 id: 1↵ discontinuity: true↵ trackSwitch…" (hls.js.js, line 16762)
"[transmuxer-interface]: Starting new transmux session for main sn: 179790 level: 0 id: 1
discontinuity: true
trackSwitch: true
contiguous: false
accurateTimeOffset: true
timeOffset: 106.10362222222223
initSegmentChange: true"
[Log] [log] > – "[mp4-remuxer]:" – "ISGenerated flag reset" (hls.js.js, line 15047)
[Log] [log] > – "[mp4-remuxer]:" – "reset next timestamp" (hls.js.js, line 15042)
[Log] [log] > – "manifest codec:undefined, parsed codec:mp4a.40.2, channels:2, rate:48000 (ADTS object type:2 sampling index:3)" (hls.js.js, line 10864)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[mp4a.40.2//mp4a.40.2]" (hls.js.js, line 34603)
[Log] [log] > – "[stream-controller]:" – "Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f]" (hls.js.js, line 34626)
[Log] [log] > – "[buffer-controller]:" – "BUFFER_CODECS: "audio,video" (current SB count 0)" (hls.js.js, line 18950)
[Log] [log] > – "[buffer-controller]:" – "checkPendingTracks (pending: 2 codec events expected: 1) {"audio":{"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"…" (hls.js.js, line 19609)
"checkPendingTracks (pending: 2 codec events expected: 1) {"audio":{"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"mp4a.40.2","metadata":{"channelCount":2},"id":"main"},"video":{"listeners":[],"codec":"avc1.64001f","container":"video/mp4","metadata":{"width":1280,"height":720},"id":"main"}}"
[Log] [log] > – "[buffer-controller]:" – "creating sourceBuffer(audio/mp4;codecs=mp4a.40.2) {"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"mp4a.40.2","meta…" (hls.js.js, line 19676)
"creating sourceBuffer(audio/mp4;codecs=mp4a.40.2) {"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"mp4a.40.2","metadata":{"channelCount":2},"id":"main"}"
[Log] [log] > – "[buffer-controller]:" – "creating sourceBuffer(video/mp4;codecs=avc1.64001f) {"listeners":[],"codec":"avc1.64001f","container":"video/mp4","metadata":{"width":1280,"…" (hls.js.js, line 19676)
"creating sourceBuffer(video/mp4;codecs=avc1.64001f) {"listeners":[],"codec":"avc1.64001f","container":"video/mp4","metadata":{"width":1280,"height":720},"id":"main"}"
[Log] [log] > – "[buffer-controller]:" – "SourceBuffers created. Running queue: ↵video: (SourceBuffer) ↵audio: (SourceBuffer) ↵audiovideo: (none) }" (hls.js.js, line 19645)
"SourceBuffers created. Running queue:
video: (SourceBuffer)
audio: (SourceBuffer)
audiovideo: (none) }"
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179790 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179790 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179790 of level 0 (frag:[106.104-108.106])" (hls.js.js, line 10172)
[Log] [log] > – "[buffer-controller]:" – "Updating video SourceBuffer timestampOffset to -73500.4659 (sn: 179790 cc: 0)" (hls.js.js, line 19802)
[Log] [log] > – "[buffer-controller]:" – "Updating audio SourceBuffer timestampOffset to -73500.4659 (sn: 179790 cc: 0)" (hls.js.js, line 19802)
[Log] [log] > – "[stream-controller]:" – "Buffered main sn: 179790 of level 0 (frag:[106.104-108.106] > buffer:[106.360-108.106])" (hls.js.js, line 9165)
[Log] [log] > – "[stream-controller]:" – "PARSED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "adjusting start position by 0.21928549510555229 to match buffer start" (hls.js.js, line 34327)
[Log] [log] > – "[stream-controller]:" – "seek to target start position 106.36010026041667 from current time 0 buffer start 106.36010026041667" (hls.js.js, line 34332)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179791 of level 0 (frag:[108.106-110.108]) cc: 0 [179790-179792], target: 108.106" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Media seeking to 106.360, state: FRAG_LOADING, in buffer" (hls.js.js, line 8694)
[Log] [log] > – "[audio-stream-controller]:" – "Media seeking to 106.360, state: STOPPED, in buffer" (hls.js.js, line 8694)
[Log] [log] > – "[subtitle-stream-controller]:" – "Media seeking to 106.360, state: IDLE, in buffer" (hls.js.js, line 8694)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179791 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179791 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179791 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179791 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179791 of level 0 (frag:[108.106-110.108])" (hls.js.js, line 10172)
[Log] [log] > – "[buffer-controller]:" – "Media source closed" (hls.js.js, line 18548)
[Error] vbrick-player media error – "3Media failed to decode"
onError (sharedApp.js:104054)
VBrickPlayerComponent_Template_videogular_vgError_0_listener (sharedApp.js:104446:90)
executeListenerWithErrorHandling (angularChunk.js:45247)
wrapListenerIn_markDirtyAndPreventDefault (angularChunk.js:45230)
(anonymous function) (sharedApp.js:182554)
(anonymous function) (sharedApp.js:182521)
(anonymous function) (sharedApp.js:182492)
(anonymous function) (sharedApp.js:182312)
errorContext (sharedApp.js:186876)
(anonymous function) (sharedApp.js:182302)
emit (angularChunk.js:38751)
onVideoError (sharedApp.js:90784)
onInvokeTask (angularChunk.js:38883)
onInvokeTask (angularChunk.js:39204)
runTask (sharedApp.js:199571)
invokeTask (sharedApp.js:199879)
invokeTask (sharedApp.js:200497)
globalCallback (sharedApp.js:200538)
[Info] vbrick-player configured to ignore decoding errors (sharedApp.js, line 104057)
[Log] [log] > – "recoverMediaError" (hls.js.js, line 36133)
[Log] [log] > – "detachMedia" (hls.js.js, line 35968)
[Log] [log] > – "[buffer-controller]:" – "media source detaching" (hls.js.js, line 18835)
[Log] [log] > – "[stream-controller]:" – "PARSED->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "IDLE->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "attachMedia" (hls.js.js, line 35950)
[Log] [log] > – "[buffer-controller]:" – "created media source: ManagedMediaSource" (hls.js.js, line 18733)
[Log] [log] > – "startLoad(106.36010026041667)" (hls.js.js, line 36038)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4248261bps in 1138 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "startLoad(-1)" (hls.js.js, line 36038)
[Log] [log] > – "[level-controller]:" – "reload live playlist 4248261bps in 1138 ms" (hls.js.js, line 17937)
[Log] [log] > – "[stream-controller]:" – "IDLE->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Override startPosition with lastCurrentTime @106.360" (hls.js.js, line 33590)
[Log] [log] > – "[stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "IDLE->STOPPED" (hls.js.js, line 10212)
[Log] [log] > – "[subtitle-stream-controller]:" – "STOPPED->IDLE" (hls.js.js, line 10212)
[Log] [log] > – "[buffer-controller]:" – "Media source opened" (hls.js.js, line 18530)
[Log] [log] > – "[buffer-controller]:" – "Updating MediaSource duration to 112.355" (hls.js.js, line 19590)
[Log] [log] > – "[buffer-controller]:" – "checkPendingTracks (pending: 0 codec events expected: 1) {}" (hls.js.js, line 19609)
[Log] [log] > – "[stream-controller]:" – "Loading main sn: 179790 of level 0 (frag:[106.104-108.106]) cc: 0 [179790-179792], target: 106.36" (hls.js.js, line 9292)
[Log] [log] > – "[stream-controller]:" – "IDLE->FRAG_LOADING" (hls.js.js, line 10212)
[Log] [log] > – "[transmuxer-interface]: Starting new transmux session for main sn: 179790 level: 0 id: 1↵ discontinuity: true↵ trackSwitch…" (hls.js.js, line 16762)
"[transmuxer-interface]: Starting new transmux session for main sn: 179790 level: 0 id: 1
discontinuity: true
trackSwitch: true
contiguous: false
accurateTimeOffset: true
timeOffset: 106.10362222222223
initSegmentChange: true"
[Log] [log] > – "[mp4-remuxer]:" – "ISGenerated flag reset" (hls.js.js, line 15047)
[Log] [log] > – "[mp4-remuxer]:" – "reset next timestamp" (hls.js.js, line 15042)
[Log] [log] > – "manifest codec:undefined, parsed codec:mp4a.40.2, channels:2, rate:48000 (ADTS object type:2 sampling index:3)" (hls.js.js, line 10864)
[Log] [log] > – "[stream-controller]:" – "FRAG_LOADING->PARSING" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[mp4a.40.2//mp4a.40.2]" (hls.js.js, line 34603)
[Log] [log] > – "[stream-controller]:" – "Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.64001f]" (hls.js.js, line 34626)
[Log] [log] > – "[buffer-controller]:" – "BUFFER_CODECS: "audio,video" (current SB count 0)" (hls.js.js, line 18950)
[Log] [log] > – "[buffer-controller]:" – "checkPendingTracks (pending: 2 codec events expected: 1) {"audio":{"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"…" (hls.js.js, line 19609)
"checkPendingTracks (pending: 2 codec events expected: 1) {"audio":{"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"mp4a.40.2","metadata":{"channelCount":2},"id":"main"},"video":{"listeners":[],"codec":"avc1.64001f","container":"video/mp4","metadata":{"width":1280,"height":720},"id":"main"}}"
[Log] [log] > – "[buffer-controller]:" – "creating sourceBuffer(audio/mp4;codecs=mp4a.40.2) Queued {"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"mp4a.40.2…" (hls.js.js, line 19676)
"creating sourceBuffer(audio/mp4;codecs=mp4a.40.2) Queued {"listeners":[],"codec":"mp4a.40.2","container":"audio/mp4","levelCodec":"mp4a.40.2","metadata":{"channelCount":2},"id":"main"}"
[Log] [log] > – "[buffer-controller]:" – "creating sourceBuffer(video/mp4;codecs=avc1.64001f) Queued {"listeners":[],"codec":"avc1.64001f","container":"video/mp4","metadata":{"width"…" (hls.js.js, line 19676)
"creating sourceBuffer(video/mp4;codecs=avc1.64001f) Queued {"listeners":[],"codec":"avc1.64001f","container":"video/mp4","metadata":{"width":1280,"height":720},"id":"main"}"
[Log] [log] > – "[buffer-controller]:" – "SourceBuffers created. Running queue: ↵video: (SourceBuffer) append-video, async-blocker↵audio: (SourceBuffer) append-audio, async-blocke…" (hls.js.js, line 19645)
"SourceBuffers created. Running queue:
video: (SourceBuffer) append-video, async-blocker
audio: (SourceBuffer) append-audio, async-blocker
audiovideo: (none) }"
[Log] [log] > – "[buffer-controller]:" – "Updating video SourceBuffer timestampOffset to -73500.4659 (sn: 179791 cc: 0)" (hls.js.js, line 19802)
[Log] [log] > – "[buffer-controller]:" – "Updating audio SourceBuffer timestampOffset to -73500.4659 (sn: 179791 cc: 0)" (hls.js.js, line 19802)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "video" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[buffer-controller]:" – "queuing "audio" append sn: 179790 of level 0 cc: 0" (hls.js.js, line 19259)
[Log] [log] > – "[stream-controller]:" – "Loaded main sn: 179790 of level 0" (hls.js.js, line 8985)
[Log] [log] > – "[transmuxer.ts]: Flushed main sn: 179790 of level 0" (hls.js.js, line 16377)
[Log] [log] > – "[stream-controller]:" – "PARSING->PARSED" (hls.js.js, line 10212)
[Log] [log] > – "[stream-controller]:" – "Parsed main sn: 179790 of level 0 (frag:[106.104-108.106])" (hls.js.js, line 10172)
Image for the network tab and highlighted how ts segments gets repeated.

Need some help to have a workaround for this. Thanks a lot in advance.
What have you tried so far?
I tried to give some nudge but ended up with no luck.