AV1 Ecosystem Update: November 2019

The Tale of Two next-gen SOCs - Snapdragon 865 and MediaTek Dimensity 1000 Last month, we saw the release of SOCs expected to power next-gen flagship smartphones. Since the AV1 standard as formalized, the community has been waiting to see when SOC manufacturers add hardware support for AV1 decoding. It looks like we'll be waiting a lot longer for such a chip from Qualcomm. In what might come as a shock, MediaTek announced the first SOC to feature such support with their new Dimensity 1000 chip....

December 17, 2019 · 3 min · Kay Singh

AV1 Ecosystem Update: October 2019

Let’s start this month’s roundup with a faster decoder! dav1d 0.5.0 & 0.5.1 release In October, dav1d saw two new releases with some fantastic speed improvements. Here is a summary: Large improvements in speed on SSSE3 CPU (up to 40% speedup) Speed improvements on AVX-2 (for 4-7%) Speed improvements on ARM64 (up to 10%) and ARM32. 0.5.1 is a minor release which brings improvements in speed for SSE2 CPUs (up to 50% speedup), and ARMv7 CPUs (up to 41% speedup)....

November 14, 2019 · 3 min · Kay Singh

AV1 Ecosystem Update: September 2019

Let’s start this month’s roundup with the release of two of our favorite encoders - rav1e and SVT-AV1! rav1e rav1e finally has a new weekly pre-release with the following updates: Improvements More API documentation Better error reporting Nicer error messages in the cli application Explicit validation of the encoder configuration The input Frame type can be expressed Added cargo-fuzz support and documented its usage Better rate-control support Two-pass rate-control support Additional speedups over all the speed levels on x86_64 Changes...

October 4, 2019 · 4 min · Kay Singh

Part 3: Building a scalable 'shot-based' serverless AV1 video encoder in Azure

This is a 3-part blog covering how to build a scalable shot-based serverless video encoder in Azure. In Part 1, I explain what AV1 is and where we are in the video encoding space. In part 2, we create a logic app to upload and index the video. In part 3, we’ll need to split the video into its scenes and encode individual scenes. For reference, here are the links to all the parts:...

September 26, 2019 · 7 min · Kay Singh

Now Available: Weekly build of libaom AV1 + FFmpeg docker image

Motivation While trying to try out the latest features for the libaom AV1 encoder, I’ve been trying to figure out how to get a hold of the latest binary. As of writing of this blog, I haven’t come across any source on the web that publishes a binary of libaom AV1 encoder. Often while trying to get a hold of the latest changes in libaom, you have to build the source yourself which takes time....

September 21, 2019 · 2 min · Kay Singh

AV1 Ecosystem Update: August 2019

AVIF in Spectrum lib While browsing for AV1/AVIF updates, I noticed this commit to Facebook’s open source Spectrum library that adds support for AVIF format. https://github.com/facebookincubator/spectrum/commit/89b87bee831d3c7aabd0ad327fb118ce699df55d Spectrum is an image transcoding library for iOS and Android that is meant to be integrated into apps for image operations. Hopefully this means that we’ll see apps supporting AVIF format soon! FFmpeg 4.2 release FFmpeg 4.2 codenamed “Ada” was released on August 5th, 2019....

September 3, 2019 · 3 min · Kay Singh

AV1 Ecosystem Update: July 2019

If May and June were F1 race cars in terms of speed of AV1 development, then July would probably be a Honda Civic. After numerous exciting announcements in the previous month, July felt like everyone’s on vacation, which is probably true because summer months tend to be slow as the school’s out. So, this update will be a short one as I’m out on vacation as well :) Mile High Video 2019 Nathan Egge of Mozilla and Brion Vibber of Wikimedia presented a session recapping AV1’s progress in the last year....

August 13, 2019 · 3 min · Kay Singh

Part 2: Building a scalable 'shot-based' serverless AV1 video encoder in Azure

This is a 3-part blog covering how to build a scalable shot-based serverless video encoder in Azure. In Part 1, I explain what AV1 is and where we are in the video encoding space. In part 2, we create a logic app to upload and index the video. In part 3, we’ll need to split the video into its scenes and encode individual scenes. For reference, here are the links to all the parts:...

August 1, 2019 · 7 min · Kay Singh

AV1 Ecosystem Update: June 2019

It’s been a pretty busy for me professionally which is why this month’s AV1 ecosystem update is coming in pretty late. It’s been one of the most exciting months for AV1 development and a lot to catch up on! With so much news this month, it is starting to feel like we’re at the cusp of something big! (which we hope AV1 will be ) Youtube pauses AV1 rollout Currently, YouTube is the biggest streaming platform delivering AV1 video and is responsible for the majority of AV1 video consumption on the internet....

July 22, 2019 · 6 min · Kay Singh

Part 1: Building a scalable 'shot-based' serverless AV1 video encoder in Azure

This is a 3-part blog covering how to build a scalable shot-based serverless video encoder in Azure. In Part 1, I explain what AV1 is and where we are in the video encoding space. In part 2, we create a logic app to upload and index the video. In part 3, we’ll need to split the video into its scenes and encode individual scenes. For reference, here are the links to all the parts:...

June 20, 2019 · 8 min · Kay Singh

AV1 Ecosystem Update: May 2019

May was another amazing month for the AV1 codec! We saw great progress in the SVT-AV1 encoder, Android update news and some surprising news out of China! SVT-AV1 is making strides! Let’s start with SVT-AV1 encoder, the current encoder of choice for Netflix, being developed by the folks at Intel. In May, version 0.5.0 was released with the following features: 8 bit / 10 bit 4:2:0 up to 4K60p resolutions Presets 0-8 New API, FFmpeg, GStreamer plugins Rate control support (VBR, CVBR) Block sizes from 4x4 to 128x128 Non-square blocks Tiles Deblocking / CDEF / Restoration filters Film Grain Warped motion estimation Intra block copy Trellis quantized coefficient optimization Support for 4 and 5 layers prediction structures Chroma search in MD Multi-reference picture support Other notable updates May also saw the most number of commits to the SVT-AV1 Github repo as shown by the graph below....

June 10, 2019 · 4 min · Kay Singh

AV1 Resource Central: Videos, Tools, Presentations, Comparisons, Research Papers, Encoders, Decoders

Bitstream spec https://aomediacodec.github.io/av1-spec/ Encoder Implementations SVT-AV1 Homepage https://01.org/svt Source repo https://github.com/OpenVisualCloud/SVT-AV1 User-Guide https://github.com/OpenVisualCloud/SVT-AV1/blob/master/Docs/svt-av1_encoder_user_guide.md Roadmap Trello page Microsoft Azure whitepaper https://01.org/sites/default/files/documentation/svt_azure_wp.pdf Amazon Web Services (AWS) Whitepaper http://01.org/sites/default/files/documentation/svt_aws_wp.pdf Mailing List http://lists.01.org/mailman/listinfo/svt-av1 aomenc Homepage and Source repo https://aomedia.googlesource.com/aom/ rav1e Homepage, Source repo https://github.com/xiph/rav1e Decoder Implementations dav1d Homepage, Source repo https://code.videolan.org/videolan/dav1d Presentations Mozilla @ NAB 2019 [April 2019 by Nathan Egge]...

May 14, 2019 · 1 min · Kay Singh

AV1 Ecosystem Update: April 2019

It’s been an exciting time following the progress of the royalty free video codec AV1 over the past year and April might just be the most exciting active month in the amount of news we got about AV1! It’s not every day that media industry giants such as Netflix, Google, Mozilla, Microsoft, Apple, Amazon, ARM, Facebook, Nvidia, Intel, Cisco and many others agree on the same technology stack! Samsung joins the party The month started with Samsung announcing they were joining the Alliance of Open Media Board at the highest level....

May 6, 2019 · 3 min · Kay Singh

How to identify boot, temp and data disks in Azure Linux VMs

In Azure, every VM has a persistent OS Disk that is used for booting the VM and contains the operating system. In addition to an OS disk, each VM also has a temporary disk that is present on the compute cluster hosting your VM. Why is my OS disk not @ /dev/sda? In most cases the OS disk is /dev/sda but in some odd cases it is not. This is not an Azure specific issue but a default Linux behavior....

April 30, 2019 · 3 min · Kay Singh

It's time to replace GIFs with AV1 video!

It is 2019 and we need to make a decision about GIFs (no, not that one! We’re never going to be able to decide that one!). GIFs take up a massive amount of space (often multiple megabytes!) and if you’re a web developer, then that’s completely against your ethos! As a web developer, you want to minimize the bits your users need to download so that your website loads fast. That’s why you minify javascript, optimize PNGs, JPEGs and sometimes turn JPEGs to WebPs as well....

April 28, 2019 · 9 min · Kay Singh