Huffyuv

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Диалог настройки кодека Huffyuv в VfW

Huffyuv (или HuffYUV) — кодек, предназначенный для сжатия видео без потерь. Создан Ben Rudiak-Gould, в целях замены несжатого YCbCr как формата видео захвата. Несмотря на «YUV» в названии, он использует цветовое пространство не YUV, а YCbCr. «Без потерь» означает, что результат декомпрессии бит-в-бит идентичен исходному потоку перед компрессией (при условии, что не проводилось преобразование цветового пространства). Алгоритм Huffyuv предсказывает каждый пиксель кадра и затем кодирует ошибку по алгоритму Хаффмана.

Реализации[править | править вики-текст]

Оригинальная реализация была написана для Windows Ben Rudiak-Gould и издана на условиях GPL. Реализация считается очень быстрой, даёт пропускную способность сжатия до 38 МБ в секунду на Celeron 416 МГц. Оригинальный Huffyuv не обновлялся с 2002 г.

Более современный форк кодека доступен в проекте Lagarith. Проект FFmpeg также содержит реализацию HuffYUV, что позволяет создавать и проигрывать файлы HuffYUV на Linux и Mac OS X. Также это означает, что многие программы, которые используют FFMPEG как основу, могут также играть/создать файлы HuffYUV, например Медиапроигрыватель VLC, MPlayer и ffdshow.

ffvhuff[править | править вики-текст]

Свободно распространяемая (freie software) библиотека кодеков Libavcodec содержит улучшенный вариант формата huffyuv, названный для удобства дискриминации старого кодека « ffvhuff », как (FourCC: FFVH). Усовершенствования включают среди прочих, поддержку YV12 цветового пространства (оригинальный huffYUV кодек был ограничен YUY2 и RGB), и улучшенную эффективность сжатия с использованием добавленной в FF адаптивной таблицы Хаффмана.

Библиотека нового ff-кодека имеет обратную совместимость с эталонным старым huff-кодеком, но последний не совместим с новым форматом ffvhuff. Новый кодек для Windows, например на интерфейсе FFDShow VfW доступен и может использоваться в записи на VirtualDub(Mod) или OBS Studio, и подобных задачах без потерьного сжатия на лету. Для хранения более ценных lossless-исходников, видимо лучше применять старый huffyuv, поскольку новый кодек это huffyuv + adaptive huffman tables.

Ссылки[править | править вики-текст]