Streaming has always been an important place in our lives, but it has become an essential need for all of us now, especially after Covid-19.
As being one of the core elements of video streaming, Video codecs allow publishers to compress a video file for distribution over the Internet, through a process called video encoding. It allows you to watch your favorite series in the evening on Netflix or Amazon Prime. Video Codecs allow you to watch videos and see your loved ones with video calling programs, even with limited bandwidth.
Thanks to the video codecs, whatever your device is, your favorite TV series come home easily. Video providers stream more than millions of hours of content every minute with the help of these video codecs.
What is Video Encoding and how do Video codecs work? Let’s take a closer look!
What Is Video Encoding?
Encoding is the process of receiving data from devices that capture video and audio data (these can be your webcam, microphone, capture card, or streaming software) and converting it to a digital format that you can send to streaming platforms. In a normal streaming setup, encoding acts as a medium, aiding in communication between input and output
The encoder works with a codec, an encoder-decoder piece of software, to dictate how to compress and format the raw data on your camera. For example, H.264 is one of the most popular codecs for live video streaming, and it can be used to create video files in various resolutions up to 8k.
Various parameters determining video quality and size are determined in this process. These parameters can be compression, resolution, and bitrate. This data is packaged in a container that holds information about the configuration of the data and file metadata. At the end of this process, a video file emerges.
What is a codec?
Codecs are compression technologies with two components; an encoder to compress the file in the first device and a decoder to decode the file when played by the end device(viewers). Video c odecs allow us to tightly compress a bulky video for delivery and storage.
Streams use both audio and video codecs. H.264, also known as AVC, is the most common video codec. AAC is the most common audio codec.
What Is a Video Container Format?
Video containers bundle and store all elements of a video into one package. Elements include the video and audio streams, subtitles, video metadata, video codec, and more. The most commonly used containers for media on the web are probably MPEG-4 (MP4), QuickTime Movie (MOV), and the Wavefile Audio File Format (WAV). But you may also come across MP3, Ogg, WebM, AVI, and other formats.
Not all playback platforms accept all containers and video codecs. Containers can usually enter multiple types of codecs. This is why multi-format encoding is essential when streaming to a wide variety of devices.
Your viewers may be watching your broadcast on Macbook’s QuickTime player or PC’s Windows Media Player. Therefore, it is necessary to use two different containers, .Mov for Macbook’s QuickTime player and .wmv for Windows Media Player.
Difference Between Video Codecs and Containers
A codec becomes a part of the video in the source to encode the video and also on the viewer/player side to decode it before playing it.
On the other hand, a video container format stores the video codec, audio codec, and metadata such as subtitles or preview images. The container holds all the components together and determines which programs can accept the stream.
What are the Best Video Codecs for Streaming?
The journey of the live streams from the source to the audience’s device starts with encoding by video codecs. Thanks to the rapidly developing live streaming technologies, we constantly see new video codecs coming out.
Let’s take a look at the most common video codecs of 2020.
H.264 is a codec or video compression technology, that was developed by the International Telecommunications Union (as H.264) and International Organization for Standardization/International Electrotechnical Commission Moving Picture Experts Group. Thus, the terms H.264 and AVC mean the same thing and are interchangeable.
As a video codec, H.264 can be incorporated into multiple container formats, and is frequently produced in the MPEG-4 container format, which uses the .MP4 extension, as well as QuickTime (.MOV), Flash (.F4V), 3GP for mobile phones (.3GP), and the MPEG transport stream (.ts). Most of the time, H.264 video is encoded with audio compressed with the AAC (Advanced Audio Coding) codec, which is an ISO/IEC standard (MPEG4 Part 3).
High-Efficiency Video Coding, also known as HEVC was developed with the goal of providing twice the compression efficiency of the previous standard, H.264 / AVC. Although compression efficiency results vary depending on the type of content and the encoder settings, at typical consumer video distribution bit rates HEVC is typically able to compress video twice as efficiently as AVC. End-users can take advantage of improved compression efficiency in one of two ways (or some combination of both);
- At an identical level of visual quality, HEVC enables video to be compressed to a file that is about half the size (or half the bit rate) of AVC, or
- When compressed to the same file size or bit rate as AVC, HEVC delivers significantly better visual quality.
AV1 is a video format standard developed and managed by the Alliance for Open Media, an alliance that includes dozens of major manufacturers and digital giants such as Google, Apple, Amazon, Netflix, and Samsung. The sole purpose of this nonprofit alliance is to create a more efficient and cost-effective open video standard for all types of users on all types of devices.
“The creation of an advanced, royalty-free video codec is paramount to the ongoing success of collaboration products and services. This is why Cisco joined AOMedia as a founding member, and why Cisco has invested in making AV1 both efficient and accessible to the internet community,” said Johnathan Rosenberg, CTO of the Collaboration Technology Group at Cisco.
The AV1 is claimed to be about 30 percent more efficient than HEVC. However, these claims have not yet been confirmed by independent sources. Also, it will take time for the AV1 codec to become popular. Even though Apple joined the Alliance in January 2018, even Apple devices still lack AV1 codec support.
The biggest disadvantage of AV1 is the availability on end-user devices due to it being new.
VP9 is an open and royalty-free video coding format developed by Google.
The VP9 transmits video significantly more efficiently than the VP8 codec and is an important milestone for Google. One of the biggest advantages of the VP9 codec is that it is royalty-free. Its main rival, HEVC — High-Efficiency Video Coding, or H.265, still charges patent royalties to its customers. And VP9 offers better quality than H.265/HEVC at the same bitrate. YouTube, Android phones, and Chrome browser support VP9 but Apple doesn’t support it.
H.266, Versatile Video Coding (VVC) is the newest block-based hybrid codec from the Joint Video Experts Team (JVET). It is designed as the successor to High-Efficiency Video Coding (HEVC/H.265) for further alleviating stress on large data transmission like 4K, 8K and even 16K UHD videos. But the h266 came up with the same loyalty issues as the h265.
As explained above, even though there are great — high performing video codecs currently available as a technology, it’ll take for some of the above a while to get a wider availability on end-user devices.
Hope this article gave you a snapshot of where we are in terms of video codecs. If you have any questions, you can contact us.
Originally published at https://antmedia.io on February 1, 2021.