U-261
- 1 year ago
- 0
- 0
H.261 — стандарт сжатия видео , утвержденный в 1988 году международной организацией ITU . Первоначально он был разработан для передачи по каналам ISDN , на которых ширина потоков данных кратна 64 Кб /с. Это был первый стандарт сжатия видео, который был полезен с практической точки зрения.
Алгоритм стандарта был предназначен для работы с потоками от 40 Кб /с до 2 Мб /с. Стандарт поддерживал CIF и QCIF с размерами кадров 352×288 и 176×144, соответственно (и субдискретизацией 4:2:0). Стандарт был изменён (с поддержкой обратной совместимости) для передачи изображений с яркостным разрешением 704×576 (это расширение было добавлено примерно в 1994 году ).
Первым стандартом сжатия цифрового видео был H.120 , созданный CCITT (ныне ITU-T ) в 1984 году. H.120 не использовался на практике, так как качество видео после такого сжатия было слишком низким. Стандарт H.120 был основан на дифференциальной импульсно-кодовой модуляции , которая имела неэффективное сжатие.
В конце 1980-х годов ряд компаний начали экспериментировать с гораздо более эффективным сжатием на основе ДКП (по англ. DCT ), и CCITT получил 14 предложений по форматам сжатия видео на основе ДКП, в отличие от единственного предложения, основанного на сжатии с векторным квантованием. Впоследствии на основе ДКП был разработан стандарт H.261.
Стандарт сжатия H.261 был разработан "CCITT Study Group XV Specialists Group on Coding for Visual Telephony" под председательством Сакае Окубо из NTT . После H.261, сжатие на основе ДКП было принято всеми основными последующими стандартами кодирования видео. H.261 стал первым по-настоящему применимым стандартом кодирования видео. Фактически, все последующие международные стандарты кодирования видео (MPEG-1 Part 2, H.262, H.263 , MPEG-4 Part 2, H.264 и HEVC ) основаны на дизайне H.261.
Базовый блок обработки в стандарте называется макроблоком , и H.261 был первым стандартом, в котором появилась концепция макроблоков. Каждый макроблок состоит из массива выборок яркости 16×16 пикселей ( Y ) и двух массивов выборок цветности 8×8 пикселей ( Cb и Cr ). Таким образом, макроблоки хранят части кадра с субдискетизацией 4:2:0 в цветовом пространстве YCbCr . Алгоритм кодирования использует гибрид межкадрового предсказания с компенсацией движения и кодирования с пространственным преобразованием со скалярным квантованием, зигзагообразным сканированием и энтропийным кодированием .
Стандарт H.261 фактически определяет только способ декодирования видео. Разработчикам кодировщиков было предоставлено право разрабатывать свои собственные алгоритмы кодирования (например, свои собственные алгоритмы оценки движения), при условии, что выходные данные соответствуют стандарту, чтобы конечное видео можно было декодировать любым декодером, созданным в соответствии со стандартом. Декодерам разрешается выполнять любую постобработку видео перед отображением. Одним из эффективных методов постобработки является деблокирующяя фильтрация (по англ. deblocking filter ). Она уменьшает появление артефактов в виде блоков, вызванных блоковой компенсацией движения . С тех пор деблокирующяя фильтрация стала частью более поздних стандартов H.264 и HEVC (хотя даже этими стандартами по-прежнему разрешена дополнительная постобработка).
Библиотека libavcodec , выпущенная под лицензией LGPL , включает в себя кодек H.261. Он поддерживается бесплатными мультимедийными проигрывателями VLC и MPlayer , а также декодерами ffdshow и FFmpeg .
Например, для перекодирования input.av i в H.261 с помощью FFmpeg можно воспользоваться подобной командой:
ffmpeg -i input.avi -vcodec h261 -b:v 256k -s 352x288 output.avi
Следующие компании имеют патенты на H.261: