Audio renditions broken in ios 26
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 39.9k
- Forks
- 7.5k
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 3
Description
Description
a simple HLS variant with alternate audios is incorrectly initialized on iphone with ios 26.3, thus unable to switch audio track.
it's appear to be random, non constant problem.
as much master m3u8 simpler - it often occur (original bipbop with a lot of subtitles - unable to reproduce. another foreign playlist with a few subtitles - able to reproduce)
ps:
seems like it can be ios 26 problem, but any workaround is needed.
also, i can't reproduce it with hlsjs demo page.
Reduced test case
https://vps1.caspy.ru/audio_track_test/bipbop_simple.html
Steps to reproduce
- open url on iphone with ios 26.3, start play
- see under player or in console.log, that audio tracks initialized with duplicating ids
- tracks are unable to switch
if loaded in a good way, just reload. problem is not constant.
as much as master m3u8 is simpler - problem easy to reproduce.
Errors
console.log() of tracks from player.audioTracks()
as you can see - id is duplicated.
[Log] AudioTrack {labelchange_: function, id: "1", kind: "alternative", label: "BipBop Audio 2", language: "eng", …} (bipbop_simple.html, line 18)
[Log] AudioTrack {labelchange_: function, id: "1", kind: "main", label: "BipBop Audio 1", language: "eng", …} (bipbop_simple.html, line 18)
What version of Video.js are you using?
8.23.4
Video.js plugins used.
No response
What browser(s) including version(s) does this occur with?
Safari
What OS(es) and version(s) does this occur with?
iOS 26.3
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the reduced test case at https://vps1.caspy.ru/audio_track_test/bipbop_simple.html on an iPhone running iOS 26.3, using Video.js 8.23.4. Inspect player.audioTracks() and the console output for duplicated track IDs, then verify that the audio tracks initialize with distinct IDs and can be switched reliably.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100