this post was submitted on 19 Apr 2024
184 points (97.4% liked)

Technology

57472 readers
3655 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
 

Arif Dikici, who is a part of the Android Video and Image Codecs team at Google, recently announced on LinkedIn that Android will now use an AV1 decoder known as “libdav1d,” which was created by the team behind VLC.

top 40 comments
sorted by: hot top controversial new old
[–] conciselyverbose 91 points 4 months ago (2 children)

Because they can't use hardware decoding.

Which is fair, but AV1 isn't new any more, and it's pretty universally recognized as better.

[–] [email protected] 20 points 4 months ago (1 children)

Hardware decoding is the whole point. Hardware support is notorious for lagging greatly behind software. Desktop support is not great either right now. It makes you wonder what Google's reason is, they have to be aware that must people won't be able to use it properly.

[–] conciselyverbose 6 points 4 months ago (2 children)

I know hardware decoding is the point. But you can't just wait until every phone on the planet supports it.

Their reason is that it's a massively better format.

[–] [email protected] 6 points 4 months ago

But you can't just wait until every phone on the planet supports it.

The proper approach is simply to have the app check the hardware decode capabilities of the device and use the best option. Pretty sure that's what YT has always done for codec transitions in the past.

Forcing AV1 on devices without hardware decode will end up making users think their battery is starting to wear out, even with the better software decoder'

[–] [email protected] 1 points 4 months ago (1 children)

...massively better for whom? I mean I understand if they start using it and offering it to devices that support it. But if they push something that needs software decoding when there are other formats that have hardware support it's going to be a shit fest.

Right now AVC (H264) has hardware 4k support and HEVC (H265) has hardware 2k, while AV1 only has 1080p software. What's the point of offering AV1 4k?

[–] conciselyverbose 20 points 4 months ago* (last edited 4 months ago) (1 children)

Massively better quality per byte.

You know, the sole purpose of a lossy video codec?

But the licensing is also far better for end consumers.

[–] [email protected] 3 points 4 months ago

None of that is going to benefit you if your phone barfs its guts trying to decode it. Until you get a phone with hardware support it's going to be purely theoretical. And if Google forces you to decode 720p AV1 in software when you have a perfectly good AVC and HEVC hardware decoder just sitting there is going to be downright stupid.

[–] [email protected] 1 points 4 months ago (1 children)

I think only the last generation or two of iPhones even supported h265. That said there's a lot less reason for them to take as long supporting av1 if my understanding is correct about the patents Etc. And yes av1 is a massive step up. I've been redoing much of my jellyfin library with it and it's fantastic. But they should still at least offer a fallback of 264 or 265.

[–] [email protected] 2 points 4 months ago (1 children)

The Apple A9 (iPhone 6S) added hardware decoding support for HEVC/H.265, the A10 (iPhone 7) added hardware encoding as well. If I recall correctly Apple was pretty much first in supporting saving video recordings in HEVC.

You might be confusing this for AV1 support, which Apple added with the A17 Pro and the M3 (both decode only though).

[–] [email protected] 0 points 4 months ago

No I'm not confusing it. But I'm definitely no expert. All I know is that especially over the pandemic years probably because of lots of family without newer phones at the time though I could have sworn several were. I kept getting lots of complaints about files not playing it all ended up being about h265. So you are probably right.

I am very much not a Microsoft or apple person.

[–] [email protected] 41 points 4 months ago* (last edited 4 months ago) (1 children)

This is not a very helpful article summary.

One of the key benefits of the codec is that it helps maintain video quality during compression and decoding, so many users are excited about the potential for higher quality AV1 video. However, not everyone is happy with the change — particularly those with older devices and midrange phones. It's mostly newer higher-end phones that have hardware decoding support for AV1, so those with midrange devices and older flagships may have to rely on software decoding now that YouTube has opted in to the libdav1d decoder. Many of these Android users have expressed concern over how the change will impact their battery life if it means a move away from hardware-accelerated decoding.

[–] [email protected] 28 points 4 months ago (3 children)

This is not a very helpful article summary.

Sorry it wasn't meant to be. I just thought it was funny that they're taking advantage of VideoLAN's library (which is presumably open source) rather than their own.

[–] [email protected] 13 points 4 months ago (1 children)

They are and it is. This was anounced two months ago, though i didnt find any articles about google paying for or directly contributing to videolan for the use of it.

https://www.androidauthority.com/android-update-av1-videos-3420418/

[–] [email protected] 13 points 4 months ago

Looks like it might be inferred by this:

https://www.videolan.org/projects/dav1d.html

About

dav1d is a new open-source AV1 decoder developed by the VideoLAN and FFmpeg communities and sponsored by the Alliance for Open Media.

https://aomedia.org/membership/members/

Founding Members:

  • Amazon
  • Apple
  • Cisco
  • Google
  • [etc]

It is good that Google is acknowledging that a decoder made by someone else is better than their own by switching to it though.

[–] [email protected] 6 points 4 months ago* (last edited 4 months ago)

AV1 is based on VP9. Google made VP9 and it's open source and royalty free.

Google just joined the Alliance for Open Media and gave their VP9 as a starter for AV1 instead of making some other successor called VP10 or something on their own.

During development of AV1 Google contributed a lot to libaom, the reference implementation in C++, but since this codebase grew together with the codec it is not the most clean design. Also the reference implementation benefits from being clear more than being fast.

Therefore, instead, these days the later projects rav1e (encoder in rust, started by Xiph Foundation) and dav1d (decoder in C, started by the VideoLAN non-profit) are the fastest, because they started from a green field approach when the wire-format for AV1 was mostly fixed and they focused on speed.

I think overall Google's stance on the Alliance for Open Media makes sense. As part of the new media streaming techno bubble they (as well as Amazon, Facebook, even Microsoft) have an interest in getting an interoperable royalty free codec into the market, and spread it as far as possible, to avoid the rent seeking behaviour of the old guard, Moving Picture Experts Group (MPEG) from Hollywood and similar groups. For every device that wants support for H265 the OEM has to pay a license of around 1 dollar currently.

[–] [email protected] 2 points 4 months ago

I would guess some Google devs have contributed to it.

[–] [email protected] 22 points 4 months ago (3 children)

Reminder that all libaom versions are named after My Little Pony characters. Anytime you watch a video encoded in AV1 you are consuming My Little Pony content

[–] [email protected] 14 points 4 months ago

Oh no.....?

[–] [email protected] 7 points 4 months ago

I don't know if this is meant as a warning, or a "ha, fuck you!", or an attempt to spark outrage, or to make us all cozy inside.

I've never watched the shit so it's hard for me to tell.

[–] [email protected] 1 points 4 months ago
[–] [email protected] 14 points 4 months ago (3 children)

How can I test if my phone uses hardware decoding for AV1?

[–] silverdiamond 21 points 4 months ago (2 children)
[–] [email protected] 6 points 4 months ago

According to this, my OnePlus Open has hardware av1 decoding. That's pretty cool.

[–] [email protected] 2 points 4 months ago

Nice, I was pretty sure my Pixel 7 already had hardware AV1 decoding and this app seems to confirm it.

[–] [email protected] 5 points 4 months ago (1 children)

Let me save you some time, it doesn't. I have no idea what Google is thinking, very few phones have it right now.

[–] [email protected] 4 points 4 months ago (1 children)

My Pixel does. 🤷🏼‍♂️

[–] [email protected] 0 points 4 months ago* (last edited 4 months ago) (1 children)

They've delivered the VLC software decoder over-the-air to all devices with Android 12 which enables them to do 720p. Some Android 11 devices may have come with an older software decoder and may be able to do 1080p. Either way, software-decoding AV1 is gonna suck even with the new decoder.

Hardware support is present starting with Exynos 2xxx, Snapdragon 8 gen 2, and Dimensity 1xxx, 8xxx and 9xxx.

Here's a gsmarena filter, you can further refine it to restrict to recent years, by brand etc.:

https://gsmarena.com/search.php3?sAvailabilities=1&sChipset=125,116,118,84,126,117,108,128,129,112,130,131,110,113,98,99,121,69

[–] [email protected] 2 points 4 months ago

Not sure what your point is. You confidently, perhaps prematurely, suggested that OP's phone didn't have hardware AV1 decoding. Do you know what kind of phone they have? Your filter also ignores Tensor as a chipset. All Pixels since 6 have AV1 hardware decoding. So, basically, what you're suggesting is that anyone with a phone over 3 years old doesn't have AV1 hardware decode, and considering that the specification was only finalized in early 2019, you seem pretty grumpy about it for some reason. Just because it's being set as default doesn't mean support is being removed, just deprecating them as a fallback. Why grumpy?

[–] [email protected] 5 points 4 months ago

Pixel 6 & newer, newer MediaTek devices, anything with the Snapdragon 8 gen 2 or newer. It took Qualcomm a while because many companies (including Apple) were holding out for VVC, which to this day isn't in a great state. iPhone 15 Pro & newer support AV1 hwdec

[–] [email protected] 13 points 4 months ago

Youtube has multiple format streams (vp9, avc (mp4), av1) by default. So frontends choose the one supported and good.

[–] [email protected] 9 points 4 months ago

One one hand av1 has some great advantages and this will force some lagging OEMs to add hardware support

On the other hand snake ass google already split encoding into premium qualities, so they're just gonna set the "free" bitrate so low it may as well be H264.

[–] [email protected] 8 points 4 months ago (1 children)

I'm still looking for something to replace my shield TV tube. I don't believe that has AV1 support.

[–] [email protected] 11 points 4 months ago

Android added software-based AV 1 decode yesterday so the Shield could support it with an update.

[–] [email protected] 4 points 4 months ago (3 children)

Are they still using Mp3 for audio or have they switched to something more modern for that too?

[–] [email protected] 15 points 4 months ago

They've been using opus for probably around a decade at this point, and in fact YouTube was a pretty early adopter of it and had a large role in popularizing it

[–] [email protected] 14 points 4 months ago

Pretty sure they use opus

[–] [email protected] 3 points 4 months ago

Opus and AAC

[–] [email protected] 3 points 4 months ago

Firefox for android supports extensions so could probably use youtube mp4 there. Not sure what other youtube frontends (if functional still since the crackdown) support changing the codec

[–] [email protected] 2 points 4 months ago

AV1 has been quite disappointing compared to HEVC. Encoding and decoding is super heavy and hardware acceleration is very lacking.

[–] [email protected] 1 points 4 months ago* (last edited 4 months ago)