В чем разница между MPEG-4, AVC/H.264 и MP4?

MPEG-4 video, AVC/H.264, MP4 являются представителями семейства MPEG-4 стандартов, из-за чего часто возникает путаница.

  • MPEG-4 Part 2 Visual (ISO/IEC 14496-2): стандарт сжатия видеоданных, воплощен в видеокодек MPEG-4, опубликован в 1999 году;
  • MPEG-4 Part 10 Advanced Video Coding (ISO/IEC 14496-10): стандарт сжатия видеоданных, воплощен в видеокодек AVC/H.264, опубликован в 2003 году;
  • MPEG-4 Part 14 (ISO/IEC 14496-14): MP4 file format – медиаконтейнер, определяет способ хранения данных, но не алгоритм сжатия.

AVC/H.264 кодек взял лучшее от MPEG-4 Visual, однако данные видео форматы не обладают обратной совместимостью! MPEG-4 кодек был вытеснен с рынка, т.к. AVC/H.264 обеспечивал более высокую степень сжатия. На данный момент AVC/H.264 является самым популярным форматом в мире.

Видеокодеки представляют собой алгоритмы кодирования и декодирования видеоданных. Энкодер сжимает видеопоток, что позволяет сократить объем данных, используемых для хранения и передачи. Декодер выполняет обратную операцию преобразования для воспроизведения или редактирования видеопотока.

Контейнер — хранилище данных. Контейнеры могут включать в себя видео и аудио последовательности, субтитры, служебную информацию и метаданные.

Основное отличие состоит в том, что кодек (видео формат) — это алгоритм кодирования/декодирования видеоданных, а контейнер (файловый формат) — это пакет, в котором хранится сжатая видеопоследовательность.

Примеры видеокодеков и медиаконтейнеров:

Видеокодеки

H.261, H.263, VC-1, MPEG-1, MPEG-2, MPEG-4, AVS1, AVS2, AVS3, VP8, VP9, AV1, AVC/H.264, HEVC/H.265, VVC/H.266, EVC, LCEVC

Медиаконтейнеры

MPEG-1 System Stream, MPEG-2 Program Stream, MPEG-2 Transport Stream, MP4, MOV, MKV, WebM, AVI, FLV, IVF, MXF, HEIC

История развития видеокодеков:

История развития видеокодеков
История развития видеокодеков

H.261 – 1990 год, VCEG

MPEG-1 – 1991 год, MPEG

H.263 – 1995 год, VCEG

MPEG-2 – 1996 год, MPEG

MPEG-4 part 2 – 1999 год, MPEG

AVC – 2003 год, JVET (MPEG+VCEG)

VC-1 – 2003 год, Microsoft

AVS1 – 2006 год, Audio and Video coding standard workgroup of China

VP8 – 2008 год, Google

VP9 – 2013 год, Google

HEVC – 2013 год, JVET

AVS2 – 2016 год, Audio and Video coding standard workgroup of China

AV1 – 2018 год, Alliance for open media (Google, IBM, Amazon, Intel, Netflix, Cisco, Mozilla и др.)

AVS3 part 1 – 2019 год, Audio and Video coding standard workgroup of China

VVC/H.266 – 2020 год, JVET

EVC – 2020 год, MPEG

LCEVC – 2020 год, MPEG

AVS3 part 2 – 2022 год, Audio and Video coding standard workgroup of China

Автор: Александр Круглов, ведущий инженер компании Elecard. Работает в сфере видеоанализа с 2018 года. Александр отвечает за работу с крупнейшими клиентами Elecard, такими как Netflix, Cisco, Walt Disney Studios и др.

33
4 комментария

Первые два - кодеки, последний - контейнер. И что? Какая прикладная польза от всего последующего материала? Рекомендации?

1

Тем, кто это и так знает пользы никакой. Для них, насколько я знаю компанию Элекард, у них есть другие статьи. Для тех , кто хочет узнать, но пока не знает в чем разница между этими близкими по названию понятиями, прячущимися под общим названием четвертый мпег польза есть. Просто и доступно изложено основное отличие и дана небольшая справка для понимания как это все развивается.
Конечно, материал получился скомканым слегка, но что вы хотите от технаря?