hls.js icon indicating copy to clipboard operation
hls.js copied to clipboard

dolby vision proflie 5 dvh1 can't play normally in edge of win11 and safari of mac big sur

Open jingyu45 opened this issue 3 years ago • 1 comments

What version of Hls.js are you using?

demo v1.1.5

What browser (including version) are you using?

Edge Version 98.0.1108.62

What OS (including version) are you using?

windows 11 pro

Test stream

https://ott.dolby.com/User/jxyu/PlayerTestSignal/HLS/Manifest/Holi_25fps_aac_dovi_1.m3u8

Configuration

{
"debug":true,
"enableWorker":true,
"lowLatencyMode":true,
"backBufferLength":90
}

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

  1. enable the "media Foundation" on Edge.
  2. use edge in win11 open the demo https://hls-js.netlify.com/demo
  3. put the dolby vision profile 5 test signal to the input box and click "Apply"

Expected behaviour

play normally

What actually happened?

can't play video. report error: "CHUNK_DEMUXER_ERROR_APPEND_FAILED: Video stream codec dolbyvision doesn't match SourceBuffer codecs."

(you can solve this issue through adding 'dvh1:true,' in const sampleEntryCodesISO)

Console output

hls.ts:339 [log] > loadSource:https://ott.dolby.com/User/jxyu/PlayerTestSignal/HLS/Manifest/Holi_25fps_aac_dovi_1.m3u8
stream-controller.ts:539 [log] > [stream-controller]: Trigger BUFFER_RESET
hls.ts:310 [log] > attachMedia
buffer-controller.ts:742 [log] > [buffer-controller]: Media source opened
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: STOPPED->IDLE
level-controller.ts:172 [log] > [level-controller]: manifest loaded, 1 level(s) found, first bitrate: 4107097
buffer-controller.ts:136 [log] > 1 bufferCodec event(s) expected
hls.ts:361 [log] > startLoad(-1)
level-controller.ts:251 [log] > [level-controller]: switching to level 0 from -1
audio-track-controller.ts:134 [log] > [audio-track-controller]: Updating audio tracks, 1 track(s) found in "audio/mp4a/2ch" group-id
audio-track-controller.ts:185 [log] > [audio-track-controller]: Now switching to audio-track index 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: STOPPED->IDLE
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->WAITING_TRACK
level-controller.ts:524 [log] > [level-controller]: Attempt loading level index 0 with URL-id 0 https://ott.dolby.com/User/jxyu/PlayerTestSignal/HLS/Video/Holi_720p_25fps_h265_str_sub.m3u8
base-stream-controller.ts:1381 [log] > [stream-controller]: STOPPED->IDLE
audio-track-controller.ts:258 [log] > [audio-track-controller]: loading audio-track playlist for id: 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: WAITING_TRACK->STOPPED
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: STOPPED->WAITING_TRACK
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: IDLE->STOPPED
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: STOPPED->IDLE
stream-controller.ts:603 [log] > [stream-controller]: Level 0 loaded [0,10], cc [0, 0] duration:85.12
buffer-controller.ts:635 [log] > [buffer-controller]: Updating Media Source duration to 85.120
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment initSegment cc: 0 level: 0, target: 0
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
audio-track-controller.ts:87 [log] > [audio-track-controller]: audioTrack 0 loaded [0-10]
audio-stream-controller.ts:425 [log] > [audio-stream-controller]: Track 0 loaded [0,10],duration:85.184
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: WAITING_TRACK->IDLE
base-stream-controller.ts:588 [log] > [audio-stream-controller]: Loading fragment initSegment cc: 0 track: 0, target: 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->IDLE
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: initSegment of level 0 
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment 0 cc: 0 of [0-10] level: 0, target: 0
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->IDLE
base-stream-controller.ts:499 [log] > [audio-stream-controller]: Buffered audio sn: initSegment of track 0 
base-stream-controller.ts:588 [log] > [audio-stream-controller]: Loading fragment 0 cc: 0 of [0-10] track: 0, target: 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
transmuxer-interface.ts:67 [log] > demuxing in webworker
audio-stream-controller.ts:532 [log] > Unknown video PTS for cc 0, waiting for video PTS before demuxing audio frag 0 of [0 ,10],track 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->WAITING_INIT_PTS
base-stream-controller.ts:364 [log] > [audio-stream-controller]: Loaded fragment 0 of level 0
​ [log] >
transmuxer-interface.ts:67 [log] > demuxing in webworker
transmuxer-interface.ts:187 [log] > [transmuxer-interface, main]: Starting new transmux session for sn: 0 p: -1 level: 0 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 0
        initSegmentChange: true
base-stream-controller.ts:364 [log] > [stream-controller]: Loaded fragment 0 of level 0
​ [log] >
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
stream-controller.ts:1226 [log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.42e01e]
buffer-controller.ts:704 [log] > [buffer-controller]: creating sourceBuffer(video/mp4;codecs=avc1.42e01e)
audio-stream-controller.ts:113 [log] > [audio-stream-controller]: InitPTS for cc: 0 found from main: 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: WAITING_INIT_PTS->FRAG_LOADING
transmuxer-interface.ts:187 [log] > [transmuxer-interface, audio]: Starting new transmux session for sn: 0 p: -1 level: 0 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: false
        timeOffset: 0
        initSegmentChange: true
​ [log] > [transmuxer.ts]: Flushed fragment 0 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
audio-stream-controller.ts:812 [log] > [audio-stream-controller]: Switching audio track : flushing all audio
stream-controller.ts:774 [log] > [stream-controller]: Switching on alternate audio, use video.buffered to schedule main fragment loading
audio-stream-controller.ts:760 [log] > [audio-stream-controller]: Init audio buffer, container:audio/mp4, codecs[parsed]=[mp4a.40.2]
​ [log] > [transmuxer.ts]: Flushed fragment 0 of level 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSING->PARSED
buffer-controller.ts:777 
        
       [error] > [buffer-controller]: video SourceBuffer error Event
_onSBUpdateError @ buffer-controller.ts:777
main.js:725 
        
       Error event: Object
(匿名) @ main.js:725
buffer-controller.ts:384 
        
       [error] > [buffer-controller]: Error encountered while trying to append to the video SourceBuffer Event
onError @ buffer-controller.ts:384
main.js:725 
        
       Error event: Object
(匿名) @ main.js:725
buffer-controller.ts:760 [log] > [buffer-controller]: Media source ended
main.js:1005 
        
       The video could not be loaded, either because the server or network failed or because the format is not supported - CHUNK_DEMUXER_ERROR_APPEND_FAILED: Video stream codec dolbyvision doesn't match SourceBuffer codecs.
handleVideoEvent @ main.js:1005
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at Object.onComplete (https://hls-js.netlify.app/dist/hls.js:4528:97)
    at BufferController._onSBUpdateEnd (https://hls-js.netlify.app/dist/hls.js:4904:15)
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3348:333)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at onUnblocked (https://hls-js.netlify.app/dist/hls.js:4637:18)
    at https://hls-js.netlify.app/dist/hls.js:4994:7
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 0 of level 0 
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at Function.bufferInfo (https://hls-js.netlify.app/dist/hls.js:22844:38)
    at StreamController.getFwdBufferInfo (https://hls-js.netlify.app/dist/hls.js:3595:88)
    at StreamController.doTickIdle (https://hls-js.netlify.app/dist/hls.js:9520:27)
    at StreamController.doTick (https://hls-js.netlify.app/dist/hls.js:9429:14)
    at StreamController.tick (https://hls-js.netlify.app/dist/hls.js:22290:12)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3350:10)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment 1 cc: 0 of [0-10] level: 0, target: 8
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
buffer-controller.ts:756 [log] > [buffer-controller]: Media source closed
base-stream-controller.ts:364 [log] > [stream-controller]: Loaded fragment 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
buffer-operation-queue.ts:62 
        
       [warn] > [buffer-operation-queue]: Unhandled exception executing the current operation
executeNext @ buffer-operation-queue.ts:62
buffer-controller.ts:384 
        
       [error] > [buffer-controller]: Error encountered while trying to append to the video SourceBuffer DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer has been removed from the parent media source.
    at BufferController.appendExecutor (https://hls-js.netlify.app/dist/hls.js:4968:8)
    at Object.execute (https://hls-js.netlify.app/dist/hls.js:4507:16)
    at BufferOperationQueue.executeNext (https://hls-js.netlify.app/dist/hls.js:5113:19)
    at BufferOperationQueue.append (https://hls-js.netlify.app/dist/hls.js:5076:12)
    at BufferController.onBufferAppending (https://hls-js.netlify.app/dist/hls.js:4573:20)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at StreamController.bufferFragmentData (https://hls-js.netlify.app/dist/hls.js:3554:14)
    at StreamController._handleTransmuxComplete (https://hls-js.netlify.app/dist/hls.js:10337:14)
onError @ buffer-controller.ts:384
main.js:725 
        
       Error event: Object
(匿名) @ main.js:725
​ [log] > [transmuxer.ts]: Flushed fragment 1 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3348:333)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at onUnblocked (https://hls-js.netlify.app/dist/hls.js:4637:18)
    at https://hls-js.netlify.app/dist/hls.js:4994:7
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 1 of level 0 
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at Function.bufferInfo (https://hls-js.netlify.app/dist/hls.js:22844:38)
    at StreamController.getFwdBufferInfo (https://hls-js.netlify.app/dist/hls.js:3595:88)
    at StreamController.doTickIdle (https://hls-js.netlify.app/dist/hls.js:9520:27)
    at StreamController.doTick (https://hls-js.netlify.app/dist/hls.js:9429:14)
    at StreamController.tick (https://hls-js.netlify.app/dist/hls.js:22290:12)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3350:10)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment 2 cc: 0 of [0-10] level: 0, target: 16
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:364 [log] > [stream-controller]: Loaded fragment 2 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
buffer-operation-queue.ts:62 
        
       [warn] > [buffer-operation-queue]: Unhandled exception executing the current operation
executeNext @ buffer-operation-queue.ts:62
buffer-controller.ts:384 
        
       [error] > [buffer-controller]: Error encountered while trying to append to the video SourceBuffer DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer has been removed from the parent media source.
    at BufferController.appendExecutor (https://hls-js.netlify.app/dist/hls.js:4968:8)
    at Object.execute (https://hls-js.netlify.app/dist/hls.js:4507:16)
    at BufferOperationQueue.executeNext (https://hls-js.netlify.app/dist/hls.js:5113:19)
    at BufferOperationQueue.append (https://hls-js.netlify.app/dist/hls.js:5076:12)
    at BufferController.onBufferAppending (https://hls-js.netlify.app/dist/hls.js:4573:20)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at StreamController.bufferFragmentData (https://hls-js.netlify.app/dist/hls.js:3554:14)
    at StreamController._handleTransmuxComplete (https://hls-js.netlify.app/dist/hls.js:10337:14)
onError @ buffer-controller.ts:384
main.js:725 
        
       Error event: Object
(匿名) @ main.js:725
​ [log] > [transmuxer.ts]: Flushed fragment 2 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3348:333)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at onUnblocked (https://hls-js.netlify.app/dist/hls.js:4637:18)
    at https://hls-js.netlify.app/dist/hls.js:4994:7
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 2 of level 0 
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at Function.bufferInfo (https://hls-js.netlify.app/dist/hls.js:22844:38)
    at StreamController.getFwdBufferInfo (https://hls-js.netlify.app/dist/hls.js:3595:88)
    at StreamController.doTickIdle (https://hls-js.netlify.app/dist/hls.js:9520:27)
    at StreamController.doTick (https://hls-js.netlify.app/dist/hls.js:9429:14)
    at StreamController.tick (https://hls-js.netlify.app/dist/hls.js:22290:12)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3350:10)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment 3 cc: 0 of [0-10] level: 0, target: 24
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:364 [log] > [stream-controller]: Loaded fragment 3 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
buffer-operation-queue.ts:62 
        
       [warn] > [buffer-operation-queue]: Unhandled exception executing the current operation
executeNext @ buffer-operation-queue.ts:62
buffer-controller.ts:384 
        
       [error] > [buffer-controller]: Error encountered while trying to append to the video SourceBuffer DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer has been removed from the parent media source.
    at BufferController.appendExecutor (https://hls-js.netlify.app/dist/hls.js:4968:8)
    at Object.execute (https://hls-js.netlify.app/dist/hls.js:4507:16)
    at BufferOperationQueue.executeNext (https://hls-js.netlify.app/dist/hls.js:5113:19)
    at BufferOperationQueue.append (https://hls-js.netlify.app/dist/hls.js:5076:12)
    at BufferController.onBufferAppending (https://hls-js.netlify.app/dist/hls.js:4573:20)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at StreamController.bufferFragmentData (https://hls-js.netlify.app/dist/hls.js:3554:14)
    at StreamController._handleTransmuxComplete (https://hls-js.netlify.app/dist/hls.js:10337:14)
onError @ buffer-controller.ts:384
main.js:725 
        
       Error event: Object
(匿名) @ main.js:725
​ [log] > [transmuxer.ts]: Flushed fragment 3 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3348:333)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at onUnblocked (https://hls-js.netlify.app/dist/hls.js:4637:18)
    at https://hls-js.netlify.app/dist/hls.js:4994:7
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 3 of level 0 
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE
buffer-helper.ts:174 [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.getBuffered (https://hls-js.netlify.app/dist/hls.js:22952:20)
    at Function.bufferInfo (https://hls-js.netlify.app/dist/hls.js:22844:38)
    at StreamController.getFwdBufferInfo (https://hls-js.netlify.app/dist/hls.js:3595:88)
    at StreamController.doTickIdle (https://hls-js.netlify.app/dist/hls.js:9520:27)
    at StreamController.doTick (https://hls-js.netlify.app/dist/hls.js:9429:14)
    at StreamController.tick (https://hls-js.netlify.app/dist/hls.js:22290:12)
    at StreamController.fragBufferedComplete (https://hls-js.netlify.app/dist/hls.js:3350:10)
    at StreamController.onFragBuffered (https://hls-js.netlify.app/dist/hls.js:10063:10)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment 4 cc: 0 of [0-10] level: 0, target: 32
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:364 [log] > [stream-controller]: Loaded fragment 4 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
buffer-operation-queue.ts:62 
        
       [warn] > [buffer-operation-queue]: Unhandled exception executing the current operation
executeNext @ buffer-operation-queue.ts:62
buffer-controller.ts:384 
        
       [error] > [buffer-controller]: Error encountered while trying to append to the video SourceBuffer DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer has been removed from the parent media source.
    at BufferController.appendExecutor (https://hls-js.netlify.app/dist/hls.js:4968:8)
    at Object.execute (https://hls-js.netlify.app/dist/hls.js:4507:16)
    at BufferOperationQueue.executeNext (https://hls-js.netlify.app/dist/hls.js:5113:19)
    at BufferOperationQueue.append (https://hls-js.netlify.app/dist/hls.js:5076:12)
    at BufferController.onBufferAppending (https://hls-js.netlify.app/dist/hls.js:4573:20)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at StreamController.bufferFragmentData (https://hls-js.netlify.app/dist/hls.js:3554:14)
    at StreamController._handleTransmuxComplete (https://hls-js.netlify.app/dist/hls.js:10337:14)
onError @ buffer-controller.ts:384
buffer-controller.ts:407 
        
       [error] > [buffer-controller]: Failed 3 times to append segment in sourceBuffer
onError @ buffer-controller.ts:407
main.js:725 
        
       Error event: Object
(匿名) @ main.js:725
main.js:838 
        
       Fatal error : bufferAppendError
(匿名) @ main.js:838
hls.ts:392 [log] > recoverMediaError
hls.ts:319 [log] > detachMedia
buffer-controller.ts:162 [log] > [buffer-controller]: media source detaching
buffer-controller.ts:226 
        
       [warn] > [buffer-controller]: Failed to reset the video buffer DOMException: Failed to execute 'removeSourceBuffer' on 'MediaSource': The SourceBuffer provided is not contained in this MediaSource.
    at https://hls-js.netlify.app/dist/hls.js:4379:32
    at Array.forEach (<anonymous>)
    at BufferController.onBufferReset (https://hls-js.netlify.app/dist/hls.js:4371:33)
    at BufferController.onMediaDetaching (https://hls-js.netlify.app/dist/hls.js:4336:12)
    at EventEmitter.emit (https://hls-js.netlify.app/dist/hls.js:310:33)
    at Hls.emit (https://hls-js.netlify.app/dist/hls.js:17266:26)
    at Hls.trigger (https://hls-js.netlify.app/dist/hls.js:17271:19)
    at Hls.detachMedia (https://hls-js.netlify.app/dist/hls.js:17334:10)
    at Hls.recoverMediaError (https://hls-js.netlify.app/dist/hls.js:17412:10)
    at handleMediaError (https://hls-js.netlify.app/dist/hls-demo.js:2480:11)
(匿名) @ buffer-controller.ts:226
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->STOPPED
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSED->STOPPED
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: IDLE->STOPPED
hls.ts:310 [log] > attachMedia
buffer-controller.ts:742 [log] > [buffer-controller]: Media source opened
buffer-controller.ts:635 [log] > [buffer-controller]: Updating Media Source duration to 85.120
base-stream-controller.ts:1381 [log] > [stream-controller]: STOPPED->IDLE
base-stream-controller.ts:588 [log] > [stream-controller]: Loading fragment 0 cc: 0 of [0-10] level: 0, target: 0
base-stream-controller.ts:1381 [log] > [stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: STOPPED->WAITING_TRACK
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: WAITING_TRACK->WAITING_INIT_PTS
base-stream-controller.ts:1381 [log] > [subtitle-stream-controller]: STOPPED->IDLE
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: WAITING_INIT_PTS->IDLE
base-stream-controller.ts:588 [log] > [audio-stream-controller]: Loading fragment 0 cc: 0 of [0-10] track: 0, target: 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
transmuxer-interface.ts:67 [log] > demuxing in webworker
transmuxer-interface.ts:187 [log] > [transmuxer-interface, audio]: Starting new transmux session for sn: 0 p: -1 level: 0 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: false
        timeOffset: 0
        initSegmentChange: true
base-stream-controller.ts:364 [log] > [audio-stream-controller]: Loaded fragment 0 of level 0
848f18a3-381c-43ce-8b98-a5248c60722f:603 [log] >
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
audio-stream-controller.ts:760 [log] > [audio-stream-controller]: Init audio buffer, container:audio/mp4, codecs[parsed]=[mp4a.40.2]
buffer-controller.ts:704 [log] > [buffer-controller]: creating sourceBuffer(audio/mp4;codecs=mp4a.40.2)
848f18a3-381c-43ce-8b98-a5248c60722f:938 [log] > [transmuxer.ts]: Flushed fragment 0 of level 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [audio-stream-controller]: Buffered audio sn: 0 of track 0 [0.000,8.000]
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSED->IDLE
base-stream-controller.ts:588 [log] > [audio-stream-controller]: Loading fragment 1 cc: 0 of [0-10] track: 0, target: 8
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
transmuxer-interface.ts:67 [log] > demuxing in webworker
transmuxer-interface.ts:187 [log] > [transmuxer-interface, main]: Starting new transmux session for sn: 0 p: -1 level: 0 id: 1
        discontinuity: true
        trackSwitch: true
        contiguous: false
        accurateTimeOffset: true
        timeOffset: 0
        initSegmentChange: true
base-stream-controller.ts:364 [log] > [stream-controller]: Loaded fragment 0 of level 0
1c492106-d0e4-46e3-974a-42683df4eb90:603 [log] >
1c492106-d0e4-46e3-974a-42683df4eb90:938 [log] > [transmuxer.ts]: Flushed fragment 0 of level 0
base-stream-controller.ts:1381 [log] > [stream-controller]: FRAG_LOADING->PARSING
stream-controller.ts:1226 [log] > [stream-controller]: Init video buffer, container:video/mp4, codecs[level/parsed]=[/avc1.42e01e]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:364 [log] > [audio-stream-controller]: Loaded fragment 1 of level 0
848f18a3-381c-43ce-8b98-a5248c60722f:938 [log] > [transmuxer.ts]: Flushed fragment 1 of level 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [audio-stream-controller]: Buffered audio sn: 1 of track 0 [0.000,16.000]
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSED->IDLE
base-stream-controller.ts:588 [log] > [audio-stream-controller]: Loading fragment 2 cc: 0 of [0-10] track: 0, target: 16
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:364 [log] > [audio-stream-controller]: Loaded fragment 2 of level 0
848f18a3-381c-43ce-8b98-a5248c60722f:938 [log] > [transmuxer.ts]: Flushed fragment 2 of level 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [audio-stream-controller]: Buffered audio sn: 2 of track 0 [0.000,24.000]
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSED->IDLE
base-stream-controller.ts:588 [log] > [audio-stream-controller]: Loading fragment 3 cc: 0 of [0-10] track: 0, target: 24
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:364 [log] > [audio-stream-controller]: Loaded fragment 3 of level 0
848f18a3-381c-43ce-8b98-a5248c60722f:938 [log] > [transmuxer.ts]: Flushed fragment 3 of level 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [audio-stream-controller]: Buffered audio sn: 3 of track 0 [0.000,32.000]
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSED->IDLE
base-stream-controller.ts:588 [log] > [audio-stream-controller]: Loading fragment 4 cc: 0 of [0-10] track: 0, target: 32
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
base-stream-controller.ts:364 [log] > [audio-stream-controller]: Loaded fragment 4 of level 0
848f18a3-381c-43ce-8b98-a5248c60722f:938 [log] > [transmuxer.ts]: Flushed fragment 4 of level 0
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
XHR 已完成加载:GET "<URL>"。
XHR 已完成加载:GET "<URL>"。
XHR 已完成加载:GET "<URL>"。
XHR 已完成加载:GET "<URL>"。
XHR 已完成加载:GET "<URL>"。
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [audio-stream-controller]: Buffered audio sn: 4 of track 0 [0.000,40.000]
base-stream-controller.ts:1381 [log] > [audio-stream-controller]: PARSED->IDLE
​ [log] > [audio-stream-controller]: Loading fragment 5 cc: 0 of [0-10] track: 0, target: 40
​ [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
​ [log] > [audio-stream-controller]: Loaded fragment 5 of level 0
​ [log] > [transmuxer.ts]: Flushed fragment 5 of level 0
​ [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
​ [log] > [audio-stream-controller]: PARSING->PARSED
​ [log] > [audio-stream-controller]: Buffered audio sn: 5 of track 0 [0.000,48.000]
​ [log] > [audio-stream-controller]: PARSED->IDLE
​ [log] > [audio-stream-controller]: Loading fragment 6 cc: 0 of [0-10] track: 0, target: 48
​ [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
​ [log] > [audio-stream-controller]: Loaded fragment 6 of level 0
​ [log] > [transmuxer.ts]: Flushed fragment 6 of level 0
​ [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
​ [log] > [audio-stream-controller]: PARSING->PARSED
​ [log] > [audio-stream-controller]: Buffered audio sn: 6 of track 0 [0.000,56.000]
​ [log] > [audio-stream-controller]: PARSED->IDLE
​ [log] > [audio-stream-controller]: Loading fragment 7 cc: 0 of [0-10] track: 0, target: 56
​ [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
​ [log] > [audio-stream-controller]: Loaded fragment 7 of level 0
​ [log] > [transmuxer.ts]: Flushed fragment 7 of level 0
​ [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
​ [log] > [audio-stream-controller]: PARSING->PARSED
​ [log] > [audio-stream-controller]: Buffered audio sn: 7 of track 0 [0.000,64.000]
​ [log] > [audio-stream-controller]: PARSED->IDLE
​ [log] > [audio-stream-controller]: Loading fragment 8 cc: 0 of [0-10] track: 0, target: 64
​ [log] > [audio-stream-controller]: IDLE->FRAG_LOADING
​ [log] > [audio-stream-controller]: Loaded fragment 8 of level 0
​ [log] > [transmuxer.ts]: Flushed fragment 8 of level 0
​ [log] > [audio-stream-controller]: FRAG_LOADING->PARSING
​ [log] > [audio-stream-controller]: PARSING->PARSED
​ [log] > [audio-stream-controller]: Buffered audio sn: 8 of track 0 [0.000,72.000]
​ [log] > [audio-stream-controller]: PARSED->IDLE

Chrome media internals output

No response

jingyu45 avatar Jun 17 '22 06:06 jingyu45

Hi @jingyu45,

Could you verify if the change in #4907 fixes this issue for you in Edge?

The PR build is available here: https://deploy-preview-4907--hls-js-dev.netlify.app/demo?src=https%3A%2F%2Fott.dolby.com%2FUser%2Fjxyu%2FPlayerTestSignal%2FHLS%2FManifest%2FHoli_25fps_aac_dovi_1.m3u8&demoConfig=eyJlbmFibGVTdHJlYW1pbmciOnRydWUsImF1dG9SZWNvdmVyRXJyb3IiOnRydWUsInN0b3BPblN0YWxsIjpmYWxzZSwiZHVtcGZNUDQiOmZhbHNlLCJsZXZlbENhcHBpbmciOi0xLCJsaW1pdE1ldHJpY3MiOi0xfQ==

Thanks!

robwalch avatar Sep 14 '22 21:09 robwalch

how can you play Dolby vision on edge?

imtiendat0311 avatar Feb 23 '23 01:02 imtiendat0311