Open h264 Video Codec and Firefox

The newest versions of Firefox now includes the open h264 video codec. Cisco released it under the BSD license and now H.264 is free for use. Meaning Flash is no longer needed for a tremendous amount of video on the web. I’ve yet to find anything on YouTube and several other sites that cannot be played. Although you still get a occasional popup to install Flash it’s not needed. Some sites won’t work including CBS,FOX,NBC, Hulu and many others. In the case of the video that won’t play it’s not that it can’t play it. It’s that they will not let you have access to the stream with out first detecting Flash and setting a cookie.

On the web site it say’s it will be free to use on supported platforms. Well they have the right to say what the supported platforms are. I hope it becomes available across all major browsers. It’s nice to almost be free of Flash and their dominance over video content.

Edit: This explains a bit more, effectively making H.264 free for use in WebRTC. Well that includes Chrome and Opera.

OpenH264 currently supports only AVC Baseline Profile. Most videos on the web are encoded in AVC High Profile, which is a much more efficient codec (yes, those different codecs, not different “profiles” of the same codec).

OpenH264 is included in Firefox primarily for WebRTC, when communicating with a client that does not support VP8.

While the source-code is open, Cisco’s free license is only for the closed binary (the plugin) they distribute. That is why the OpenH264-plugin is run in a sandbox in Firefox.

This does not make AVC/H.264 free. Yes, it makes AVC Baseline Profile available free of charge, through the closed plugin from Cisco, who pays the license-fee. That is not free (as in freedom).

We need truly free codecs, the are free to implement and use. We need implementations that can be truly open, not relying on proprietary plugins. For audio, WebRTC chose the open codec Opus as mandatory to implement (MTI). For video they are still arguing. The two candidates are VP8 (which is free) and AVC Baseline Profile (which is not free). I totally fail to understand how a codec that is not free can even be suggested to be MTI. :-\

Regarding YouTube and other sites using html for video, Firefox on Windows 7+, OS X and Linux-distributions with the needed codecs installed, will use the system’s decoders for codecs it does not have built-in support for, such as AVC and AAC. Yes, you forgot to mention audio. Not only does OpenH264 not decode AVC High Profile-video, it also does not decode audio. :wink: AAC (not free) is the most common audio-codec used with AVC.

Here is a video-trick for Firefox: go to about:config and search for media.mediasource.enabled. Set the value to True. Go to and enable HTML5. Done! You can now watch videos in VP9 (audio-codec: Vorbis), including FHD+ (I have seen 3 840×2 160) and 60fps. :slight_smile:

We need truly free codecs


Thanks for the about:config tip.

You’re welcome. :slight_smile:

If you find VP9-decoding slow/CPU-usage high, for example when watching a video at 1920×1080, 60 fps (Big Buck Bunny 60fps 4K - Official Blender Foundation Short Film - YouTube), it’s because Firefox has an old version (1.3.0) of libvpx. That’s the current official version, but much has happened since it was released in January. A new version will soon be released. Chromium has a much more updated version of libvpx (every new “milestone” has a new version), which is much faster and supports multi-threaded decoding. VP9-decoding with Chromium 64-bit is 15 % faster than with 32-bit.¹

¹ Chromium Blog: 64 bits of awesome: 64-bit Windows Support, now in Stable!