Hacker News new | past | comments | ask | show | jobs | submit login
Nvenc vs. QSV: Who Has the Best Hardware AV1 Encoder? (giannirosato.com)
70 points by computerbuster on April 16, 2023 | hide | past | favorite | 42 comments



Moscow State University has been running thorough benchmarks of hardware and software video encoders for years, including testing different presets: https://www.compression.ru/compression.ru/video/codec_compar...

Note: this is in no way an endorsement of Russia's invasion of Ukraine. In the past, MSU has accepted payment for some of their reports. I suggest you do not pay for these (assuming it's even possible now).


This is a great link, thanks!

> this is in no way an endorsement of Russia's invasion of Ukraine.

I sincerely hope that no one in their sane mind (at least on HN) would consider sharing a link to the academic work of Russian-speaking individuals as an endorsement of Russia's invasion of Ukraine.

Fascism isn't about prohibiting speech but forcing people to speak.[0]

[0] Roland Barthes said that: "Le fascisme ce n'est pas d'empêcher de dire c'est d'obliger à dire."


Eh, while the notice might not have been completely necessary, I do understand the awkwardness of linking to and recommending Russian state backed resources these days. It's the academic work of Russian-speaking individuals who are funded by the Russian state and whose work is published by an institution funded by the Russian state.

This is in no way meant to be taken as an attack on the individuals or the research, I'm just pointing out that you left out some quite important elements.


[flagged]


No.

1. I don't think the notice is necessary. I said as much in my comment. I understand why the person decided to include it. Understanding why someone did a thing is not the same as saying everyone should do the thing.

2. Endorsing something that's backed by the Russian state is different from endorsing something done by some random Russian individual. This was the main point of my comment, but I must have communicated it poorly.


I guess the issue is that this has never really been how internet discourse happened. I've never seen anyone apologize for linking a Yale/Harvard/CSU study during the iraq war (and rightfully so), so it just kind of seems... weird.


For what it's worth, the sanctions frameworks against Russia are minefields on their own - and for a good reason, given the lengths Russia is willing to go to work around these instead of withdrawing their murderous goons from Ukrainian soil.

I would rather not err on the wrong side of a sanctions violations charge for supporting a Russian government institution, and e.g. in Germany, even linking to something illegal can land you a "supporting that content" charge - even liking porn on Twitter and no I'm not joking here, that's a currently ongoing issue.


>"even liking porn on Twitter and no I'm not joking here"

I guess they learn from the best.


Sharing porn openly has always been illegal in germany. Liking a post is an endorsement (of a criminal act) or further spreading (which is illegal unto itself), depending on the platform. Same thing for hate speech. When the law says you can't say a thing, it's unclear how one would conclude publicly liking a post you can't legally make isn't criminal.


Obviously we have a different idea where freedom of speech ends.

PS. With this upcoming UN treaty on cybercrime citizen of one country not breaking their own law might still become a criminal because they had broken for example that German law. What a fucking mess we are getting into.


I'm supportive of limiting freedom of speech where said speech actually can cause real harm. Like, the same kind of speech that the OG Nazi regime used to justify sending six million Jews and many other people (e.g. the disabled, travellers, LGBT) to the gas chambers. Five minutes of a visit to Auschwitz, Dachau, Bergen-Belsen or other historical sites should be enough reason for that - maybe there are so many supporters of completely unrestrained freedom of speech in the US because y'all never had the chance to see the evidence in person.

I, however, object to prosecute people for simply expressing sexuality. Germany is the only country I'm aware of other than Islamist theocracies that goes after people posting lewds with such an insane ferocity.


> Germany is the only country I'm aware of other than Islamist theocracies that goes after people posting lewds with such an insane ferocity.

Well that's because this prosecution has been automated by the "Landesmedienanstalten" with "KIVI" which automatically scans most larger sites with UGC. From what I've heard they don't seem to seize anything in these prosecutions -- which is quite unusual, normally German police will seize all "digital devices" from suspected cybercriminals (just for a few years).

Increasing prosecutions by a factor X is seen as a huge success by the "Medienanstalten" btw., they boast quite openly about this on their own websites. More prosecution is more gooder.

I mean none of this is particularly surprising, these offices and their laws are one of the main driving forces behind mandatory ID checks and internet censorship in germany. Your comparison to similarly behaving theocratic executives is apt, especially considering the prussian origin of the underlying laws.


Which would be true, if Weimar germany was some sort of free speech heaven, which is what led to nazi germany. But it wasn't, and it didn't. The proof is literally right in your comment. One of the countries that had such unrestricted freedom of speech (the USA) was fighting the nazis, not being part of them. Weimar Germany had many more restrictions on speech than the USA had back then.

You might want to take a step back and consider that free speech had nothing to do with the holocaust. At most, it is a great way to justify censorship and pretend that restricting speech is somehow antifascist while also feeling morally superior, but it has no basis on reality.

Also, it is pretty ironic to say that the USA's policy is bad because they never had to see remanents of a holocaust... which is certainly a hot take.


On the subject of Ukraine and Russia this hasn't happened yet. Yandex, their Open Source and Clickhouse so far have relatively little of this issue. ( Not saying there aren't, but mostly below a 5% threshold )

Not the same could be said on other subject matters though, especially those that involves American politics and Culture War. Political sensitivity on HN went through the root in the past 6-7 years. Although things has die down a lot in the past 6 - 8 months. But I am not surprised OP decided to play it safe.


[flagged]


A real ally ends every speech with "Russia delenda est."


> Please be aware that some images may not load on this page unless your browser supports JPEG-XL

The site could provide a WebAssembly decoder to make the JPEG-XL images work for everyone.

For example, here's a WebAssembly decoder: https://github.com/niutech/jxl.js

Demo: https://niutech.github.io/jxl.js/


You're right, I should look into this. Thanks for linking.


Thats a great comparison. ~x265 medium is quite impressive for a hardware encoder, and it makes more sense than some questionable claims I saw from YouTubers.

I'm sure you have already read this, but AMD claims their new encoding ASIC can do even better: https://www.anandtech.com/show/18805/amd-announces-alveo-ma3...

> All told, AMD is making some fairly aggressive image quality claims with the Alveo MA35D; H.264 and H.265 image quality should be similar to x264 Medium and x265 Medium presets respectively, while the card’s AV1 encoding quality should be comparable to x265 slow.

Since it can do so many parallel streams, I can already see some mad hatter setting up av1an with one.


Eposvox on YouTube has some samples from the MA35D: https://youtu.be/TYOkJFOL5jY?t=502

TL;DR - it's looks really good.


If you like the Alveo, check out the NETINT cards. Better specs, and you can actually buy them today...


Whoof almost $1600. But amazing.


It was interesting to see the hardware VP9 encoder included. I’ve found it to be the best streaming format for compatibility (ignoring h264) - a single stream can be watched on all devices and browsers


Yeah, if you stream av1 to YouTube right now they transcode your content to vp9 for compatibility reasons


I dont know how I feel about testing of video encoder quality by someone showing me graphs with gray text on gray background. Its almost like he doesnt want me to read those and just trust his conclusions :)


> These tests are more thorough than mine, but aren't accompanied by much explanation or any VAAPI results for Linux

Isn't VAAPI AV1 encoding not yet implemented for AMD?

May be Vulkan video will become available for it before it happens.


Not sure about their videos but I could not achieve the same quality at a limited bandwidth using NVENC vs x264. x264 quality was clearly superior. One does not have to do any pixel-peeping to notice.


Using SSIMULACRA2, I've compared Intel's QuickSync Video to Nvidia's NVENC encoder across Linux & Windows. They compete against other dedicated encoding hardware for different codecs across different GPUs, including an Intel iGPU.


> Please be aware that some images may not load on this page unless your browser supports JPEG-XL.

Using an image format supported by exactly one browser - one that has less than 5% of the market share - without providing a fallback - is a pretty questionable choice.

I can't imagine that the bandwidth savings are even remotely significant to justify such a choice over an optimized PNG, JPEG, or the nearly-universally-supported webp.


tl;dr: AVIF, HEIC and WEBP all handily beat JXL for the Minecraft and CSGO screenshot.

From the article, minecraft.jxl is 545275 bytes.

Using imagemagick[1] to convert to various formats at 8bit depth:

     191875  36.39% csgo.avif
     288048  54.63% csgo.webp
     349204  66.23% csgo.heic
     507882  96.32% csgo-8bit.jxl
     511727  97.05% csgo-85.jpg
     527282 100.00% csgo.jxl
     960946 182.25% csgo-95.jpg
    3665475 695.16% csgo.png

     183935  33.73% minecraft.avif
     266890  48.95% minecraft.webp
     358482  65.74% minecraft.heic
     490623  89.98% minecraft-85.jpg
     522250  95.78% minecraft-8bit.jxl
     545275 100.00% minecraft.jxl
    1047533 192.11% minecraft-95.jpg
    3018052 553.49% minecraft.png
[1] Version: ImageMagick 7.1.1-6 Q16-HDRI aarch64 21020 https://imagemagick.org


You can't just compare lossy image formats on size alone, you have to factor in image quality. All of the formats have one or more quality parameters that have huge impact on size/quality.


When it comes to computer screenshots, it's PNG or another lossless format or GTFO. Even moreso if the purpose is comparing image quality of the screenshots' contents.

(No, I did not see those JPEG-XL images because Chromium laughs at it.[1])

[1]: https://news.slashdot.org/story/23/04/16/002204/fsf-says-goo...


This is coming from a 2009 account so I am guessing all these results have a similar score in quality testing? If so which metric did you measure it with?


It would be nice if the encoding times were measured to know which is best for latency sensitive streaming.


I was recently asked why so few chips support decoding AV1 in hardware.

There were multiple mutually incompatible AV1 versions early in development, and some companies chose to not to implement either until the situation settles down.

But by that time X265 was already deployed en masse in the wild. And now X266 is about to take over.

Many will chose to leapfrom AV1 straight to X266.


Not just that. Video codecs are insanely hard to get right even in software, FPGAs capable of running a decoder are expensive, the intersection of "people who know video codecs" and "people who know Verilog" is pretty small, and a decoder has to support a lot of leeway in ingestion to allow for others' buggy encoders... and if you're also making encoders, shipping bad hardware encoders at scale will kill your reputation as now everyone else has to deal with implementing quirks for your bad content.

That means developing and testing an ASIC encoder or decoder block is one hell of an expense. If you're someone like Apple with more cash than the GDP of many countries or if you're making an implementation of a codec that is a worldwide standard (like h264/h265 are) and you can simply make your profit on selling billions of chips, you can do this. But everyone else can't.


not unless the licensing gets figured out. as long as decoding requires paying no browser or website will support it.


first time I hear about X266, interesting. I have just re-enocded a lot of Videos into AV1. Oh well....


Isn't re-encoding almost always a loss in quality? Unless you're doing it from uncompressed video or from super high quality video to reduce file size.


Yea. Also a waste of electricity.


> Please be aware that some images may not load on this page unless your browser supports JPEG-XL.

lol really? Who writes a website that only works on Firefox Nightly with a feature flag enabled?

I would have been interested in reading this otherwise.


The GPU architecture of Arc A770 is Xe, while the iGPU of Core i7 13700K is UHD, so they are clearly different. On the other hand, the iGPU of Ryzen 7000 is RDNA2, so it can be assumed that it has the same quality as RADEON 6000, although with a very large scale difference. Therefore, the conclusion is that the iGPU of Ryzen 7000 is the best option for having an AV1 hardware encoder that can save money for eating a lot of nice ramen.


>Arc A770 is Xe, while the iGPU of Core i7 13700K is UHD, so they are clearly different

The newer UHD integrated graphics also use the XE architecture so they're basically the same architecture.

[1] https://www.notebookcheck.net/Intel-UHD-Graphics-64EUs-Alder...


Xe is really just branding, not a description of a particular microarchitecture or family of microarchitectures. Intel's most recent integrated graphics still isn't at feature parity with their discrete GPUs; they haven't added raytracing support yet, either.




Consider applying for YC's first-ever Fall batch! Applications are open till Aug 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: