Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

How good is the performance? Is 4K60 on a phone possible? 1080p60? Hard to find numbers on this


I think that for most of these libraries software-only performance is a moot point: the library is there for other software to use to be able to parse the files, and the library/decoder will simply offload the heavy compute to the (hopefully eventually-available) decoding hardware instructions.

To a certain extent it's just a place holder so folks can start writing software against it so that when the CPU vendors ship everyone can hit the ground running.


Wouldn't that only be true of the reference encoder libaom?

This is the description the dav1d page gives:

dav1d is the fastest AV1 decoder on all platforms :)

Targeted to be small, portable and very fast.

Since they use the word fast twice I was wondering how fast.


I'll try to dig up the slide where they demonstrated it, but basically faster at equal quality than any software decoder of any codec.

Which is cool, but if you have hardware decode then you may not care, though software decode gets used in all sorts of weird places that you might not expect.


Of any codec? Are you sure?


Yeah, the key is that newer generations of codecs use more time to encode, but often the decode time goes up less than the encode time. Combine that with greater design for parallelism and you find yourself in the slightly counterintuitive situation where decoding the same quality of video is faster in the newest codecs (at the one time cost of longer encodes).

I dont think it was one single slide I was thinking of but you can for example find comparisons of vp8, vp9, h264 by the same videolan/ffmpeg devs that demonstrate this general principle, the decode fps is surprisingly flat between software decodes of different codec families and generations.

The earlier generations often hit bottlenecks though, I think ffmpeg VP9 decode (built by the same people as dav1d) was the leader for a while but hits a wall at 4 cores due to format limitations. HEVC and especially dav1d have some gains when you can throw a modern amount of cores at it, and even phones often have 8.


>Is 4K60 on a phone possible?

Depends on SoC. A15? or low end UniSoC SoC? But generally speaking a modern Smartphone should be able to play 1080P 25fps 1mbps AV1 video on their phone without dropping frames. You will just be burning away your battery life.


It's bad. As a reference, I tried decoding a measly 2 mbit/s test clip on an older Core 2 Duo MacBook Pro (which has no issues playing back the same in H.264 purely with software decoding), and it stuttered a lot. I don't see this thing taking off until there's decent GPU acceleration in place. "Fast decoder" is highly relative.


> older Core 2 Duo MacBook Pro

Core 2 Duo are processors from 16 years ago...

Mobile phones are more powerful than those machines...


Yes, most are. That Core 2 Duo machine is the weakest hardware I have that I know can decode H.264 lower bitrate FullHD content in software. It made for a good benchmarking baseline.


And those machine cannot decode H265 in software… Sorry but you cannot say dav1d software decoding is bad on phones because some hardware from 15 years ago who can barely decode H264 cannot decode it.


It will drain your device battery pretty fast because of high CPU usage. There's nothing good about such a performance. It's just bad.


As all software decoders… So you compare software to hardware decoders?

H265 or VP9 in software are the same… Here, we managed to have a sw decoder for a format that is one order of magnitude more complex than those codecs and yet, consume less CPU.


"So you compare software to hardware decoders?"

No. I understand your vitriol, but please just stop. I'm not demeriting AV1's technical basis.


I tried decoding a measly 2 mbit/s AV1 test clip on a 2014 MacBook Pro with a 2.2 GHz Quad-Core Intel Core i7 and it was buttery smooth.


So is an H.264/H.265 video clip at 5 or even 10 mbit/s on my 4 years old iPhone, at about 2 watts of power consumption instead of 35 watts. Can you see the advantage?

I like open and free standards, and I dislike royalties, but the political aspect is best foregone when one of the alternatives really is objectively so much better for everyone.


One of the alternatives is clearly not objectively so much better for everyone. If they were so much better then VP9 and AV1 wouldn't exist. Here's what video streamers say:

https://youtube-eng.googleblog.com/2015/04/vp9-faster-better...

https://engineering.fb.com/2018/04/10/video-engineering/av1-...

https://netflixtechblog.com/netflix-now-streaming-av1-on-and...

https://medium.com/netflix-techblog/bringing-av1-streaming-t...

https://bitmovin.com/bitmovin-improves-av1-video-encoding/

https://blog.webex.com/video-conferencing/cisco-leap-frogs-h...

https://blog.webex.com/engineering/the-av1-video-codec-comes...

Your problem is fundamentally an emotional one. Now that you suspect Device X will perform poorly at Task Y you feel buyer's remorse.

Try not to worry about it so much. Computer hardware will continue to be made obsolete by more demanding software for quite some time yet.


There are no emotions involved here, with the exception of your childish choice to try misconstrue my argument. I consider the MPEG family as objectively better on the technical merit of GPU/VPU hardware decoding being available everywhere - it's fast and it's energy efficient.


> There are no emotions involved here

Of course there are. This is typical.

> I consider the MPEG family as objectively better on the technical merit of GPU/VPU hardware decoding being available everywhere

Then there will never be any codec development. It's a silly position to take.


You're very stubborn with telling me what my position and my own arguments are. I'll give you the benefit of the doubt and presume you're not just looking for people to rile up, but rather have the bad habit of leaping ahead and making other people's arguments and stances up on your own to better fit your desired counterpoint, so I'll clarify: I am certainly not against new development or progress, and I don't think that it's pointless to put an effort into AV1 or VP9. As I wrote elsewhere in this discussion, I just don't see this taking off until there's hardware decoding available, which I fully expect there to be. I'm merely underlining that the MPEG family is the state of the art.


> I just don't see this taking off until there's hardware decoding available

Hardware decoding is available. And dav1d is a very fast software decoder. I don't have AV1 hardware and yet I play back AV1 on YouTube just fine via dav1d.

> I'm merely underlining that the MPEG family is the state of the art.

It isn't.


This is not true.

AV1 is at least as widely supported as VVC.

Nothing supports hardware decoding if mpeg EVC, and hardware decoding if the original mpeg 4 (xvid generation) was never a big deal.


Trying to imagine how close you would have to be to the screen to tell the difference between 1080 and 4k...


It's hard to tell for uncompressed, but easy for compressed YouTube videos


So you're saying that a given 4k source compressed to Xmbit will look better if it's not downscaled to 1080p before compression, but instead downscaled by the display (I don't believe there are any phones with a 2160 line display)?


4K YouTube videos have a higher bitrate than 1080p videos


What they're saying is that a 1080p source upscaled to 4K and then uploaded to youtube and then downscaled by the client to a 1080p screen will look better than a 1080p upload because it has more bits.


That's nothing to do with the codec or the resolution


The reason it looks better isn't directly codec or resolution.

But it does mean that there are reasons to want 4K playback on a phone.


But doesn't YouTube negotiate a "channel sized" rate? It seems like it switches between bitrates based on what you can tolerate. All of this is to say that it seems like a tough-to-nail-down metric to evaluate.


I always assumed that for streaming sites bitrate was a bigger factor


Of course it is, a 1080p video at 10mbit will almost always look better than a 4k video at 1mbit, and a 4k video at 10mbit will almost always look better than a 1080p video at 1mbit.

The far more interesting question is if you accept you have Xmbit to play with, what is better on a given platform (screen size, resolution, viewing situation, how well compression works, how much battery is used in decoding, etc)


And bitrate goes up for 4k tiers. Even if bitrate only doubles for 4x the amount of pixels, that'll probably look better with modern codecs (depending on where in the quantization curve you are), and most services use at least 3x the bitrate for 4k over 2k, across the same codec.


Compressed by what? Are you just talking about videos you record on your phone?

I do not know what phone you have but an iPhone 12 ( as an example ) is under 1300 pixels on the short dimension. So you are not getting much more than 1080 pixels no matter what. It seems any experiential difference would have more to do with compression quality than with resolution.

Speaking for myself, I do not think I could tell the difference between 4K and 1080p on a phone ( on a decent AV1 clip ).


Surely, sitting in front of a laptop or iMac would make it easy to tell.


"on a phone"

SMPTE suggest that 4k for viewing is only worthwhile for people with 20/20 vision once the viewing angle increases beyond 30 degrees.

I'm currently looking at a 40cm wide screen, I'm 80cm away from it, which is about 30 degrees.

For my phone to fill that amount of space it would have to be about 10cm in front of my eyes due to binocular vision (if I just use one eye it's a bit further

When I watch something on my phone it's typically 50cm away, about 15-20 degrees viewing. 720p is more than enough at that size, 1080p if you have particularly good eyesight.




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

Search: