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

Make Opus sample entry lowercase

Open stolen opened this issue 3 years ago • 2 comments

This commit violates RFC6381 + MP4RA ISO code list for compatibility with browsers and other players.

This PR will make hls.js accept opus codec

Chrome and Firefox accept opus codec only as lowercase despite ISO code has a capital O:

No player plays an M3U8 with CODECS="Opus", but some players do play an M3U8 with CODECS="opus". codecs="opus" is also playable in DASH.

Why is this Pull Request needed?

Opus is modern open audio codec already used in Internet communications and it has a potential use in video streaming. Browsers (I checked Firefox and Chrome) violate some specs and accept only lowercase codec for Opus:

> MediaSource.isTypeSupported('audio/mp4; codecs="opus"')
true
> MediaSource.isTypeSupported('audio/mp4; codecs="Opus"')
false

Are there any points in the code the reviewer needs to double check?

no

Resolves issues:

#4527

Checklist

  • [x] changes have been done against master branch, and PR does not conflict
  • [ ] new unit / functional tests have been added (whenever applicable)
  • [x] API or design changes are documented in API.md

stolen avatar Jan 26 '22 11:01 stolen

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

stale[bot] avatar Apr 16 '22 11:04 stale[bot]

This issue has been automatically closed because it has not had recent activity. If this issue is still valid, please ping a maintainer and ask them to label it accordingly.

stale[bot] avatar Apr 19 '22 12:04 stale[bot]

@robwalch I don't understand what "Not a Contribution" means for me.
Should I add anything in the commit message?

stolen avatar Oct 12 '22 16:10 stolen

@stolen you can ignore that it's an apache licensing related thing.

gkatsev avatar Oct 12 '22 17:10 gkatsev