View Full Version : History lesson? HEVC and MSE in Chrome and Firefox
Blue_MiSfit
24th January 2020, 21:31
So we all know that Chrome and Firefox don't support HEVC.
I've heard that at one point Chrome and Firefox would decode HEVC provided the system had an HEVC decoder that was accessible via Media Source Extensions (MSE).
So let's say I have a modern nVidia GPU with fixed function HEVC decoding. This works in MPC-HC via DXVA or CUVID or whatever, and in the Edge (lol) browser via MSE. So, cool, I can take an MPEG-DASH or HLS presentation and run them in a JavaScript video player, but only in Edge.
Apparently this ALSO used to work in Chrome and Firefox at some point - Google and Mozilla just didn't provide a software decoder fallback for users without a better decoder. Makes sense, HEVC licensing is dreadful, so that would have cost money and also exposed them to liability.
I understand that this was blocked at some point. Are there any details about this and how it's done?
benwaggoner
27th January 2020, 20:38
I've heard that at one point Chrome and Firefox would decode HEVC provided the system had an HEVC decoder that was accessible via Media Source Extensions (MSE).
Yep. Like with H.264, the browsers would pass on to the OS any codec it could decode. That was explicitly blocked later.
So let's say I have a modern nVidia GPU with fixed function HEVC decoding. This works in MPC-HC via DXVA or CUVID or whatever, and in the Edge (lol) browser via MSE. So, cool, I can take an MPEG-DASH or HLS presentation and run them in a JavaScript video player, but only in Edge.
Also in Safari.
Apparently this ALSO used to work in Chrome and Firefox at some point - Google and Mozilla just didn't provide a software decoder fallback for users without a better decoder.
Right.
I understand that this was blocked at some point. Are there any details about this and how it's done?
It was years ago. Maybe 2014? IIRC, they blacklisted HEVC in the MSE handoff, or maybe made a whitelist without HEVC.
And it's just a snippit of code. I've been told it's trivial to just remove the block in the open source. The Chromium version of Edge will support HEVC, for example.
Balling
16th September 2021, 10:32
When Microsoft will add their MFF code to decode HEVC in Chrome it will work. They are very slow. And right now it is broken in Chomium Edge due to bad HEVC extensions.
benwaggoner
17th September 2021, 20:26
I can drag and drop a HEVC .mp4 into Chromium Edge and it will play, although there is some stuttering I wouldn't have expected given I have a HW GPU decoder. It "just worked" perfectly in pre-Chromium Edge.
Balling
19th September 2021, 10:29
I can drag and drop a HEVC .mp4 into Chromium Edge and it will play, although there is some stuttering I wouldn't have expected given I have a HW GPU decoder. It "just worked" perfectly in pre-Chromium Edge.
This stuttering is due to a bug in HEVC extensions, that is what I meant for broken. Install older version. Also you can open mkv file, just rename in mp4.
benwaggoner
21st September 2021, 23:50
This stuttering is due to a bug in HEVC extensions, that is what I meant for broken. Install older version. Also you can open mkv file, just rename in mp4.
That is a bug! Has it been reported to Microsoft?
Balling
22nd September 2022, 21:26
That is a bug! Has it been reported to Microsoft?
You may be interested that it is no longer a problem! Apple event streams are good https://www.apple.com/apple-events/ (though I cannot seem to force 4k HEVC anymore) and dropping same files does not make this problem happen anymore! HW decoding does still work though.
And of course Microsft code was finally fully accepted in Chrome, so it works in canary too now.
oibaf
28th November 2023, 12:23
Firefox also added HEVC decoding support in version 120 released few days ago: https://bugzilla.mozilla.org/show_bug.cgi?id=1849392
oibaf
7th January 2025, 17:49
Firefox also added HEVC decoding support in version 120 released few days ago: https://bugzilla.mozilla.org/show_bug.cgi?id=1849392
And in Firefox 134 is now enabled by default on Windows: https://www.mozilla.org/en-US/firefox/134.0/releasenotes/
It requires hardware acceleration, Firefox cannot decode it itself in software.
benwaggoner
16th January 2025, 00:23
And in Firefox 134 is now enabled by default on Windows: https://www.mozilla.org/en-US/firefox/134.0/releasenotes/
It requires hardware acceleration, Firefox cannot decode it itself in software.
Most Mac and Windows PCs from the last eight years or so should play them just fine with OS level HW acceleration.
Has anyone tested it?
oibaf
16th January 2025, 10:13
Most Mac and Windows PCs from the last eight years or so should play them just fine with OS level HW acceleration.
Has anyone tested it?
Yes, it works for me.
You can use this page to test it, as well as many other video and audio codecs: HTML5 audio/video tester (https://tools.woolyss.com/html5-audio-video-tester/?u=woolyss.com/f/hevc-aac-caminandes-2.mp4).
benwaggoner
16th January 2025, 18:23
Yes, it works for me.
You can use this page to test it, as well as many other video and audio codecs: HTML5 audio/video tester (https://tools.woolyss.com/html5-audio-video-tester/?u=woolyss.com/f/hevc-aac-caminandes-2.mp4).
I don't have any hardware old enough to be a stress test. It'd be interesting to know what kinds of system can't play it back.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.