Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Lossless video codec
Lossless video codec
Huffyuv (или HuffYUV) — это видеокодек без потерь, созданный Беном Рудиаком Гулдом, предназначенный для замены несжатого YCbCr в качестве формата захвата видео. Кодек также может сжимать в цветовом пространстве RGB. «Без потерь» означает, что выходные данные декомпрессора идентичны исходным входным данным компрессора на битовом уровне. Сжатие без потерь возможно только при совпадении цветового пространства сжатия и цветового пространства ввода-вывода. Если цветовые пространства не совпадают, выполняется сжатие с небольшими потерями. Алгоритм Huffyuv аналогичен алгоритму lossless JPEG, поскольку он предсказывает каждый образец, а затем кодирует ошибку кодированием Хаффмана. Предсказание осуществляется только внутри кадра.
Huffyuv (or HuffYUV) is a lossless video codec created by Ben Rudiak Gould which is meant to replace uncompressed YCbCr as a video capture format. The codec can also compress in the RGB color space. "Lossless" means that the output from the decompressor is bit for bit identical with the original input to the compressor. Lossless only occurs when the compression color space matches the input and output color space. When the color spaces do not match, a low loss compression is performed. Huffyuv's algorithm is similar to that of lossless JPEG, in that it predicts each sample and then Huffman encodes the error. The predictor is intraframe only.
Реализация
Первоначальная реализация была написана для Windows Беном Рудиаком Гулдом и опубликована на условиях лицензии GPL. Huffyuv 1.1 был выпущен в 2000 году. Эта реализация считается очень быстрой, обеспечивая скорость сжатия до 38 мегабайт в секунду на процессоре Celeron 416 МГц. Официальный Huffyuv не обновлялся с 2002 года. Huffyuv 2.1.1 с патчем CCESP 0.2.5 был выпущен для устранения проблем, особенно для обеспечения совместимости с Cinema Craft Encoder. Huffyuv 2.2 доступен на некоторых альтернативных сайтах, но о наличии проблем на некоторых компьютерных системах сообщается. Huffyuv MT — это многопоточная версия, использующая другой FourCC-код. В настоящее время разрабатывается форк этого кода под названием Lagarith, который обеспечивает лучшее сжатие, но значительно снижает скорость работы на однопроцессорных системах. Проект FFmpeg также содержит реализацию HuffYUV, позволяющую создавать и воспроизводить файлы HuffYUV в Linux и Mac OS X. Кроме того, это означает, что многие приложения, использующие FFmpeg в качестве основы, также могут воспроизводить и создавать файлы HuffYUV, включая VLC media player, MPlayer и ffdshow. FFmpeg также имеет собственную версию HuffYUV, специфичную для FFmpeg (несовместимую с оригинальной), которая поддерживает более широкий спектр цветовых пространств, включая цветовые пространства с четвертованием цветности и высокую битовую глубину до 48 бит на пиксель.
The original implementation was written for Windows by Ben Rudiak Gould and published under the terms of the GPL. The Huffyuv 1.1 was released in 2000. The implementation is considered very fast, giving a compression throughput of up to 38 megabytes per second on a 416 MHz Celeron. The official Huffyuv has not had a new release since 2002. Huffyuv 2.1.1 with CCESP patch 0.2.5 was released to address problems particularly for compatibility with Cinema Craft Encoder. Huffyuv 2.2 is available on some alternative sites, but is reported to have problems on some computer systems. Huffyuv MT is a multi threaded version that uses a different FourCC. There is a currently developed fork of the code named Lagarith which offers better compression at the cost of greatly reduced speed on uniprocessor systems. The FFmpeg project also contains an implementation of HuffYUV which allows HuffYUV files to be created & played on Linux and Mac OS X. Additionally, this means that many of the applications which use FFmpeg as a base can also play/create HuffYUV files, including VLC media player, MPlayer and ffdshow. FFmpeg also has its own FFmpeg specific (incompatible with the original) version of HuffYUV which supports a wider variety of colorspaces, including chroma quartered and high bit depth color spaces up to 48bpp.