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

bufferAppendError due to unknown issue with audio codec in Chrome browser #4732

Closed
5 tasks done
vaniyokk opened this issue Jun 10, 2022 · 1 comment · Fixed by #4781
Closed
5 tasks done

bufferAppendError due to unknown issue with audio codec in Chrome browser #4732

vaniyokk opened this issue Jun 10, 2022 · 1 comment · Fixed by #4781
Assignees
Labels
Milestone

Comments

@vaniyokk
Copy link

vaniyokk commented Jun 10, 2022

What version of Hls.js are you using?

1.1.5

What browser (including version) are you using?

Version 102.0.5005.61 (Official Build) (arm64)

What OS (including version) are you using?

MacOS M1

Test stream

https://hls-js.netlify.app/demo/?src=https%3A%2F%2Flive.hpdev.io%2Fvideos%2F12509_F6w16WnT7bjHeygc%2Fmaster.m3u8&demoConfig=eyJlbmFibGVTdHJlYW1pbmciOnRydWUsImF1dG9SZWNvdmVyRXJyb3IiOnRydWUsInN0b3BPblN0YWxsIjpmYWxzZSwiZHVtcGZNUDQiOmZhbHNlLCJsZXZlbENhcHBpbmciOi0xLCJsaW1pdE1ldHJpY3MiOi0xfQ==

Configuration

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

Additional player setup steps

No response

Checklist

Steps to reproduce

  1. use src link from example
  2. play stream with default HLS.js config in latest Chrome (in Safari works fine)

Expected behaviour

Stream plays gracefully to the end like VLC does.

What actually happened?

Playback hangs and freezes after a while (3-10 seconds, occasionally)

Console output

buffer-controller.ts:407 [error] > [buffer-controller]: Failed 3 times to append segment in sourceBuffer
onError @ buffer-controller.ts:407
executeNext @ buffer-operation-queue.ts:65
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1121
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
main.js:725 Error event: {type: 'mediaError', parent: 'main', details: 'bufferAppendError', err: DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': The HTMLMediaElement.error attrib…, fatal: true}
(anonymous) @ main.js:725
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
onError @ buffer-controller.ts:413
executeNext @ buffer-operation-queue.ts:65
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1121
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
main.js:838 Fatal error : bufferAppendError
(anonymous) @ main.js:838
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
onError @ buffer-controller.ts:413
executeNext @ buffer-operation-queue.ts:65
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1121
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
buffer-operation-queue.ts:62 [warn] > [buffer-operation-queue]: Unhandled exception executing the current operation
executeNext @ buffer-operation-queue.ts:62
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1145
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
buffer-controller.ts:384 [error] > [buffer-controller]: Error encountered while trying to append to the audio SourceBuffer DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': The HTMLMediaElement.error attribute is not null.
    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:10360:12)
onError @ buffer-controller.ts:384
executeNext @ buffer-operation-queue.ts:65
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1145
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
buffer-controller.ts:407 [error] > [buffer-controller]: Failed 3 times to append segment in sourceBuffer
onError @ buffer-controller.ts:407
executeNext @ buffer-operation-queue.ts:65
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1145
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
main.js:725 Error event: {type: 'mediaError', parent: 'main', details: 'bufferAppendError', err: DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': The HTMLMediaElement.error attrib…, fatal: true}
(anonymous) @ main.js:725
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
onError @ buffer-controller.ts:413
executeNext @ buffer-operation-queue.ts:65
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1145
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
main.js:838 Fatal error : bufferAppendError
(anonymous) @ main.js:838
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
onError @ buffer-controller.ts:413
executeNext @ buffer-operation-queue.ts:65
append @ buffer-operation-queue.ts:25
onBufferAppending @ buffer-controller.ts:416
emit @ index.js:203
emit @ hls.ts:250
trigger @ hls.ts:258
bufferFragmentData @ base-stream-controller.ts:719
_handleTransmuxComplete @ stream-controller.ts:1145
handleTransmuxComplete @ transmuxer-interface.ts:315
onWorkerMessage @ transmuxer-interface.ts:281
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSING->PARSED
base-stream-controller.ts:499 [log] > [stream-controller]: Buffered main sn: 5 of level 4 [2.020,12.000]
base-stream-controller.ts:1381 [log] > [stream-controller]: PARSED->IDLE

Chrome media internals output

No response

@vaniyokk vaniyokk added Bug Needs Triage If there is a suspected stream issue, apply this label to triage if it is something we should fix. labels Jun 10, 2022
@vaniyokk vaniyokk changed the title bufferAppendError due to unknown issue with audio codec bufferAppendError due to unknown issue with audio codec in Chrome browser Jun 10, 2022
@robwalch robwalch removed the Needs Triage If there is a suspected stream issue, apply this label to triage if it is something we should fix. label Jun 11, 2022
@robwalch robwalch self-assigned this Jun 11, 2022
@robwalch robwalch added this to the 1.2.0 milestone Jun 11, 2022
robwalch added a commit that referenced this issue Jul 11, 2022
@robwalch robwalch added the Verify Fixed An unreleased bug fix has been merged and should be verified before closing. label Jul 12, 2022
@robwalch robwalch removed the Verify Fixed An unreleased bug fix has been merged and should be verified before closing. label Sep 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants