12

Ask HN: Why does nobody support h.265/HEVC anymore?

 1 year ago
source link: https://news.ycombinator.com/item?id=31317989
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Ask HN: Why does nobody support h.265/HEVC anymore?

Ask HN: Why does nobody support h.265/HEVC anymore?
111 points by formerly_proven 5 hours ago | hide | past | favorite | 117 comments
It seems that right now there is no browser that supports h.265/HEVC even on hardware that can decode it - "Old Edge" used to, but "New Edge" does not. Neither Chrome nor Firefox support it (actually, both of those refuse to use any form of hardware decoding at all on my Windows box, only Edge uses it for VPx and h.264 - and of course every media player).

The only exception is Apple with Safari.

Why is this? h.265 can do a lot better than h.264 in some scenarios, but certainly isn't worse.

And why, oh why, is debugging hardware video acceleration still such a nightmare, even on Windows? Firefox doesn't even seem to have it in about:support any more!

And why is hardware video acceleration only a problem with browsers? I've never had any kind of problem with it with any media player, regardless of OS. It just works. But browsers - it seems to never work OOTB. Except for Edge, apparently. Which I thought was just a Chromium reskin with MS tracking.

Because the US endorses the concept of "essential patents," meaning you need to pay a licensing fee to be lawfully allowed to perform the math that transforms data into A/V content.

Never to mention the two blatant issues with this, being:

1) video codecs are the exemplary "we'll patent math and there's nothing you can do about it" scam, since that's literally all a video codec is

2) a process being "essential" to a particular outcome (i.e. no other way to do it) was the main motivation mathematics was explicitly excluded from patentability in the first place, so the idea of "essential patents" just underlines the absurdity of the entire system

Anyways, yearly reminder that software patents are a blight to innovation and a scourge on our industry, and no you won't change my mind.

s.gif
That doesn't explain why the browsers don't offer hardware decoding but only software decoding. Both implement the same specification. One is just faster (and in hardware which I assume has said license fees paid by the processor manufacturer).

In fact looking at it this way it would be easier to implement it in hardware as you don't just offload the decoding but the whole licensing rigmarole too.

Edit: oops this was already mentioned. Sorry the thread is so long I lost the overview.

s.gif
It's not just math. It's a process that can be described in mathematical language.
s.gif
I mean, is a video codec really just "math"? There's a binary payload description and algorithms involved for applying said math as well.

I'm no expert in the field, so I'm actually asking in good faith here...

s.gif
The specification for the format (which is what is patented) describes the mathematical relationship between the binary payload and the uncompressed picture data. The actual implementation of the encoder / decoder is copyrighted and may also be patented, (which seems to be what you are alluding to), but with patent encumbered formats, the real issue is that the specification itself is patented.

Practically this means that every encoder / decoder for patent encumbered formats has to have some form of licensing just to interact with the format even if they somehow reverse engineered the specification and built a cleanroom implementation (at least as far as I understand it, IANAL)

s.gif
Everything you can instruct a computer to do is just math, yes. "Instructions on how to use the math" is, unsurprisingly, also more math.

https://en.m.wikipedia.org/wiki/Lambda_calculus

s.gif
I am well aware of the foundations of CS and the lambda calculus, but this is more than a bit reductionist, like saying "everything is made of subatomic particles."

Patents on processes and methods are pretty common. Dismissing it as "they just patented some math" and then falling back to saying "oh, lambda calculus" -- I think you can do better :-)

But, yes, I'm sure the patents suck.

s.gif
B-frames (bi-directional predicted frames with a reference frame in both the past and the future) are patented. I'd say that's a process or method.
s.gif
Why should Free software advocates need to "do better" than to argue from literal first principles?

Fourier could call his transform a "process" all he wants, but that does not make it patentable.

So yes, "oh, math."

s.gif
Almost all inventions can be reduced to "just math", because after all, that's what we use to describe the physical world, and oh also computer software things.

I'm not in favour of patents at all, but the entire "it's math" argument has always seemed exceedingly weak to me.

s.gif
These files have carefully constructed format though. To read and write the patented format goes beyond patenting math. I think cmrdporcupine was getting at something.
s.gif
Yep, it's not like I think the patent is just. I think software patents are mostly junk. But saying "because it's math" is highly uninformative.
s.gif
First principles is fine, but where is the argument?
s.gif
I don't quite understand how you do not recognize that that is a strong argument against your position.
s.gif
Insofar as GP seems to be against software patents in general, it is not an argument against his position, is it?
s.gif
It definitely is. Church Turing thesis basically states that all systematic procedures can be encoded as math. So, software can be encoded as math yes, but also music can be encoded as math. Life can be encoded as math (which is what our DNA is).

Rather than providing a basis of not allowing software to patented, I think it makes the statement "X can be encoded as math" trivially true - and therefore uninteresting.

In so far as there is value in patents on any systematic procedure at all, the position that "software should not be patentable because it can be encoded as math" is completely untenable.

s.gif
The difference is that music is not, in fact, math. The representation is abstract to the utility. With software, the math is the utility.
s.gif
Software is also, in fact, not math. Nor is the math the utility of software. Software's utility (usually) is the business problems it solves. The processes are encoded as math, and a lot of writing software is about improving those processes, but that is not in fact the utility.

Think of the guy who invented the equi-tempered scale. All throughout history you had to make instruments that are tuned to play in one scale. Now you can suddenly make instruments that can play all of them. Solves a real problem from music by making an improvement in the representation, so it can be viewed as all math. But is it really "just" math?

s.gif
What does “the representation is abstract to the utility” mean? I mean, music isn’t patentable, but it is thoroughly copyrighted.
s.gif
The link you're looking for is curry howard correspondance
s.gif
Here is a list of the essential patents from the main pool: https://www.mpegla.com/wp-content/uploads/hevc-att1.pdf

Find a single US patent that "claims" maths as GP argued. It doesn't exist.

s.gif
I picked first US patent listed (US 7,292,636), and it's first claim says

> 1. For a bitstream comprising a first video picture, a second video picture, and a third video picture, a method of decoding comprising: computing a particular value that is based on (i) a first order difference value between an order value for the third video picture and an order value for the first video picture, and (ii) a second order difference value between an order value for the second video picture and the order value for the first video picture; computing a particular motion vector for the second video picture based on the particular value and a motion vector for the third video picture; and decoding at least one video picture by using the computed motion vector.

That certainly sounds like math to me.

s.gif
If you’re against patents, yes.

If you’re gainfully employed doing math things that turn into codecs, no.

Patents suck, but they also serve a purpose.

s.gif
I’m not sure why is this being downvoted…

A patent for a drug is just chemistry, which is also just math with a specific ruleset…

Patents are designed to protect work, especially work where most of the effort is in the research / discovery rather than the implementation.

Implementing a video decoder is relatively easy coming up with the algorithms to encode/decode the video efficiently and effectively however is a lot of work.

s.gif
> video codecs are the exemplary "we'll patent math and there's nothing you can do about it" scam, since that's literally all a video codec is

Most software is literally all math.

s.gif
IMO the real issues caused by patent encumbered formats is that what is patented is not the software itself, but the format. So instead of patenting a specific implementation of an encoder or a decoder, what is patented here is the relationship between the bits on disk and the pixels on the screen. I think that's what the quoted text is trying to get at.
s.gif
Formats aren’t patentable as such. The issue is that there is really only ever one procedure for decoding a complex format, and many of the steps / building blocks that go into that procedure might be patented by various entities.
s.gif
The Church Turing thesis basically states that any systematic procedure can be encoded into math. Software can be encoded as math, yes, but music can be encoded as math. Life can encoded as math (which is what your DNA is).

I really don't understand how the parent commenter fails to see that this makes "X is math" basically a meaningless statement because it is always trivially true and makes their position "math shouldn't be patented" completely untenable.

s.gif
Software patents should not be a thing... but the US neoliberalism fucked it up for everyone.
s.gif
> that's literally all a video codec is

Go on then, make a better video codec, as it's just math.

s.gif
Nobody said math is simple.

Also, isn't that just AV1? (it does seem optimized for the particular niche of streaming vendors though: minimizing bandwidth at all costs)

s.gif
Every country in the world "endorses" the concept of "essential" patents. It's called a patent.
s.gif
No.

A patent covers a way of doing things.

An essential patent covers the way of doing things.

Essential patents in general fail the obviousness test; they cover the solution that most experts in the field would reach in solving the given problem.

H.265 requires getting a license from at least 2 patent pools[0], and who knows how many other patents are out there waiting to get sued over.

If you want a new cross platform video codec, check out AV1.[1]

[0] https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding#P...

[1] https://aomedia.org/av1/

s.gif
The licenses have already been paid for the hardware implementation, that doesn't explain, eg, Chrome's refusal to leverage hardware decoding (and stop burning so much power on laptops).
s.gif
Chrome and Mozilla both want their competitor format AV1 to “win”.

Plus, partial support is a burden - one of the patent holders might come by and ask you to prove you didn’t accidentally violate one of their patents while fastidiously only using that approved hardware. I think there’s a lot of lawyer risk there below the waterline.

s.gif
It would also be extremely confusing to support something with only hardware decoding. People running supported hardware would start saying things like "Firefox supports HEVC" which would sound plainly wrong to someone with unsupported hardware.
s.gif
On the other hand, basically all platforms of the last few years support hardware decoding of HEVC. nVidia does, Intel does, AMD does... so pretty much for every PC made in the last ~six or so years:

- You paid the royalties for HEVC, possibly multiple times

- It can almost certainly encode and decode HEVC without breaking a sweat

- You (practically) can't use it ("if it's not on the web, it's dead")

s.gif
Yes a decade ago this was the Firefox approach to h264 -- leverage OS/hardware support if available. Can confirm horrible experience for devs and viewers
s.gif
I don't buy the patent argument. AV1 is not unique, it would not be hard to find some similarities in the math and argue infringement of one of tens of thousands of patents these companies sit on. The companies simply don't want to upset the largest tech companies, though apple already buys from them.
s.gif
The AOM foundation has spent millions on legal reviews. There is always a chance of something slipping through, but that could happpen with any technology. Someone unknown company could come forward with a claim that h.265 infringes on a patent.
s.gif
Chrome leverages hardware decoding in general it just doesn't support h.265 at all, hardware or software.
s.gif
Let's just say HEVC Patent Pools got greedy and demanded a per-software license, either paid by Windows (who decided not to pay) or by Chrome (who also decided not to pay).

https://news.ycombinator.com/reply?id=31318663&goto=item%3Fi...

s.gif
The correct way to see this is probably that licenses have already been patented for the existing implementations, and dropping support for future ones means money saving.
s.gif
I've yet to see any hardware decoder supporting AV1. And while you can decode with software, at the cost of using obscene amounts of CPU cycles for extended periods of time which not all devices are designed to sustain, forget about software encoding. Encoding is just not going to happen without a hardware accelerator.
s.gif
But if an application merely uses the graphic's drivers API to decode a stream, presumably the GPU vendor (and therefore the buyer) already paid for those licensing costs? Otherwise the hardware wouldn't support h265, right?
s.gif
Right, but neither Google neither Mozilla wants to support it even if they don't need to pay a cent.
s.gif
They'd both have supported it if the codec was offered freely to all users for any purpose.

But it wasn't, so they'd be letting the entire internet be held to ransom if they supported it.

s.gif
Perhaps there are software patents involved in the codecs and a license for those is different from the hardware ones
s.gif
That's actually not entirely clear to me. Which is another reason to avoid H265 altogether....

I mean, even if say Chrome started using the hardware decoders, do you think someone from the MPEG-LA would _refrain_ from suing Google since "they're just using the Windows API"? It's already not rare to have to pay both for the hardware _and_ the software in this world.

s.gif
Three patent pools, and some major companies that you need patents for aren't in any of them. Also unlike H.264, there was no limit to how much you could spend on licensing every year. And that was only the beginning of the disaster.

https://news.ycombinator.com/reply?id=31318663&goto=item%3Fi...

s.gif
FFmpeg and VLC seem to use (lib)x265 for H.265 content.

Is a license also required if the x265 codec is used? Or does that depend on whether the software is for commercial use?

s.gif
>FFmpeg and VLC seem to use (lib)x265 for H.265 content.

copypaste of previous comment:

The FFmpeg project does not distribute binaries with unlicensed or illegal code. E.g. if you want ffmpeg to use libdvdcss for decrypting DVDs or use libfdk-aac to encode aac/m4a without paying license royalties to Fraunhofer, the end user has to download those components and build a custom ffmpeg binary on their own. No legitimate website will host ffmpeg built with the "illegal/unlicensed" libraries. E.g. When the popular Zeranoe website hosted ffmpeg executables for download, it was only built with the free GNU components and was missing x265.

The VLC project says they can include libdvdcss because they are a French company instead of American. E.g. The USA-based Microsoft removes DVD playback from Windows 8 but France-based VLC does not: https://www.zdnet.com/article/if-vlc-can-ship-a-free-dvd-pla...

s.gif
ffmpeg/x265 don't own the patents, so their license has no right to grant you them.

Beware that using ffmpeg/x265 may be illegal if you're in a country that recognizes software patents. You need to pay patent fees even if you wrote the software 100% yourself. You need to pay even if you independently invented the same algorithms later than the patent was filed.

To quote Carmack:

> "The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying."

s.gif
This explains why browsers do not include their own software decoder, but they should not need a license to use the decoders provided by the host platform.
s.gif
- Neither Linux nor Windows provide one, due to licensing costs

- Most browsers do not deem it worth the risk of relying on host software decoders, as the plug&play infrastructure behind them usually translates into "nobody feels responsible for patching anything" which translates into incalculable vulnerabilities

That leaves MacOS (why bother when Safari exists), iOS (dito), and Android (why bother when Android users don't spend money), and trying to use hardware codecs without stepping on patents enough to make lawyers smell blood (why bother).

s.gif
Microsoft provides a separate h265 codec you can buy in the Microsoft store: https://www.microsoft.com/en-us/p/uitbreidingen-voor-hevc-vi...

Some hardware comes with the codec pre-purchased (my laptop does). I don't think I've ever heard of anyone buying a codec in the MS Store, though.

I think most Android phones come with HEVC support. Mine did, anyway; I suppose it's up to the vendor to choose if they want to support it. Apps like VLC will also play the codec just fine. My camera app even records in h.265. This is a phone from Xiaomi, which not exactly known for their great software packages and compatibility.

I'm pretty sure Safari already supports h.265 because Apple switched to HEIF pictures while the rest of the world still just uses JPEGs for everything, and HEIF is pretty close to a single h.265 frame packaged as a picture. Not even Apple would be so foolish to switch default formats on their mobile devices and not support it across their software products.

Browsers don't feel like paying license fees over downloads of their free products and I can't blame them. Mozilla's h.264 decoder is only published along with it because Cisco had reached the license fee cap (which doesn't exist for h.265) and they decided to use their license so that Firefox can play videos freely.

I think Apple and physical disks formats are the only players heavily invested in h.265 right now. AV1 hardware decoding support is slowly coming along, so soon enough everyone can just use AV1 and be free of the proprietary patent bullcrap.

s.gif
Mobile support comes from the chips (SOC) that the phones are using. Hardware codec support is a major differentiating factor for mobile chips. It has a huge impact on power usage, e.g. decoding video or audio in hardware could be 10x more efficient.

It's common that the manufacturer doesn't actually get a patent license, they get "indemnity". If someone were to sue you, the chip manufacturer would handle it, because they have their own patents and have cross-licensed with the others in the pool. You may have to pay the chip manufacturer for the indemnity in addition to the chip costs, i.e. "paying protection money". "That's a nice restaurant you have there, it would be a shame if someone set it on fire. We can protect you from bad people like that."

s.gif
> I think most Android phones come with HEVC support. Mine did, anyway; I suppose it's up to the vendor to choose if they want to support it.

The official requirements for Android phones can be found on the Android CDD (https://source.android.com/compatibility/cdd). From a quick look at the CDD for Android 12, section 2.2.2 says that the required codecs for encoding are "H.264 AVC" and "VP8", and for decoding are "H.264 AVC", "H.265 HEVC, "MPEG-4 SP", "VP8", and "VP9". So it seems that all Android 12 phones will come with HEVC decoding support, but not necessarily encoding support. Looking at past CDDs, it seems that "H.263" was required for encoding and decoding before Android 7.0, and "H.265 HEVC" was required for decoding starting with Android 5.0.

New Edge supports it, if you have the h265 extension from the microsoft store (cmd "start ms-windows-store://pdp/?ProductId=9n4wgh0z6vhq"). It's also the only (?) browser that supports AC-3 audio. Thanks for nothing, Dolby.

There's barely any content though (possibly premium VODs on Netflix etc).

Bilibili (kinda like Chinese youtube) offers HEVC (and AV1) playback, if your browser supports it. Example: https://www.bilibili.com/video/BV1Q44y1372Q

In general it's kind of a moot point by now, just go with AV1.

s.gif
My problem with AV1 is that hardware support for it is far from ubiquitous. I can load up a file I encoded with x265 on any of my devices from the last 6 years and be sure that it will play back smoothly without eating battery. The only device in my house with hardware AV1 support is the RTX 3080 in my desktop. So for the time being, I encode all my blu-ray rips with x265.
s.gif
My GTX980 did not support HEVC decoding in hardware, and as a result it played like crap on my system. The Nvidia cards have only supported it since the GTX 10 series. That isn't very old IMHO.
s.gif
> In general it's kind of a moot point by now, just go with AV1.

Safari doesn't support AV1 though. I'll stick with AVC until it does

s.gif
> In general it's kind of a moot point by now, just go with AV1.

You don't always get to decide. E.g. IP cameras will generally support both h.264 and h.265 these days, with HEVC doing vastly better than AVC, yet if that output has to go near a browser, instead of through dedicated software... SOL. Can't do anything with it. The hardware can, the software can't.

And AV1 is decode-only anyway, and only supported in the newest platforms. CPU decoding is just not a reasonable solution.

s.gif
It's not just browsers. One popular Windows-based video surveillance platform has hardware decode support for H264, but it's software only for H265; that's on both Windows clients and Android mobile. That means your H264 cameras show up instantly but H265 takes a few seconds per stream, and too many of them on one screen means you're skipping frames. At least two companies I installed these for decided to double their storage instead of taking the perceived UI performance hit.
s.gif
Are you sure it's "not just browsers"? With the current popularity of embedded browser engines, there's a good chance that these clients are actually browsers in disguise, or at least that they embed a browser for the frame which shows the camera streams.
s.gif
It's odd that the browser supports AC-3 but the MS video player does not unless you pay for the codec, while all the other video players include it.

Going with AV1 is not an option for the vast majority of people as it requires hardware support. If you try using AV1 on a computer that didn't come with a hardware decoder for it, your machine will crawl.

I force h264 in YouTube for this reason instead of using VP9.

s.gif
> If you try using AV1 on a computer that didn't come with a hardware decoder for it, your machine will crawl.

My computer doesn't have a hardware decoder for AV1 (as shown by "vainfo"), yet AV1 videos play perfectly fine on it, both within the browser (including on Youtube) and outside it. Playing the AV1 demo (https://demo.bitmovin.com/public/firefox/av1/) on the browser at its maximum resolution uses only around half of the CPU.

s.gif
I'm not sure if this is the case. Current Edge Dev (102.0.1245.3) reports "No" for HEVC, even with the extension installed. Old Edge based on EdgeHTML/Spartan would indeed play HEVC content
Another thing to consider is that whenever a format works in "all" browsers (for some small values of "all" that devs care to test in), it becomes a de-facto part of the Web platform, and browsers end up having to support it forever.

This makes browser vendors very cautious about adding anything, because even if it's easy now, it's may haunt them later. Maybe they could use HW accell on current-gen GPUs, but what if the next-gen GPUs move to a newer codec and drop H.265? Browsers will still be expected to play existing web content encoded in the old codec, but now with a patent liability and no hardware to subsidize it.

Another question is why don't browsers support MKV container format?

From an arbitrary search "The Matroska project is supported by a non-profit organization and is a fork of the Multimedia Container Format. It was first announced to the public at the end of 2002 and is a completely royalty-free open standard that's free for both private and commercial use."

s.gif
I guess because adding full support would be a pain and the average consumer doesn't use it anyway
FWIW the pirate scene supports it; a lot of video release are H.265 (marked "x265" usually). H.264 is still more popular in general, particularly for TV. There's still no AV1.
Actually it’s not just browsers, HEVC can’t be hardware decoded out of the box on Windows applications that rely on Media Foundation, you have to open the Microsoft store and pay $0.99 for the privilege of using those codecs.
The frustrating thing IMHO is that IP security cameras support H.264 and H.265, while browsers support H.264 and VP9/AV1. It's good that they have one codec in common, but I'd prefer they share a modern one.

I think much of it is geopolitical. Browser vendors are mostly in the West, can't just ignore the patents, and don't want to pay for the patents. Camera and chipset makers are mostly in China and simply ignore patents and licensing. (They don't honor LGPL/GPL conditions either.)

s.gif
Give it time. HEVC hardware support was available before AV1 hardware support. I think thats the only reason - realtime encoding of these modern codecs necessitates hardware support on a device like a security camera.
I'm under the impression that VP9 is in the same generation with H265 (in terms of video size and encoding/decoding performance) but VP9 is free and open, so as a consumer, I'll happily accept if everybody just uses VP9.
s.gif
It claims to be from the same generation but realistically it’s half a generation behind.
s.gif
1. The software patent examination process is pretty broken - a lot of companies try to patent everything without regard to is it obvious or innovative so if they get sued for patent violations they can counter sue; the patent examiners for whatever reason (law, lack of expertise, lack of staffing) keep approving patents for software that is obvious not-innovate normal state of the art things) then all of a sudden people can't use linked lists or whatever.

2. The idea of patenting algorithms themselves seems to fly in the face of free speech. An algorithm is a disembodied mathematical thing, and not a device for selling. The same logic that allowed PGP to be exported as a book despite export laws would seem to apply to patens on algorithms.

3. An industry that is harmful to the free development and operation of business has sprung up where firms (that don't do anything economically or socially productive) buy a lot of patents up and then file nuisance law suits to get revenue streams for their investors.

(Disclaimer I am the inventor on a couple patents; I had prepared my notes and list of innovations on the systems involved for the meeting with the lawyer filing the patent, and the discussion never got to any of the innovations involved, so there is no way that the patents were awarded for innovation.)

s.gif
> the patent examiners for whatever reason (law, lack of expertise, lack of staffing) keep approving patents

Relative works for over 10 years as patent examiner, now a team manager, for EU: they are ordered to approve as many patents as possible. Having more patents is considered progress and innovation, more patents approved is a KPI. Unless they are ridiculous or illegal, they have to approve it and it is the job of people that are affected to fight to cancel the patents.

s.gif
I am not the OP, but here is my take. In practical sense, because they do more harm than good. In logical sense, IMO, IP (patents, copy rights etc.) is not `property`, so it cannot be owned. Thus it can be copied indefinitely and used once it is exposed. World would be a better place without this nonsense.
s.gif
They serve unintended purposes better than their intended purpose.

There’s something better and no one cares to try.

s.gif
They hold back progress and prevent things like h265 being adopted
This is also behind heic? Right? Man what a pain, I love hdr and Live Photos but anywhere outside the Apple ecosystem it is pain. I really wouldn’t mind paying some dollars for some codecs to just be able to see my pics in Windows, Linux, Nextcloud etc.
s.gif
Windows 11 appears to read HEIC in the photos app.
I think there are a few patches that can enable HEVC hardware decoding with chromium. Though I am a firefox user so I didn't test whether these patches works or not. https://github.com/StaZhu/enable-chromium-hevc-hardware-deco...
Because people prefer to destroy ecology and user experience than pay one symbolic dollar for a lifetime license
HEVC has a long and complicated history.

With H.264, it was easy - one patent pool. Any questions? Contact MPEG LA. How much did it cost? About $2 or so per device, no problem. Did you spend more than (IIRC) $14 million on licensing each year? It's free past that point. As for open-source software like Firefox, Cisco actually struck a deal to pay all the royalties if you used their OpenH264 decoder (they needed H.264 to be widely supported for WebRTC), so Firefox and other software was able to use the binary of that and have Cisco covering the royalties for them.

With H.265, everything splintered. There are three patent pools: MPEG LA, Access Advance (formerly known as HEVC Advance), and Velos Media. Between them, you have to pay royalties on the hardware, the software, and a royalty per-item created past a certain point. Some had royalty caps, others did not and would rack up royalties indefinitely and unpredictably high. Some patent pools had you licensing patents available in other pools, so you were paying twice for the same patents. And some major patent holders (such as Technicolor) weren't in any pools, so you needed to approach them manually and hash out a deal on your own which could have as favorable or unfavorable terms as they pleased. Also, Cisco (not surprisingly) said they weren't paying the royalties for an OpenH265, as it was only a ~30% improvement for a exponential increase in royalties, easily several times or more as much as H264. Bloody hell.

So, it shouldn't be a surprise that Windows decided, screw it, you're paying $0.99 if you want HEVC, but we're not supporting it with every Windows license because that could easily cost hundreds of millions of dollars because of the lack of caps. Apple used their sheer market power to get HEVC on all their devices mainly for HEIC (HEVC for images), which reduces storage space needed for photos and iCloud costs, and once you have it on every iPhone, adding macOS is cheap. Presumably this is because Apple struck a deal with the patent holders individually and didn't need to accept the ludicrous patent pool terms. Did I mention that Access Advance alone operates their patent pool at an absurd 40% margin for its directors? (Yes, 40% of Access Advance's pool royalty, which is already the highest of any pool by far, is pure profit for the pool itself rather than going to patent holders. It's asinine!)

You might wonder why in the world H.265 licensing fell apart so badly. The answer is, well, streaming. H.264 got its first release in 2003, before YouTube or internet video was really a thing. HEVC was released in 2013 and patent holders were eager to extract rent from Netflix (distribution royalties), PC Makers (hardware royalties), Microsoft and Apple (software royalties), content producers (per-title royalties), basically everyone involved had a royalty somewhere because they thought HEVC was going to be the best thing ever for reducing streaming costs and people would pay for it. They didn't.

The only real place H.265 lives on is in 4K Blu-ray... and Next-Gen TV / ATSC 3.0 which is going to allegedly hopefully replace ATSC 1.0 for OTA Antenna-based TV Transmissions someday. Though, unlike the first digital transition, it's not mandated by the FCC and it also requires licensing HEVC, Dolby AC-4, and a billion other standards so... maybe it will die of patent exhaustion.

s.gif
With H.264 they retained the right to renegotiate the terms every 5 years. It was only after Theora and VP8 got some traction that they pledged to not alter the terms for the rest of the patent term.

AAC audio hit the exact same problem. Apple refused to support it until they dropped some of the more ridiculous licencing fees.

Even physical DVD players got shafted by MPEG patent prices becoming a significant share of the entire device costs in later years.

It's always been a scam. It always will be a scam. Exactly like the social networks that are so open and friendly till they've got you locked in. That's the whole business model.

HEVC lived and died by licence fees.

s.gif
h.265 also lives on in open source software other than browsers. VideoLAN has been ignoring the whole licensing disaster because "Neither French law nor European conventions recognize software as patentable" for ages :P
s.gif
The European Union almost certainly does, that's why it's allowed in countries like Germany and the United Kingdom (pre-Brexit and post-Brexit).
s.gif
> The only real place H.265 lives on …

Surely Apple devices count as a real place? I expect there are a lot more iDevices than 4K Blu-Ray players.

s.gif
VR took to HEVC from the get go just because they needed every savings in filesize that could be found. We were running HEVC videos on Android well before iPhones could do it. So it's beyond Apple devices too
probably a patent issue... I love x265 for the video file size and a decent video quality
s.gif
Back in the DVD era there was a conscious attempt to converge between the PC industry and consumer electronics.

Since then (when they decided that Blu-Ray drives weren't going to be standard in PC) there has been a decoupling. HEVC is a consumer electronics standard, the PC industry is going towards VP9, AV1 and other royalty free codecs.

Up until HEVC most codecs had one patent pool you could pay a royalty to and be good. HEVC had the problems that two entities claim to control essential patents

https://en.wikipedia.org/wiki/Access_Advance

https://en.wikipedia.org/wiki/MPEG_LA

s.gif
It also occurred with 4K Blu Ray, which was a real pain in the neck on PC requiring Intel SGX, Intel Secure Media Path, and a billion other DRM things. Then Intel removed SGX in 11th generation onward, and the Blu Ray developers have basically decided that being unable to play 4K Blu Ray on modern PCs is apparently just fine and haven't done anything to fix that.

To this day, the only official way to play 4K Blu Ray on a PC is to get a 10th gen Intel and play back using Integrated Graphics using one of the internal drives made by a drive manufacturer who was utterly shafted by this nonsense.

(It's got to hurt more though that 4K Blu Ray's new and improved DRM was, despite all this, broken less than a year after release. If you are a drive maker, knowing your drives are useless on modern PCs because of broken DRM that Blu Ray developers still insist is necessary must be the most infuriating thing ever.)

s.gif
To be fair USB sticks fill part of the removable media niche.
s.gif
we've had DRM'ed media for 20 years and people are still surprised that there's a reasonable chance of being shafted if they invest in the ecosystem?
Can someone help me understand why my windows 10 laptop with the latest VLC can't run x265 video files, but my windows 10 desktop with the latest VLC can? My desktop definitely runs circles around my laptop, but I'm not very well versed on video tech, so I haven't been able to figure out what the issue is on my laptop.
s.gif
FYI (not just you but generally): one tool that is very useful in this situation is called "DXVA Checker", it checks the DirectX video acceleration modules that are available for the current hardware/driver and then you can compare that against the file ("codec information" in VLC) and see what's going on.

I would hazard a guess that your laptop probably doesn't have a hardware H265, or that the H265 file you're using doesn't match up to the decoder module (eg 8 vs 10 bit, or color space, etc). It is then falling back to software-decode or hybrid mode, and then it doesn't have enough oomph to do the file.

https://bluesky-soft.com/en/DXVAChecker.html

s.gif
That's strange. I think VLC is able to play HEVC even if you don't have a hardware decoder. You've tried reinstalling and deleting the VLC appdata folder?
s.gif
Because the GPU in your laptop does not support x265 hardware acceleration. You need and intel 7th gen or newer for 10bit h.265. 6th gen only supports 8bit.

AMD APU's started getting h.265 support around the same time.

s.gif
What CPU and GPU do you have in each machine?

Low powered laptops without HEVC hardware decoding will probably struggle.

The other problem is like competing codecs (vpx comes to mind), they all require much more resources for little gain, both for encoding and decoding - even in hardware vp9 requires more than h264 (and 5), patents are not the only reason.

Also with a million competing codecs which do you choose....

s.gif
I have not seen evidence that hardware accelerates h265 decoding consume that much more energy. Generally the complexity increase is biased toward the encoder
H.265 works for me in Firefox using hardware acceleration via VA-API.
You are completely right. I have never gotten HW accel to work in ANY browser. It's honestly baffling that hobby project level video player get this to work without a hitch but Google and Mozilla can't. Even of decades.
s.gif
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search:

Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK