video-dev / video-dev/hls.js

bufferStalledError after segments missing audio

Open
#4,823 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

MSE sourcebuffer-track-mismatch Stream Issue
Dominant language
TypeScript
Stars
16.9k
Forks
2.8k
Avg merge
1d 12h
Merged PRs (30d)
27

Description

What version of Hls.js are you using?

1.2.0

What browser (including version) are you using?

chrome

What OS (including version) are you using?

macOS 11.5.2

Test stream

No response

Configuration
{
  "debug": true,
  "enableWorker": true,
  "lowLatencyMode": true,
  "backBufferLength": 90
}
Additional player setup steps

No response

Checklist
Steps to reproduce

There are many TS files in my m3u8 files. Each TS file is one second long, like the following. It is estimated that there are more than 100 TS files

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:1
#EXT-X-PROGRAM-DATE-TIME:2022/8/1 17:12:40
#EXT-X-ALLOW-CACHE:NO
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:1,
1.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
2.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
3.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
4.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
5.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
6.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
7.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
8.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
9.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
10.ts
#EXT-X-DISCONTINUITY
#EXTINF:1,
11.ts
#EXT-X-ENDLIST

or


#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:1
#EXT-X-PROGRAM-DATE-TIME:2022/8/1 17:12:40
#EXT-X-ALLOW-CACHE:NO
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:1,
1.ts
#EXTINF:1,
2.ts
#EXTINF:1,
3.ts
#EXTINF:1,
4.ts
#EXTINF:1,
5.ts
#EXTINF:1,
6.ts
#EXTINF:1,
7.ts
#EXTINF:1,
8.ts
#EXTINF:1,
9.ts
#EXTINF:1,
10.ts
#EXTINF:1,
11.ts
#EXT-X-ENDLIST
Expected behaviour

Hope m3u8 can play completely

What actually happened?

The m3u8 file cannot be played and loaded until the second half of the playback

Console output
{type: 'mediaError', details: 'bufferStalledError', fatal: false, buffer: 0.060689000000003546}
Chrome media internals output

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with the supplied HLS playlist patterns and configuration on the hls.js demo, focusing on the reported bufferStalledError during playback of short segments with and without discontinuities. A usable fix would make the playlist play completely without stalling; no test stream, source file, or test is identified in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.