Supported in Firefox for *12 years* now, in Chrome for 10, still no support in Safari.
They only "support" Opus audio in their special snowflake '.caf' container, which is super buggy and the last time I checked no open source program could even generate Opus '.caf' files that could be played by Safari on all Apple platforms. I ended up writing a custom converter which takes a standard '.opus' file and remuxes it on-the-fly (I only store '.opus' files on my server) into Safari-compatible '.caf' files, taking special care to massage it so that it avoids all of their demuxer/decoder bugs. You shouldn't have to do this to have cross-browser high quality audio!
> That's because none of those samples are Opus files, except the last one.
Ooof, I didn't even imagine that the official examples were WAV files. Here's an Opus audio file that plays fine in Safari on macOS and iOS: https://kur-static.biblica.com/audio/GEN_001.webm (Note: I have no idea what this content is, but could not find any English Opus content in the wild.)
> Here's an Opus audio file that plays fine in Safari on macOS and iOS
Yeah, that has Opus packed into a Matroska container (which people usually use only for videos and not pure audio). I suppose that's another good way of getting around the problem!
In my experience it's the buggiest browser out of the big three, and is often missing basic features like e.g.:
https://caniuse.com/?search=opus
Supported in Firefox for *12 years* now, in Chrome for 10, still no support in Safari.
They only "support" Opus audio in their special snowflake '.caf' container, which is super buggy and the last time I checked no open source program could even generate Opus '.caf' files that could be played by Safari on all Apple platforms. I ended up writing a custom converter which takes a standard '.opus' file and remuxes it on-the-fly (I only store '.opus' files on my server) into Safari-compatible '.caf' files, taking special care to massage it so that it avoids all of their demuxer/decoder bugs. You shouldn't have to do this to have cross-browser high quality audio!