Apple видео - Apple Video

Apple видео это с потерями алгоритм сжатия и распаковки видео (кодек ) разработан Apple Inc. и впервые выпущен как часть QuickTime 1.0 в 1991 г.[1] Кодек также известен как QuickTime видео, своим FourCC РПЗА и имя Road Pizza.[2][3] (Кодовое название «Road Pizza» - это отсылка к идее, что «когда вы наезжаете на животное, вы в основном сжимаете его на автостраде».[4]) При использовании в AVI контейнер, FourCC AZPR также используется.[3]

Формат битового потока Apple Video был реконструирован, и в проектах был реализован декодер. XAnim и libavcodec.[2][5]

Технические подробности

Кодек работает с блоками пикселей 4 × 4 в RGB цветовое пространство. Каждый кадр сегментируется на блоки 4 × 4 в порядке растровой развертки. Каждый блок кодируется в одном из четырех режимов кодирования: пропуск, одноцветный, четырехцветный или 16-цветный.[3] Цвета представлены 16 битами с битовая глубина по 5 бит для каждого из трех компонентов - красного, зеленого и синего. Этот формат известен как RGB555.[3] Поскольку Apple Video работает в области изображений без компенсации движения, декодирование выполняется намного быстрее, чем MPEG -стилевые кодеки, использующие компенсация движения и выполнить кодирование в преобразовать домен. В качестве компромисса производительность сжатия Apple Video ниже.

Пропустить режим

Режим пропуска реализует условное пополнение. Если блок кодируется в режиме пропуска, содержимое блока в том же месте в предыдущем кадре копируется в текущий кадр.[3] Циклы пропускаемых блоков кодируются в кодирование длин серий схема, обеспечивающая высокую степень сжатия в статичных областях изображения.[3]

Одноцветный режим

В одноцветном режиме все пиксели в блоке декодируются одним цветом.[3] Это можно интерпретировать как палитра с одним цветом.

Четырехцветный режим

В четырехцветном режиме каждый пиксель в блоке декодируется как один из четырех цветов, указанных в палитре.[3] Чтобы выбрать одну из четырех записей, в битовый поток записываются 2 бита на пиксель. Та же палитра используется для серии длиной от одного до 32 блоков.[3] Из четырех цветов два явно записываются в битовый поток, а два других вычисляются в декодере с помощью линейная интерполяция в цветовом пространстве RGB, используя следующие уравнения:

где color0 и color3 - два цвета, которые записываются в битовом потоке.[3] Четыре цвета можно интерпретировать как лежащие на равном расстоянии друг от друга на отрезке линии в трехмерном векторном пространстве с тремя компонентами - красным, зеленым и синим. Конечные точки этой строки записываются в битовый поток. Похожая схема цветовой интерполяции используется в Сжатие текстур S3.

Интерпретируется как векторное квантование, трехмерный вектор с красными, зелеными и синими компонентами квантованный с помощью кодовой книги с четырьмя записями.

16 цветовых режимов

В 16-цветном режиме цвет каждого пикселя в блоке явно записывается в битовый поток.[3] Этот режим без потерь эквивалентен необработанному PCM без сжатия.

Смотрите также

использованная литература

  1. ^ Гильермо А. Ортис (лето 1991 г.). QuickTime 1.0: «Вы должны быть в картинках»"" (PDF). Компьютер Apple. Получено 14 апреля 2013.
  2. ^ а б «Документация FFmpeg». FFmpeg. Получено 4 апреля 2013.
  3. ^ а б c d е ж г час я j k «Яблочный РПЗА». Мультимедиа Вики. 11 декабря 2008 г.. Получено 4 апреля 2013.
  4. ^ «CHM Live: истоки QuickTime». Музей истории компьютеров. Получено 27 марта 2018.
  5. ^ Марк Подлипец (10 декабря 1997 г.). "xanim.2.70.6.4.2 README". XAnim. Архивировано из оригинал 28 декабря 2015 г.. Получено 4 апреля 2013.

внешние ссылки