hls.js
hls.js copied to clipboard
m3u8 audio file not working in Chrome
What version of Hls.js are you using?
v1.1.5
What browser (including version) are you using?
Chrome Version 101.0.4951.64 (Official Build) (x86_64)
What OS (including version) are you using?
MacOS Monterey 12.4
Test stream
No response
Configuration
{
debug: true,
enableWorker: false
}
Additional player setup steps
No response
Checklist
- [X] The issue observed is not already reported by searching on Github under https://github.com/video-dev/hls.js/issues
- [X] The issue occurs in the stable client (latest release) on https://hls-js.netlify.com/demo and not just on my page
- [X] The issue occurs in the latest client (main branch) on https://hls-js-dev.netlify.com/demo and not just on my page
- [X] The stream has correct Access-Control-Allow-Origin headers (CORS)
- [X] There are no network errors such as 404s in the browser console when trying to play the stream
Steps to reproduce
- Having a m3u8 file with the following configuration:
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-PLAYLIST-TYPE:EVENT
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:3
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-START:TIME-OFFSET=0
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-MAP:URI="7097223626041309818-audio1.m4s",BYTERANGE="744@0"
#EXTINF:2.005, no desc
#EXT-X-BYTERANGE:14191@744
7097223626041309818-audio1.m4s
#EXTINF:2.005, no desc
#EXT-X-BYTERANGE:15715@14935
7097223626041309818-audio1.m4s
#EXTINF:2.005, no desc
#EXT-X-BYTERANGE:17082@30650
7097223626041309818-audio1.m4s
#EXTINF:2.005, no desc
#EXT-X-BYTERANGE:20361@47732
7097223626041309818-audio1.m4s
- Try to load this file using hls in Google Chrome
Expected behaviour
m3u8 audio file loads correctly in Google Chrome. On Firefox and Safari work smoothly
What actually happened?
Audio file never loads and it keeps loading and then stopped.
Console output
[log] >
hls.js@latest:1 [log] > stopLoad
hls.js@latest:1 [log] > loadSource:http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [stream-controller]: Trigger BUFFER_RESET
hls.js@latest:1 [log] > attachMedia
hls.js@latest:1 [log] > [level-controller]: manifest loaded, 1 level(s) found, first bitrate: 0
hls.js@latest:1 [log] > 1 bufferCodec event(s) expected
hls.js@latest:1 [log] > startLoad(-1)
hls.js@latest:1 [log] > [level-controller]: switching to level 0 from -1
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [stream-controller]: STOPPED->IDLE
hls.js@latest:1 [log] > [subtitle-stream-controller]: STOPPED->IDLE
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 333 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [stream-controller]: Live playlist sliding: 0.00 start-sn: 1->1 prev-sn: na fragments: 4
hls.js@latest:1 [log] > [stream-controller]: Start time offset 0 found in playlist, adjust startPosition to 0
hls.js@latest:1 [log] > [buffer-controller]: Media source opened
hls.js@latest:1 [log] > [buffer-controller]: Updating Media Source duration to 8.020
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 666 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [stream-controller]: Live playlist sliding: 0.00 start-sn: 1->1 prev-sn: na fragments: 4
hls.js@latest:1 [log] > [stream-controller]: Loading fragment initSegment cc: 0 level: 0, target: 0
hls.js@latest:1 [log] > [stream-controller]: IDLE->FRAG_LOADING
hls.js@latest:1 [log] > [stream-controller]: FRAG_LOADING->IDLE
hls.js@latest:1 [log] > [stream-controller]: Buffered main sn: initSegment of level 0
hls.js@latest:1 [log] > [stream-controller]: Loading fragment 1 cc: 0 of [1-4] level: 0, target: 0
hls.js@latest:1 [log] > [stream-controller]: IDLE->FRAG_LOADING
hls.js@latest:1 [log] > [transmuxer-interface, main]: Starting new transmux session for sn: 1 p: -1 level: 0 id: 1
discontinuity: true
trackSwitch: true
contiguous: false
accurateTimeOffset: false
timeOffset: 0
initSegmentChange: true
hls.js@latest:1 [log] > [stream-controller]: FRAG_LOADING->PARSING
hls.js@latest:1 [log] > [stream-controller]: Init audio buffer, container:audio/mp4, codecs[selected/level/parsed]=[//mp4a.40.5]
hls.js@latest:1 [log] > [buffer-controller]: creating sourceBuffer(audio/mp4;codecs=mp4a.40.5)
hls.js@latest:1 [log] > [audio-stream-controller]: InitPTS for cc: 0 found from main: 0.662
hls.js@latest:1 [log] > [stream-controller]: Loaded fragment 1 of level 0
hls.js@latest:1 [log] > [transmuxer.ts]: Flushed fragment 1 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSING->PARSED
hls.js@latest:1 [log] > [buffer-controller]: Media source ended
hls.js@latest:1 [log] > failed to get media.buffered DOMException: Failed to read the 'buffered' property from 'SourceBuffer': This SourceBuffer has been removed from the parent media source.
at Function.t.getBuffered (https://cdn.jsdelivr.net/npm/hls.js@latest:1:138510)
at Object.onComplete (https://cdn.jsdelivr.net/npm/hls.js@latest:1:233244)
at t.e._onSBUpdateEnd (https://cdn.jsdelivr.net/npm/hls.js@latest:1:238538)
hls.js@latest:1 [log] > [stream-controller]: Buffered main sn: 1 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSED->IDLE
hls.js@latest:1 [log] > [stream-controller]: Loading fragment 2 cc: 0 of [1-4] level: 0, target: 2.005
hls.js@latest:1 [log] > [stream-controller]: IDLE->FRAG_LOADING
hls.js@latest:1 [log] > [buffer-controller]: Media source closed
hls.js@latest:1 [log] > [stream-controller]: FRAG_LOADING->PARSING
hls.js@latest:1 [log] > [stream-controller]: Loaded fragment 2 of level 0
hls.js@latest:1 [log] > [transmuxer.ts]: Flushed fragment 2 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSING->PARSED
hls.js@latest:1 [log] > [stream-controller]: Buffered main sn: 2 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSED->IDLE
hls.js@latest:1 [log] > [stream-controller]: Loading fragment 3 cc: 0 of [1-4] level: 0, target: 4.01
hls.js@latest:1 [log] > [stream-controller]: IDLE->FRAG_LOADING
hls.js@latest:1 [log] > [stream-controller]: FRAG_LOADING->PARSING
hls.js@latest:1 [log] > [stream-controller]: Loaded fragment 3 of level 0
hls.js@latest:1 [log] > [transmuxer.ts]: Flushed fragment 3 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSING->PARSED
hls.js@latest:1 [log] > [stream-controller]: Buffered main sn: 3 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSED->IDLE
hls.js@latest:1 [log] > [stream-controller]: Loading fragment 4 cc: 0 of [1-4] level: 0, target: 6.015
hls.js@latest:1 [log] > [stream-controller]: IDLE->FRAG_LOADING
hls.js@latest:1 [log] > [stream-controller]: FRAG_LOADING->PARSING
hls.js@latest:1 [log] > [stream-controller]: Loaded fragment 4 of level 0
hls.js@latest:1 [log] > [transmuxer.ts]: Flushed fragment 4 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSING->PARSED
hls.js@latest:1 [log] > [stream-controller]: Buffered main sn: 4 of level 0
hls.js@latest:1 [log] > [stream-controller]: PARSED->IDLE
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 999 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 1332 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 1665 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 1998 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 2331 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 2664 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 2997 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 3330 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 3663 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 3996 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 4329 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
hls.js@latest:1 [log] > [level-controller]: Attempt loading level index 0 at sn undefined part undefined with URL-id 0 http://localhost:8080/7097223626041309818-audio1.m3u8
hls.js@latest:1 [log] > [level-controller]: live playlist 0 MISSED
hls.js@latest:1 [log] > [level-controller]: reload live playlist 0 in 4662 ms
hls.js@latest:1 [log] > [stream-controller]: Level 0 loaded [1,4], cc [0, 0] duration:8.02
Chrome media internals output
PLAYER OPTIONS
render_id: 2704
player_id: 9462
created: 2022-06-01 03:52:01.658 UTC
origin_url: file:///
kFrameUrl: file:///Users/mdastugu/Downloads/hlsjs.html
kFrameTitle:
url: blob:null/3745b15b-40d4-48d5-98fe-36df4dc30986
kTextTracks:
info: ChunkDemuxer
kRendererName: RendererImpl
pipeline_state: kStopped
error: [object Object]
duration: 8.02
LOG
{
"properties": {
"render_id": 2704,
"player_id": 9462,
"created": "2022-06-01 03:52:01.658 UTC",
"origin_url": "file:///",
"kFrameUrl": "file:///Users/mdastugu/Downloads/hlsjs.html",
"kFrameTitle": "",
"url": "blob:null/3745b15b-40d4-48d5-98fe-36df4dc30986",
"kTextTracks": [],
"info": "ChunkDemuxer",
"kRendererName": "RendererImpl",
"pipeline_state": "kStopped",
"error": {
"code": 16,
"data": {},
"group": "PipelineStatus",
"message": "",
"stack": [
{
"file": "media/filters/chunk_demuxer.cc",
"line": 945
}
]
},
"duration": 8.02
},
"events": [
{
"time": 0,
"key": "created",
"value": "2022-06-01 03:52:01.658 UTC"
},
{
"time": 0.171999990940094,
"key": "origin_url",
"value": "file:///"
},
{
"time": 0.17599999904632568,
"key": "kFrameUrl",
"value": "file:///Users/mdastugu/Downloads/hlsjs.html"
},
{
"time": 0.17800003290176392,
"key": "kFrameTitle",
"value": ""
},
{
"time": 0.23600000143051147,
"key": "url",
"value": "blob:null/3745b15b-40d4-48d5-98fe-36df4dc30986"
},
{
"time": 0.2409999966621399,
"key": "kTextTracks",
"value": []
},
{
"time": 0.2630000114440918,
"key": "info",
"value": "ChunkDemuxer"
},
{
"time": 0.27500003576278687,
"key": "kRendererName",
"value": "RendererImpl"
},
{
"time": 0.32899999618530273,
"key": "pipeline_state",
"value": "kStarting"
},
{
"time": 66.83899998664856,
"key": "error",
"value": "Append: stream parsing failed. Data size=744 append_window_start=0 append_window_end=inf"
},
{
"time": 68.14899998903275,
"key": "error",
"value": {
"code": 16,
"data": {},
"group": "PipelineStatus",
"message": "",
"stack": [
{
"file": "media/filters/chunk_demuxer.cc",
"line": 945
}
]
}
},
{
"time": 68.29800003767014,
"key": "pipeline_state",
"value": "kStopping"
},
{
"time": 68.30099999904633,
"key": "pipeline_state",
"value": "kStopped"
},
{
"time": 10.471000015735626,
"key": "duration",
"value": 8.02
}
]
}