Кодек lossless для windows

Lagarith Lossless Video Codec

Lagarith is a lossless video codec intended for editing and archiving. Lagarith offers better compression than codecs like Huffyuv, Alparysoft, and CorePNG. There are a few lossless codecs that can compress better than Lagarith, such as MSU and FFV1; however Lagarith tends to be faster than these codecs. Lagarith is able to operate in several colorspaces — RGB24, RGB32, RGBA, YUY2, and YV12. For DVD video, the compression is typically only 10-30% better than Huffyuv. However, for high static scenes or highly compressible scenes, Lagarith significantly outperforms Huffyuv. Lagarith is able to outperform Huffyuv due to the fact that it uses a much better compression method. Pixel values are first predicted using median prediction (the same method used when «Predict Median» is selected in Huffyuv). This results in a much more compressible data stream. In Huffyuv, this byte stream would then be compress using Huffman compression. In Lagarith, the byte stream may be subjected to a modified Run Length Encoding if it will result in better compression. The resulting byte stream from that is then compressed using Arithmetic compression, which, unlike Huffman compression, can average fractional bits per symbol. This allows the compressed size to be very close to the entropy of the data, and is why Lagarith can compress simple frames much better than Huffyuv, and avoid expanding high static video. Additionally, Lagarith has support for null frames; if the previous frame is mathematically identical to the current, the current frame is discarded and the decoder will simply use the previous frame again.

This codec was build using the Huffyuv source as a template, and uses some Huffyuv code, most notably the routine to upsample YUY2 video to RGB and to perform pixel prediction on YUY2 video. Other colorspace conversion routines were taken from AviSynth. Lagarith is released under the GPL.

If you find any errors with this codec, please let me know — Sir_Lagsalot at hotmail.com.

Lagarith was last updated on December 8, 2011.

Thanks to AbsoluteDestiny and Zarxrax for helping with testing the codec, Andrew Dunstan for providing optimized colorspace conversion routines for the X64 build, Ben Rudiak-Gould for developing Huffyuv and AviSynth, and to Avery Lee for helping speed up the decoder as well as having developed VirtualDub.

Version 1.3.20 introduced a new option to prevent upsampling when decoding. Checking this option and having the mode set to RGB or RGBA will prevent Lagarith from performing any colorspace conversions when encoding or decoding video.

Lagarith Installer (v1.3.27) An installer for 32 and 64 bit versions of windows (other than Windows 2000, see below). Thanks to Zarxrax for creating and testing the installer script.

Lagarith Codec (v1.3.27) A manual installation version.

Windows 2000 users: the multi-threading changes introduced in 1.3.24 are not supported in Windows 2000. Please use version 1.3.23 instead.

FLAC 1.3.2 (GIT 2017-03-14) x86/x64

Кодер/декодер FLAC работающий через командную строку.

FLAC — самый популярный среди lossless (безпотерьных) кодеков аудио. Обладает достаточно высокой скоростью компрессии и очень большой скоростью декомпрессии. На данный момент FLAC имеет самую широкую софтовую и аппаратную поддержку.

Параметры командной строки

Кодирование:
flac.exe [параметры кодирования] -o

Примечание: укажите «-» вместо входного файла для кодирования со STDIN.

Основные параметры :
* -V проверить Проверить корректность кодирования путем параллельного декодирования и сравнения с оригиналом.

* -s тихий режим Не записывать статистику кодирования/декодирования.

* -0. -8 степень сжатия Указывает степень сжатия. Целые числа от -0 (минимальное) до -8 (максимальное).

* —ignore-chunk-sizes игнорировать продолжительность (недокументированная опция) Игнорировать продолжительность указанную в заголовке WAV.

Рекомендации и примеры (для конвертера foobar2000)


Зависимость сжатия и скорости от режима кодирования

Оптимальное соотношение скорости и степени сжатия:
-s —ignore-chunk-sizes -4 — -o %d

Максимальное сжатие. Достаточно быстрое кодирование и декодирование:
-s —ignore-chunk-sizes -8 — -o %d

Скриншот с примером:

Информация от спонсора

KARAOKE-MARKET: караоке онлайн. Огромная база качественных композиций. Здесь вы сможете исполнить современные караоке-песни прямо в режиме онлайн.

Читайте также:  Как почистить windows 10 от хлама

Кодек lossless для windows

FLAC (англ. Free Lossless Audio Codec) – популярный свободный кодек, предназначенный для сжатия аудиоданных без потерь.

В отличие от аудиокодеков, обеспечивающих сжатие с потерями (MP3, AAC, WMA, Ogg Vorbis) FLAC, как и любой другой lossless-кодек, не удаляет никакой информации из аудиопотока и подходит как для прослушивания музыки на высококачественной звуковоспроизводящей аппаратуре, так и для архивирования аудиоколлекции.

Сегодня формат FLAC поддерживается множеством аудиоприложений и портативных аудиоплееров, а также имеет большое количество аппаратных реализаций.

Характеристики FLAC

При кодировании аудиоданных (PCM) не допускаются никакие потери, то есть декодированное аудио идентично бит в бит оригиналу. Каждый фрейм данных содержит 16-битный CRC для детектирования ошибок при передаче. Целостность аудиоданных в дальнейшем также страхуется записью в заголовок файла MD5-сигнатуры, вычисленной на основе оригинальных некодированных аудиоданных, которую потом при декодировании или тестировании можно сравнить.

FLAC декодирует только при помощи целочисленных алгоритмов, что гораздо менее ресурсоемко по сравнению с другими кодерами. Декодирование в реальном времени возможно даже на весьма «скромном» оборудовании.

Поскольку FLAC открытый формат и обладает весьма скромными запросами по части декодирования, то он на данный момент единственный кодер без потерь, у которого есть аппаратная поддержка.

Каждый фрейм в файлах FLAC полностью содержит всю необходимую информацию для декодирования. FLAC не будет ссылаться на предыдущий или последующий фрейм; FLAC использует коды синхронизации и CRC (подобно MPEG), которые позволяют декодеру перейти на середину потока с минимальной задержкой.

FLAC поддерживает быстрый с точностью до семпла поиск. Эта характеристика полезна не только для воспроизведения, но и для разного рода программ-редакторов.

Новые блоки метаданных могут быть определены и добавлены в следующих версиях кодера без какого-либо нарушения для старых версий декодеров. На данный момент существуют типы метаданных для тегов, cue sheets, таблиц поиска. Сторонние приложения могут записывать собственный тип метаданных Application, зарегистрировав свой идентификатор.

Достоинства FLAC

  • Перенес на многие системы.
  • Open Source и свободная лицензия.
  • Аппаратная поддержка (PhatBox, Kenwood MusicKeg, Rio Karma, и т. п.).
  • Потоковая поддержка.
  • Очень быстрое декодирование.
  • Многоканальная поддержка и высокая разрешающая способность потоков.
  • Поддержка Replay Gain.
  • Поддержка cue sheet (с небольшими ограничениями).
  • Широкое распространие в качестве наследника формата Shorten.

Недостатки FLAC

  • Эффективность сжатия немногим меньше, чем у других популярных кодеров (Monkey’s Audio, OptimFROG).
  • Режим максимальной компрессии достаточно медленен.

Сравнение одиннадцати лучших lossless кодеров (2017)

Copyright (C) 2017, Taras Kovrijenko

Полное или частичное копирование текста допускается только с письменного разрешения автора .

Обратите внимание: это обновлённая версия теста. С результатами теста за 2011 год (для сравнения) можно ознакомиться здесь.

1. Вступление

Идея о создании этого теста родилась у меня, когда я обнаружил, что существующие на тот момент аналогичные сравнения сильно устарели (последний тест датирован 2007 годом). Большинство из них проводилось на старых слабых процессорах, с использованием давно забытых версий кодеров.

Идея же моего теста заключается в том чтобы показать возможности последних версий кодировщиков на более современном оборудовании. Значительный прирост скорости кодирования/декодирования в этом случае можно получить за счет использования таких наборов инструкций, как SSE2, SSE3, SSSE3, которые поддерживаются новыми процессорами, и конечно же — за счет многоядерности.

Стоит заметить, что в тесте рассматривается лишь три параметра: скорость кодирования, скорость декодирования и степень сжатия. Я умышленно не беру во внимание проблемы совместимости, так как это значительно затрудняет возможность сделать какое-либо конкретное заключение.

2. Подготовка к тесту


2.1 Оборудование

Все технологии энергосбережения и HyperThreading отключены в BIOS материнской платы. Чтобы исключить задержки, связаные с записью/чтением HDD, для тестов используется RAM диск (Z:, 3 Гб).

2.2 Программное обеспечение

По возможности используются 64-битные версии кодеров. Для теста была специально произведена установка портативного foobar2000 последней версии с необходимым плагинами и кодировщиками, после чего предварительно были созданы профили конвертера для каждого кодера.

ОС: Windows 10 Pro 64-bit
Видеодрайвер: ForceWare 385.41 WHQL

foobar2000:
Core (2017-07-10 05:24:08 UTC)

foobar2000 core 1.3.16

foo_benchmark.dll (2017-09-04 20:26:52 UTC)
Decoding Speed Test 1.2.3

foo_bitcompare.dll (2017-09-04 20:26:52 UTC)
Binary Comparator 2.1.1

foo_converter.dll (2017-07-10 05:22:28 UTC)
Converter 1.5

foo_input_la.dll (2010-12-08 22:45:00 UTC)
Lossless Audio(La) decoder 0.01

foo_input_monkey.dll (2017-09-04 20:26:54 UTC)
Monkey’s Audio Decoder 2.1.7
foo_input_ofr.dll (2017-09-05 14:18:58 UTC)
OptimFROG Lossless/DualStream Decoder 1.31

foo_input_std.dll (2017-07-10 05:22:04 UTC)
FFmpeg Decoders 3.2.4
Standard Input Array 1.0

foo_input_tak.dll (2017-09-04 20:26:54 UTC)
TAK Decoder 0.4.7

foo_input_tta.dll (2017-09-04 20:26:54 UTC)
TTA Audio Decoder 3.4

Читайте также:  Стандартный просмотр изображений windows 10 reg

foo_ui_std.dll (2017-07-10 05:22:34 UTC)
Default User Interface 0.9.5

Кодеры:
FLAC 1.3.2 GIT20170314 x64 ICL
Flake 0.11
FLACCL 2.1.6
Lossless Audio (LA) Compressor v0.4b
Monkey’s Audio Console Front End v4.22
OptimFROG Lossless Audio Compressor v5.100 x64
refalac 1.64
TAK v2.3.0
TTA 2.3 64-bit SSE4
WMA 0.2.9c 64-bit
WavPack v5.1.0

Для процесса плеера (а также для конвертера в его настройках) был установлен приоритет реального времени.

2.3 Музыкальный материал

Для теста был выбран образ диска одного из современных композиторов электронной музыки. Запись имеет широкий частотный и относительно неплохой динамический диапазоны.

2.4 Подбор параметров кодирования

Изначально я планировал провести сравнение при максимальных настройках сжатия для каждого кодера. Но по некоторым причинам это представилось невозможным, да и смысл такого теста был бы весьма сомнителен. Например, чтобы закодировать 30-секундный отрезок стандартного звукового материала кодеком OptimFROG с максимальными параметрами, уходит 230 секунд (скорость кодирования около 0.13х). Таким образом я сформулировал следующие требования:

  • скорость кодирования не менее 1x
  • скорость декодирования не менее 2х
  • возможность использовать для сжатых файлов прокрутку (seeking).

Так как прирост сжатия по мере увеличения параметров уменьшается, степень сжатия с выбранными мною параметрами практически не отличается от максимальной.

Общие параметры конвертера:

Output bit depth: Auto
Dither: Never
Output folder: Source track folder
Fiilename pattern: %filename%
Processing: None
When finished: Do nothing

Кодеры и параметры

Примечание: для кодеров, не имеющих возможности кодировать на лету, входной файл был указан непосредственно в параметрах (вместо переменной %s). Это сделано с той целью, чтобы кодирование происходило непосредственно из файла-источника в конечный, без создания временного (что занимает значительное время и искажает результаты). Ниже параметры для упомянутых кодеров указаны с переменной %s.

-s —ignore-chunk-sizes -8 — -o %d

Установлена максимальная степень сжатия, включён тихий режим и игнорирование размера в заголовке WAV.

Установлена максимальная степень сжатия, включён тихий режим.

-q -11 —lax —slow-gpu —cpu-threads 2 — -o %d

Установлена максимальная степень сжатия, включён тихий режим, включён режим переноса части расчетов на CPU.

Включён режим повышенного сжатия.

Установлена максимальная степень сжатия (Insane).

—silent —encode —mode bestnew —experimental %s —output %d

Включён тихий режим, режим наилучшего сжатия, а также экспериментальная технология сжатия.

-s —ignorelength — -o %d

Включён тихий режим.

Параметры:
1 ядро: -e -p4m -ihs -silent — %d
2 ядра: -e -p4m -ihs -tn2 -silent — %d

включён режим максимального сжатия, игнорирование размера в заголовке, тихий режим. Второй набор параметров содержит ключ, включающий использование двух ядер процессора.

Данный кодер не требует дополнительных параметров кодирования.

— %d —silent —codec lsl

WMA 9.2 lossless (16 бит, 44.1 кГц), тихий режим.

Extra High сжатие, асимметричное кодирование 6й степени, игнорировать размер в заголовке, тихий режим.

3. Методика тестирования


3.1 Кодирование

После подготовки дело остается за малым. Первый этап тестирования выглядит следующим образом:

  1. Закрыть в диспетчере задач все процессы, кроме необходимых.
  2. Запустить foobar2000 и установить для процесса foobar2000.exe максимальный приоритет.
  3. Добавить в плейлист файл Z:\Image.wav
  4. Выделив файл в плейлисте, нажать кнопку конвертации, загрузить первый профиль конвертера и запустить процесс кодирования.
  5. По окончании конвертирования записать время и скорость кодирования (в виде N*realtime) из консоли плеера.
  6. Выполнить то же самое с использованием каждого из 9-ти профилей конвертера. Полученные файлы добавить в плейлист.
  7. Записать размер сжатого файла, степень сжатия (в %) и FBR (см. ниже) для каждого кодера.

После выполнения кодирования я получил следующий результат:

В плейлисте отображается имя файла, кодек, FBR (file-based bitrate = размер файла/продолжительность), степень сжатия в % и размер файла в мебибайтах.

3.2 Верификация

Сжатый файл должен нести все необходимые для восстановления исходного потока данные. Для проверки достоверности я произвел сравнение всех полученных файлов с исходным с помощью плагина Binary Comparator. Для того чтобы провести такое сравнение, надо выделить несжатый и тестируемый сжатый файлы в плейлисте, в контекстном меню выбрать Utilities->Bit-Compare Tracks.

Для всех форматов, кроме LA, результат был положительным (No differences in decoded data found).

В случае с LA плеер закрывался с ошибкой. По этой причине, декодирование файла Image.la пришлось производить с помощью консольного кодера/декодера la.exe и библиотеки la-core.dll (которые использовались для кодирования). Полученный таким образом несжатый поток оказался идентичным исходному. Из этого можно сделать заключение, что декодер LA в foobar2000 работает некорректно, но при кодировании кодер информации не теряет и её можно восстановить.

3.3 Декодирование

Скорость декодирования оценивалась с помощью плагина Decoding Speed test. Декодирование происходило с высоким приоритетом, в 5-10 проходов. Буферизация в память отключена (файлы и так физически находятся в ОЗУ), количество потоков установлено в 1 (в стандартных условиях декодирование происходит именно в один поток). Окно плагина изображено ниже.

Для каждого кодера записывалось среднее время и скорость декодирования.

Примечание: для формата LA декодирование выполнялось через консоль (см. «Верификация»).

4. Результаты

Результаты тестирования оформлены в таблицу и отсортированы по убыванию степени сжатия.

Кодек Степень сжатия FBR, кбит/с Размер файла, МБ Время сжатия, c Скорость сжатия Время декодирования, с Скорость декодирования
LA 66,55% 939 535,55 589,28 8,11x 519,90 9,20x
OFR 66,74% 941 537.06 1028,78 4,65x 558,19 8,57x
APE 67,23% 948 540,98 252,92 18,91x 327,8 14,59x
TAK 67,79% 956 545,53 128,91 37,10x 12,62 379,02x
TAK
(2 ядра)
67,79% 956 545,53 78,92 60,60x 12,67 377,36x
WV 68,75% 970 553,28 1741,86 2,74x 39,86 119,99x
FLACCL 69,51% 980 559,36 14,01 341,40x 10,99 435,21x
TTA 69,60% 982 560,12 22,94 208,51x 32,42 147,53x
Flake 69,67% 983 560,66 432,33 11,06x 14,07 340,03x
FLAC 69,90% 986 562,49 39,98 119,61x 9,13 523,48x
ALAC 71,00% 1002 571,38 42,56 112,37x 18,92 252,822x
WMA 71,68% 1011 576,81 38,72 123,52x 32,26 148,28x
PCM 100% 1411 804,67

5. Заключение

1. Lossless Audio (LA) — этот весьма старый кодек (2004 г.) стал безусловным победителем по сжатию. При этом надо отметить вполне приемлемую (в сравнении с тем же OptimFROG или WavPack) скорость кодирования, а также достаточную скорость декодирования. Хоть файл LA и не декодировался с помощью плагина foo_benchmark, проигрывался он прекрасно, без запинок и задержек при прокрутке.
Остаётся только удивляться, почему автор забросил такой прекрасный кодек, даже не открыв при этом исходный код.

2. OptimFROG — не слишком отстает от LA. Но по скорости его едва ли можно назвать быстрым. Кроме того, неприятным моментом является высокая задержка при прокрутке файла — порой это сильно напрягает.

3. Monkey’s Audio — популярный, но ресурсоёмкий кодек. Дает действительно высокое сжатие, но, опять же, имеет проблемы с прокруткой.

4. TAK — этот активно разрабатываемый кодек не перестает радовать. Если брать во внимание все три параметра (сжатие, кодирование, декодирование), TAK выглядит наиболее привлекательно. Высокая скорость работы объясняется активным использованием процессорных оптимизаций (в т.ч. SSSE3). А использование двух ядер дает почти двукратный прирост скорости кодирования! Таким образом, в случае с TAK преимущество от использования современных процессоров наиболее ощутимо.

5. WavPack — честно говоря, я не знаю, за счет чего этот кодек приобрел популярность. Кодирование со средней степенью сжатия дает результаты сравнимые с FLAC, а использование режимов высокого сжатия приводит к неоправданному понижению скорости. Хотя, главным плюсом этого кодека является его широкая поддержка и функциональность (в т.ч. поддержка многоканального аудио, гибридного режима), но напомню, что эту сторону вопроса мы в данном тесте не рассматриваем.

6. FLACCL — без сомнений, это очень высокопроизводительный кодер, который рекомендуется к использованию всем, у кого есть видеокарта с поддержкой CUDA. Кроме того, с его помощью можно, хоть и незначительно, но увеличить степень сжатия во FLAC.

7. True Audio (TTA) — тут надо отметить разве что очень высокую скорость кодирования и приемлемую степень сжатия (чуть выше чем у FLAC). При этом скорость декодирования нельзя назвать очень высокой.

8. Flake — преимущество от использования этого кодера с максимальным сжатием весьма сомнительно. Кроме того, такие высокие настройки сжатия могут привести к потере обратной совместимости с некоторыми аппаратными декодерами. Вероятно, этот кодек даст какое-то реальное преимущество по скорости (в сравнении с референсным flac.exe) только при уровне 8 и ниже.

9. FLAC — степень сжатия средняя, но вот скорость декодирования порадовала. Правда, главной причиной лидерства этого кодека среди общественности является открытый исходный код, и, как следствие, широчайшая аппаратная/софтовая поддержка.

10. Apple Lossless (ALAC) — низкий уровень сжатия, скорость сжатия — средняя. Стоит отметить значительный рост скорости декодирования по сравнению с результатами 2011 года (253x против 39x) — это, скорей всего, результат обновления декодера ALAC в foobar2000 (не так давно он был встроен в плеер).

11. WMA Lossless — ещё меньшая степень сжатия, чему ALAC, средняя скорость сжатия. Скорость декодирования приемлемая. Трудно представить случай, в котором возникла бы необходимость использовать именно этот lossless кодек.

Вывод: по результатам теста победителем становится самый молодой из кодеков — TAK, обеспечивщий очень высокую степень сжатия при хороших показателях скорости кодирования/декодирования.

Читайте также:  Линукс для домена windows
Оцените статью