> As long as there are browsers that are given away for free, the decoders would be have to be made also.
Or have major platforms (realistically, Windows, macOS, iOS, and Android) ship decoders at the platform level, and have them ubiquitous enough. This is, ultimately, how we got H.264 decoders commonplace in browsers.
That said, Firefox held out for a long time with H.264, and only once it was clear it was costing them users did they give in and add H.264 to the whitelisted platform codecs exposed.
> That said, Firefox held out for a long time with H.264, and only once it was clear it was costing them users did they give in and add H.264 to the whitelisted platform codecs exposed.
But even then MPEG (LA) didn't really make any money out of that because IIRC they pulled a hack where Cisco is providing a decoder binary, which they distribute. But the license fee has a cap which cisco was already almost at anyways, so that didn't cost cisco much.
Then they have (had planned?) reproducible compilation. So the decoder is open source, but you're not allowed to ship a binary that hasn't been compiled by cisco, but you can always verify the binary cisco provides matches the source code, as the resulting binary will be exactly the same if your compile it yourself.
Cisco essentially sponsored an open-source royalty-free decoder here.
So yeah, they gave in, but MPEG got nothing from them.
> IIRC they pulled a hack where Cisco is providing a decoder binary
OpenH264 is only used for WebRTC and, importantly, there's no AAC support (which doesn't matter for WebRTC because you can just use Opus). Firefox uses the OS platform's H.264 decoder for video element playback.
> which cisco was already almost at anyways, so that didn't cost cisco much
It apparently cost Cisco quite a lot more in licensing fees but they considered it worth it for the sake of integration with their video conferencing hardware. See the comments to this blog post from Monty Montgomery for some discussion on it:
> OpenH264 is only used for WebRTC and, importantly, there's no AAC support (which doesn't matter for WebRTC because you can just use Opus). Firefox uses the OS platform's H.264 decoder for video element playback.
And Firefox supporting H.264 through the platform decoder came a while before OpenH264 happened.
Or have major platforms (realistically, Windows, macOS, iOS, and Android) ship decoders at the platform level, and have them ubiquitous enough. This is, ultimately, how we got H.264 decoders commonplace in browsers.
That said, Firefox held out for a long time with H.264, and only once it was clear it was costing them users did they give in and add H.264 to the whitelisted platform codecs exposed.