Daala: Modern video compression for the internet
github.com
github.com
Since the formation of the Alliance for Open Media, Mozilla/Xiph's work has mainly shifted towards helping them develop AV1 (for standardization by the IETF hopefully next year) which is mostly based on what would have been Google's VP10. That said, their work on Daala was not wasted as they are working on integrating the most successful parts of Daala into AV1 where it makes sense, such as their entropy coder.
On a sidenote: screw Google for switching YouTube over to VP9 for some bandwidth savings, full well knowing 95%+ of people does not have VP9 acceleration and thus having YouTube absolutely slaughter their laptop battery. H264ify fixes this, but still. ALWAYS put the user first.
Edit: to be clear, I know all the big builders (Intel, Nvidia, AMD etc) are part of AOMedia. However, they also all promised VP8 support which never happened, and VP9 support which is more than a generation late.
Companies smaller than Intel or AMD like Chips & Media, VeriSilicon, Polycom, and Broadcom are part of AOMedia: http://aomedia.org/about-us/
ARM is also part of AOMedia. So I don't think the claim that there will be no hardware support for AV1 adds up. If anything, AV1 is already well positioned for good hardware support before it's even released.
Adobe, Allegro¹, Amazon, AMD¹, Amlogic¹, ARM¹, ateme, BBC R&D, Broadcom¹, Chips & Media¹, Cisco, Google, Intel¹, Ittiam, Microsoft, Mozilla, Netflix, Nvidia, Polycom¹, Socionext¹, VeriSilicon¹, Vidyo, XILINIX¹
¹ indicates hardware or hardware IP companies.
An article on the codec indicates: > The group is aiming to freeze the bitstream sometime between the end of the 2016 and March 2017. Expect to see browser-based support soon thereafter, with the first hardware support within 12 months after that. http://www.streamingmedia.com/Articles/Editorial/Featured-Ar...
Also check that you're getting the same resolution on both. H.264 requires more bits, so you might be getting a lower resolution (which also takes less energy to decode).
Version 1 (Sandy Bridge) Quick Sync was initially built into some Sandy Bridge CPUs, but not into Sandy Bridge Pentiums or Celerons.
Version 2 (Ivy Bridge) The Ivy Bridge microarchitecture included a "next-generation" implementation of Quick Sync.
Version 3 (Haswell) The Haswell microarchitecture implementation is focused on quality, with speed about the same as before (for any given clip length vs. encoding length).[citation needed] It has seven hard-coded quality/performance levels (called "target usages"), compared to the three in previous generations. The highest-quality TU1 setting is intended to be higher quality than Ivy Bridge's version, and the highest speed TU7 setting should be faster, higher-quality, and more battery-friendly for mobile devices. This generation of Quick Sync supports the H.264/MPEG-4 AVC, VC-1 and H.262/MPEG-2 Part 2 video standards.
Version 4 (Broadwell) The Broadwell microarchitecture adds VP8 hardware decoding and encoding support. Also, it has two independent bit stream decoder (BSD) rings to process video commands on GT3 GPUs; this allows one BSD ring to process decoding and the other BSD ring to process encoding at the same time.
Version 5 (Skylake) The Skylake microarchitecture adds a full fixed-function H.265/HEVC main/8-bit encoding and decoding acceleration, hybrid and partial HEVC main10/10-bit decoding acceleration, JPEG encoding acceleration for resolutions up to 16,000×16,000 pixels, and partial VP9 encoding and decoding acceleration.
Version 6 (Kaby Lake) The Kaby Lake microarchitecture adds full fixed-function H.265/HEVC Main10/10-bit encoding and decoding acceleration & full fixed-function VP9 8-bit & 10-bit decoding acceleration & 8-bit encoding acceleration.[13][14]
https://communities.intel.com/thread/59216
https://en.wikipedia.org/wiki/Broadwell_(microarchitecture)#...
So you just have a driver problem. Apple was playing with adding WebP support in beta versions of iOS a while back. So maybe they'll add WebP and WebM support in the next major version of macOS and iOS.
Not what I'm looking for. The GPU still uses about 2x more energy than the dedicated Quicksync silicon, although its better than only using the CPU.
In case you're wondering, I did read the second link, it actually uses the first link as a source.
I'm not trying to be contrarian btw, for me (and my Macbooks battery) I just feel that the distinction between GPU acceleration and a dedicated decode core is an important one.
They need to resist the urge to treat file formats the same rapidly iterating way as web APIs -- the way the VP8/VP9/VP10 series has been treated so far. Rapid evolution and the lack of well-defined profiles will discourage hardware implementation or lead to a proliferation of profiles the hardware decoders can't play.
The fragmentation will discourage the format's use beyond online video, and the next ITU-T or MPEG format will win out for any and all uses where longevity is important. As for online video, this recipe will likely be an archival nightmare regardless [1].
But there are lots of off the shelf product like the ARM Mali Video IP that you can just buy and slap onto your product. This is what many SOC vendors do.
These codec engine IP products have their entire business model built around the two facts that:
1) New codecs will be released
2) New codecs will be a lot more computationally expensive. For example: h265 offers up to 50% bandwidth savings compared to h264 but requires about 3x CPU cycles for decoding. During encoding the issue is a lot worse.
Full disclosure: I worked in the ARM Video Codec group.
Additionally, adoption is really slow of VP9 already so I don't see anyone switching to Daala soon.
No one will switch to Daala. They'll switch to AV1. As other commenters have noted, the AV1 codec is built from Google's VP10, Mozilla and Xiph's Daala, and Cisco's Thor. Wikipedia has a good summary of AV1: https://en.wikipedia.org/wiki/AOMedia_Video_1
And if you're interested in the source, the AV1 git repository is: https://aomedia.googlesource.com/
https://arewecompressedyet.com/?job=av1_rt_ctrl_new_twitch%4...
While none of these metrics are as good as the "human quality" metric, some are better than others, in different ways, so we try to optimize across the board.
MPEG-2 is effectively out of patent now for almost all uses. Here's MPEG-LA's patent list.[2] The one remaining unexpired patent [3] only applies to error correction for pay-per-view satellite broadcasts.
[1] https://news.ycombinator.com/item?id=10042469 [2] http://www.mpegla.com/main/programs/M2/Documents/m2-att1.pdf [3] https://www.google.com/patents/US7334248
https://www.ietf.org/proceedings/97/slides/slides-97-netvc-d...
If I'm not missing something, this suggests that Daala's quality will be comparable to H.265. No doubt encoders for both will continue to get better.
IMHO, "comparable to H.265" may not be as inspiring but is still very impressive. If they can do this without stepping on existing IP, it'll be an incredible achievement.