Видеокодек | это... Что такое Видеокодек? (original) (raw)
Видеокодек — программа/алгоритм сжатия (то есть уменьшения размера) видеоданных (видеофайла, видеопотока) и восстановления сжатых данных. Кодек — файл-формула, которая определяет, каким образом можно «упаковать» видеоконтент и, соответственно, проиграть видео. Также возможно кодирование кроме видео и аудиоинформации, добавления субтитров, векторных эффектов и т. п.
Принцип работы простейшего кодека
Сперва рассмотрим кодирование статического изображения (или, одиночного кадра). Каждый кодируемый кадр видеопотока состоит из точек (пикселей), образующих матрицу (растр). Кодек может отслеживать похожие массивы точек с одинаковыми атрибутами (например, синий цвет фона на изображении неба) и, вместо того, чтобы запоминать информацию о каждой точке (яркость и цвет) в следующих кадрах отдельно, записать лишь первую (ключевую) точку и счётчик с количеством повторений этой точки до момента изменения цвета данной точки. То есть вместо описания, например, 1000 точек, может оказаться достаточно описать всего 1 точку + счётчик повторения. Качеством здесь можно управлять, задавая величину, такую, что если отличие между точками меньше, то они считаются одинаковыми. Это самый простой из методов сжатия.
В JPEG для кадра производится поблочное дискретное косинусное преобразование с последующим кодированием с использованием алгоритма Хаффмана или арифметического кодирования.
Дополнительные сведения: LZ77
Дополнительные сведения: JPEG
Для построения динамического изображения (видеоряда) используются различные типы кадров — кроме I-кадров (которые также называются ключевыми (англ. keyframes) или «опорными») которые могут содержать только независимо сжатые макроблоки, добавленные P-кадры («разностные» кадры) могут содержать как независимо сжатые макроблоки, так и макроблоки со ссылкой на другой кадр.
Более продвинутые форматы сжатия учитывают, кроме вышеупомянутой технологии, ещё и принципы движения массивов точек в изображении, сегментирование картинки на «квадратики» с различным качеством сжатия, применение последовательности кадров, кодированных по-разному и показанных в определённой последовательности. Самые новые кодеки учитывают психофизические свойства восприятия видео человеческим глазом и мозгом, что позволяет ещё сильнее уменьшать размер данных без «видимой потери качества».
Также, алгоритмы использует похожесть соседних кадров в видеоряде.
См. также
Сжатие видео | |
---|---|
Рекомендации ITU-T | H.120 • H.261 • H.262 • H.263 • H.264 • H.265 |
Стандарты ИСО/МЭК | MJPEG • Motion JPEG 2000 • MPEG-1 • MPEG-2 • MPEG-4 (Part 2/H.263 • Part 10/H.264/AVC) • MPEG-H Part 2/H.265/HEVC |
Стандарты SMPTE | DV • VC-1 • VC-2 (Dirac Pro) • VC-3 (DNxHD) |
Кодеки MPEG-4 | 3ivx • DivX • FFmpeg • HDX4 • Nero Digital • Xvid • H.264/AVC: CoreAVC • QuickTime • x264 |
Без потерь | CorePNG • FFV1 • Huffyuv • Lagarith • MSU Lossless • SheerVideo |
Цифровое кино | CineForm • ProRes 422 • REDCODE |
Прочие кодеки | Bink • Cinepak • Indeo • Pixlet • RealVideo • RTVideo • SIF1 • Smacker • Snow • Sorenson • Tarkin • VP3 (Theora) • VP6 • VP7 • VP8 • WMV |
См. также | Медиаконтейнер • Графические форматы • Сжатие изображений |