ABOUT ME
PROJECTS
OTHER
DOWNLOADABLES
GALLERIES

A comparison of audio and video codecs

This page compares different audio and video codecs. The point will be lossy compression, as the goal is to see which codec provides the best quality at a given bitrate. Lossless compression options (such as FLAC, TrueHD or WavPack) exist but are ignored here.

Audio

The audio files have been compressed using reference encoders to achieve the best possible quality.
The used encoders are:
- MP3: libmp3lame
- AAC-LC, HE-AAC, HE-AAC v2: libfdk_aac
- Opus: libopus
- Vorbis: libvorbis

MP3

The MP3 (or MPEG-1 audio layer 3) is the most common codec, supported by many devices and software. MP3 was first released in August 1993 and remains one of the most well-known lossy audio formats today. Although it is popular, it does not mean it is the best.

128 kbps

96 kbps

64 kbps

48 kbps

36 kbps

AAC-LC

The AAC-LC (low complexity AAC) is the enhanced codec of MPEG audio, which belongs to the MPEG-4 standard. It was initially included in MPEG-2, but further developed in the MPEG-4 standard, first released in 1999. The AAC audio is found in many mobile phone recordings and on most social media platforms. Personally, it is significantly more usable than MP3. Its major advantage is that it can be stored in an MPEG-4 container with the .m4a extension.

128 kbps

96 kbps

64 kbps

48 kbps

36 kbps

24 kbps

HE-AAC

The HE-AAC (low complexity AAC with SBR extension) is a modified version of AAC that includes SBR (Spectral Band Replication). The principle is the recreation of higher frequencies. HE-AAC was first introduced in 2003 as part of the MPEG-4 standard. This codec is used on platforms like TikTok, Facebook and digital radio alike.

128 kbps

96 kbps

64 kbps

48 kbps

36 kbps

24 kbps

16 kbps

HE-AAC v2

The HE-AAC v2 (low complexity AAC with SBR extension and parametric stereo) is an extended version of HE-AAC, introduced one year later, after HE-AAC that was first released in 2004 as part of the MPEG-4 standard. The codec also uses parametric stereo, which stores the difference between the two channels.

48 kbps

36 kbps

24 kbps

16 kbps

12 kbps

Opus

The Opus codec is developed by the Xiph.org foundation and was first released on August 26, 2012 and standardized by the IETF. Opus is used heavily by YouTube and is the default audio codec for the WebM video container. Opus combines two codecs: SILK and CELT. In most cases, it operates in CELT mode, but it works as mixed.

128 kbps

96 kbps

64 kbps

48 kbps

36 kbps

24 kbps

16 kbps

12 kbps

8 kbps

Vorbis

The Vorbis codec was also developed by the Xiph.org foundation and libvorbis was first released on July 19, 2002. Vorbis is the audio codec for the OGG container and can only be used with the .ogg extension.

128 kbps

96 kbps

64 kbps

48 kbps

Video

Coding videos is more complex, so they have a lot of settings. Not only the bitrate will determine the quality, but also the encoder's preset.

The video files were encoded with the next encoders:
- H.264: x264
- HEVC/H.265: x265
- VP9: vp9_qsv (Quick Sync Video hardware encoder)
- AV1: libaom-av1 and SVT-AV1

Note:
- The encoded videos have HD ready resolution (1280x720) and run at 25 FPS.
- Slower presets mean that the processor spends more time encoding, while fast presets use less time.
- For VP9 and AV1, the bitrate is not constant, so the numbers only show the target bitrate. These codecs were designed for constant quality encoding, so they use the CRF setting.

H.264

The H.264 (AVC or MPEG-4 part 10) is the most widely used video codec, first released in 2003. It is used on every platform, as its encoding speed and quality is reasonably acceptable, making it suitable for streaming purposes. The H.264 is part of the MPEG-4 standard and is the default video codec for the MP4, MOV, and MKV (Matroska) container.

Slow preset (veryslow)

1 Mbps

500 kbps

200 kbps

100 kbps

fast preset (ultrafast)

1 Mbps

500 kbps

200 kbps

100 kbps

H.265

The H.265 (known as HEVC or MPEG-H part 2) is the successor to H.264, first released by MPEG on June 7, 2013, as part of the MPEG-H standard. The codec is used by platforms such as TikTok and Facebook. Its main drawback is that it's heavily protected by patents.

Slow preset (slow)

1 Mbps

500 kbps

200 kbps

100 kbps

Fast preset (veryfast)

1 Mbps

500 kbps

200 kbps

100 kbps

VP9

The VP9 is a video codec developed by Google, released 10 days after HEVC on June 17, 2013. It is primarily used by YouTube and is one of the codecs for the WebM video container. The codec and its reference encoder (libvpx-vp9) can be used freely without any fee.

Slow preset (veryslow)

1 Mbps

500 kbps

200 kbps

Fast preset (veryfast)

1 Mbps

500 kbps

200 kbps

AV1

The AV1 is a video codec developed by the Alliance for Open Media (AOM for short), which was first released on March 28, 2018. The codec is heavily used by YouTube and Netflix and is one of the codecs for the WebM video container.
The AV1 has three software encoders, of which I used two for the examples: libaom-av1 and libsvtav1. The libaom-av1 is the best quality software encoder, but its drawback is the poor performance, as the encoder prioritizes quality. Therefore, Intel and Netflix together created the libsvtav1 encoder library. The SVT-AV1 sacrifices quality for performance, making it suitable for real-time usage.

libaom-av1 faster preset (-cpu-used 8)

1 Mbps

500 kbps

200 kbps

100 kbps


SVT-AV1's slower preset (-preset 4)

1 Mbps

500 kbps

200 kbps

100 kbps

SVT-AV1's faster preset (-preset 10)

1 Mbps

500 kbps

200 kbps

100 kbps

Sources:

MP3
AAC-LC
HE-AAC és HE-AAC v2
Opus
Vorbis
H.264
HEVC
VP9
AV1

The video was captured by me.
The re-encoded videos are for personal use only and should be used as examples. The original video should be used from its original source, which is in the public domain.

The re-encoded audio must be attributed.
Song: JJD - Adventure [NCS Release]
Music provided by NoCopyrightSounds
Free Download/Stream: http://ncs.io/adventure
Watch: http://youtu.be/f2xGxd9xPYA