Видеокодек
Эта статья нуждается в дополнительных цитатах для проверки . ( май 2023 г. ) |
Видеокодек , — это программное или аппаратное обеспечение которое сжимает и распаковывает цифровое видео . В контексте сжатия видео кодек представляет собой сочетание кодера , в то время как и декодера устройство, которое только сжимает, обычно называется кодером , а устройство, которое только распаковывает, — декодером .
Формат сжатых данных обычно соответствует стандартному формату кодирования видео . Сжатие обычно происходит с потерями , то есть в сжатом видео отсутствует некоторая информация, присутствующая в исходном видео. Следствием этого является то, что распакованное видео имеет более низкое качество, чем исходное несжатое видео, поскольку для точного восстановления исходного видео недостаточно информации.
Существуют сложные взаимосвязи между качеством видео , объемом данных, используемых для представления видео (определяется битрейтом ) , сложностью алгоритмов кодирования и декодирования, чувствительностью к потерям и ошибкам данных, простотой редактирования, произвольным доступом и Сквозная задержка ( латентность ).
История
[ редактировать ]Исторически видео хранилось в виде аналогового сигнала на магнитной ленте . Примерно в то же время, когда компакт-диски появились на рынке в качестве замены аналогового звука в цифровом формате, стало возможным также хранить и передавать видео в цифровой форме. Из-за большого объема памяти и пропускной способности, необходимых для записи и передачи необработанного видео, требовался метод уменьшения объема данных, используемых для представления необработанного видео. С тех пор инженеры и математики разработали ряд решений для достижения этой цели, предполагающих сжатие цифровых видеоданных.
В 1974 году сжатие с дискретным косинусным преобразованием (DCT) было представлено Насиром Ахмедом , Т. Натараджаном и К. Р. Рао . [ 1 ] [ 2 ] [ 3 ] В конце 1980-х годов ряд компаний начали экспериментировать со сжатием с потерями DCT для кодирования видео, что привело к разработке стандарта H.261 . [ 4 ] H.261 был первым практическим стандартом кодирования видео. [ 5 ] и был разработан рядом компаний, включая Hitachi , PictureTel , NTT , BT и Toshiba , среди других. [ 6 ] Начиная с H.261, сжатие DCT было принято всеми последующими основными стандартами кодирования видео. [ 4 ]
Наиболее популярными стандартами кодирования видео, используемыми для кодеков, являются стандарты MPEG . MPEG-1 был разработан Группой экспертов по кинематографии (MPEG) в 1991 году и предназначен для сжатия VHS видео качества . На смену ему в 1994 году пришел MPEG-2 / H.262 . [ 5 ] который был разработан рядом компаний, в первую очередь Sony , Thomson и Mitsubishi Electric . [ 7 ] MPEG-2 стал стандартным видеоформатом для DVD и цифрового телевидения SD . [ 5 ] В 1999 году за ним последовал MPEG-4 / H.263 , который стал большим шагом вперед в технологии сжатия видео. [ 5 ] Его разработали ряд компаний, в первую очередь Mitsubishi Electric, Hitachi и Panasonic . [ 8 ]
Наиболее широко используемый формат кодирования видео по состоянию на 2016 год — H.264/MPEG-4 AVC . Он был разработан в 2003 году рядом организаций, в первую очередь Panasonic, Godo Kaisha IP Bridge и LG Electronics . [ 9 ] H.264 является основным стандартом кодирования видео для дисков Blu-ray и широко используется потоковыми интернет-сервисами, такими как YouTube , Netflix , Vimeo и iTunes Store , веб-программами, такими как Adobe Flash Player и Microsoft Silverlight , а также различными HDTV. трансляциями по эфирному и спутниковому телевидению.
На смену AVC пришел HEVC (H.265), разработанный в 2013 году. Он широко запатентован, причем большинство патентов принадлежат Samsung Electronics , GE , NTT и JVC Kenwood . [ 10 ] [ 11 ] Внедрению HEVC препятствует его сложная структура лицензирования. На смену HEVC, в свою очередь, пришло универсальное кодирование видео (VVC).
Существуют также открытые и бесплатные форматы кодирования видео VP8 , VP9 и AV1 , используемые YouTube, все из которых были разработаны при участии Google .
Приложения
[ редактировать ]Видеокодеки используются в DVD-проигрывателях, интернет-видео , видео по запросу , цифровом кабеле , цифровом наземном телевидении , видеотелефонии и множестве других приложений. В частности, они широко используются в приложениях, записывающих или передающих видео, что может оказаться невозможным при больших объемах данных и пропускной способности несжатого видео. Например, они используются в операционных для записи хирургических операций, в IP-камерах в системах безопасности, а также в подводных аппаратах с дистанционным управлением и беспилотных летательных аппаратах . Любой видеопоток или файл можно закодировать с использованием широкого спектра форматов живого видео. Вот некоторые настройки кодировщика H.264, которые необходимо установить при потоковой передаче на видеоплеер HTML5. [ 12 ]
Дизайн видеокодека
[ редактировать ]Видеокодеки стремятся представить набор аналоговых данных в цифровом формате. Из-за конструкции аналоговых видеосигналов, которые представляют о яркости (яркость) и информацию цвете (цветность, цветность) отдельно, обычным первым шагом сжатия изображения при разработке кодека является представление и сохранение изображения в цветовом пространстве YCbCr . Преобразование в YCbCr дает два преимущества: во-первых, оно улучшает сжимаемость за счет декорреляции цветовых сигналов; и, во-вторых, он отделяет сигнал яркости, который гораздо более важен с точки зрения восприятия, от сигнала цветности, который менее важен с точки зрения восприятия и который может быть представлен с более низким разрешением с использованием субдискретизации цветности для достижения более эффективного сжатия данных. Соотношения информации, хранящейся в этих различных каналах, обычно представляют следующим образом: Y:Cb:Cr. Различные кодеки используют разные коэффициенты субдискретизации цветности в зависимости от своих потребностей в сжатии. Схемы сжатия видео для Интернета и DVD используют шаблон цветовой выборки 4:2:1, а В стандарте DV используются коэффициенты дискретизации 4:1:1. Профессиональные видеокодеки, предназначенные для работы с гораздо более высокими битрейтами и для записи большего количества цветовой информации для постобработки образца в соотношениях 4:2:2 и 4:4:4. Примеры этих кодеков включают кодеки Panasonic DVCPRO50 и DVCPROHD (4:2:2), Sony HDCAM-SR (4:4:4), Panasonic HDD5 (4:2:2), Apple Prores HQ 422 (4:2). :2). [ 13 ]
Также стоит отметить, что видеокодеки могут работать и в пространстве RGB. Эти кодеки, как правило, не выполняют выборку красного, зеленого и синего каналов в разных соотношениях, поскольку для этого меньше мотивации восприятия — только синий канал может быть недостаточно дискретизирован.
Некоторая степень пространственной и временной понижающей дискретизации также может использоваться для снижения скорости необработанных данных перед базовым процессом кодирования. Самым популярным преобразованием кодирования является DCT 8x8. Кодеки, использующие вейвлет -преобразование, также выходят на рынок, особенно в рабочих процессах камер, связанных с форматированием изображений RAW в последовательностях движения. Этот процесс предполагает представление видеоизображения в виде набора макроблоков . Дополнительные сведения об этом важном аспекте проектирования видеокодеков см. в разделе B-кадры . [ 14 ]
Выходные данные преобразования сначала квантуются , затем энтропийное кодирование к квантованным значениям применяется . Когда используется DCT, коэффициенты обычно сканируются с использованием зигзагообразного порядка сканирования, а энтропийное кодирование обычно объединяет несколько последовательных квантованных коэффициентов с нулевым значением со значением следующего ненулевого квантованного коэффициента в один символ. , а также имеет специальные способы указания, когда все оставшиеся значения квантованных коэффициентов равны нулю. Метод энтропийного кодирования обычно использует таблицы кодирования переменной длины . Некоторые кодеры сжимают видео в многоэтапном процессе, называемом n-проходным кодированием (например, 2-проходное), который обеспечивает более медленное, но потенциально более качественное сжатие.
Процесс декодирования состоит из выполнения, насколько это возможно, инверсии каждого этапа процесса кодирования. [ 15 ] Единственный этап, который нельзя точно инвертировать, — это этап квантования. Там выполняется наилучшее приближение инверсии. Эту часть процесса часто называют обратным квантованием или деквантованием , хотя квантование по своей сути является необратимым процессом.
Проекты видеокодеков обычно стандартизированы или в конечном итоге становятся стандартизированными, то есть точно указаны в опубликованном документе. Однако для обеспечения совместимости необходимо стандартизировать только процесс декодирования. Процесс кодирования обычно вообще не указан в стандарте, и разработчики могут свободно проектировать свой кодер по своему усмотрению, при условии, что видео можно декодировать указанным способом. По этой причине качество видео, полученного в результате декодирования результатов разных кодеров, использующих один и тот же стандарт видеокодека, может сильно различаться от одной реализации кодера к другой.
Часто используемые видеокодеки
[ редактировать ]На ПК и в бытовой электронике можно реализовать различные форматы сжатия видео. Таким образом, в одном продукте может быть доступно несколько кодеков, что снижает необходимость выбора одного доминирующего формата сжатия видео для достижения совместимости .
Стандартные форматы сжатия видео могут поддерживаться несколькими реализациями кодеров и декодеров из разных источников. Например, видео, закодированное с помощью стандартного кодека MPEG-4 Part 2, такого как Xvid, может быть декодировано с использованием любого другого стандартного кодека MPEG-4 Part 2 , такого как FFmpeg MPEG-4 или DivX Pro Codec , поскольку все они используют один и тот же видеоформат.
Кодеки имеют свои достоинства и недостатки. Сравнения публикуются часто. Компромисс между мощностью сжатия, скоростью и точностью (включая артефакты ) обычно считается наиболее важным показателем технических качеств.
Пакеты кодеков
[ редактировать ]Видеоматериалы, доступные в Интернете, кодируются различными кодеками, и это привело к появлению пакетов кодеков — предварительно собранного набора часто используемых кодеков в сочетании с установщиком, доступным в виде пакета программного обеспечения для ПК, например K-Lite Codec Pack. , Perian и комбинированный пакет кодеков сообщества .
См. также
[ редактировать ]- Битрейт
- Сравнение видеокодеков
- Сжатие данных § Видео
- Разрешение дисплея
- Частота кадров
- Список кодеков с открытым исходным кодом
- Мультиплексирование
- Частота выборки
- Субъективное качество видео.
- Транскодирование
- Качество видео
Ссылки
[ редактировать ]- ^ Ахмед, Насир ; Натараджан, Т.; Рао, КР (январь 1974 г.), «Дискретное косинусное преобразование», Транзакции IEEE на компьютерах , C-23 (1): 90–93, doi : 10.1109/TC.1974.223784 , S2CID 149806273
- ^ Рао, КР ; Йип, П. (1990), Дискретное косинусное преобразование: алгоритмы, преимущества, приложения , Бостон: Academic Press, ISBN 978-0-12-580203-1
- ^ «T.81 – ЦИФРОВОЕ СЖАТИЕ И КОДИРОВАНИЕ НЕПРЕРЫВНЫХ СТАЦИОНАРНЫХ ИЗОБРАЖЕНИЙ – ТРЕБОВАНИЯ И РУКОВОДСТВА» (PDF) . ССИТТ. Сентябрь 1992 года . Проверено 12 июля 2019 г.
- ^ Jump up to: а б Ганбари, Мохаммед (2003). Стандартные кодеки: от сжатия изображения до расширенного кодирования видео . Институт техники и технологий . стр. 1–2. ISBN 9780852967102 .
- ^ Jump up to: а б с д «Инфографика по истории форматов видеофайлов — RealPlayer» . 22 апреля 2012 г.
- ^ «Рекомендации МСЭ-Т объявлены патентами» . МСЭ . Проверено 12 июля 2019 г.
- ^ «Список патентов MPEG-2» (PDF) . MPEG Лос-Анджелес . Проверено 7 июля 2019 г.
- ^ «Визуальный MPEG-4 — список патентов» (PDF) . MPEG Лос-Анджелес . Проверено 6 июля 2019 г.
- ^ «AVC/H.264 – Список патентов» (PDF) . MPEG Лос-Анджелес . Проверено 6 июля 2019 г.
- ^ «Список патентов HEVC» (PDF) . MPEG Лос-Анджелес . Проверено 6 июля 2019 г.
- ^ «Перечень передовых патентов HEVC» . HEVC Продвинутый . Архивировано из оригинала 24 августа 2020 года . Проверено 6 июля 2019 г.
- ^ «Какой видеокодек лучше всего подходит для потоковой передачи в Интернете? (обновление 2021 г.)» . Дакаст . 18 июня 2021 г. Проверено 11 февраля 2022 г.
- ^ Хоффман, П. (июнь 2011 г.). Требования к отслеживанию интернет-проектов сообществом IETF в Datatracker . дои : 10.17487/rfc6293 .
- ^ «Разработка видеокодеков: разработка систем сжатия изображений и видео | Wiley» . Wiley.com . Проверено 11 февраля 2022 г.
- ^ «Этап кодирования — обзор | Темы ScienceDirect» . www.sciencedirect.com . Проверено 11 февраля 2022 г.
Внешние ссылки
[ редактировать ]- Кодирование видео Винером-Зивом, заархивированное 30 сентября 2011 г. на Wayback Machine, описывает другой алгоритм сжатия видео, который работает близко к границе Слепиана-Вольфа (со ссылками на исходный код).
- Медиакодеки AMD — дополнительная загрузка (ранее называлась ATI Avivo )