Название AGRESS получается, если поиграть со словами Audio и proGRESSive. Программа agcodec позволяет прогрессивно кодировать аудиофайлы. Файлы должны быть в формате WAV: 8 либо 16 бит, стерео либо моно режим, частота дискретизации может быть любой. Полученный при этом agress-файл можно воспроизвести при помощи плеера agplay, который идет в комплекте.
Реализован agcodec крайне просто: вначале исходный файл делится на фреймы (размер которых можно указать в командной строке), затем к каждому фрейму применяется вейвлетное преобразование Добеши 9/7 и алгоритм кодирования SPIHT (Set Partitioning in Hierarchical Trees).
Психоакустическое моделирование и прочие оптимизации пока не применяются. Другими словами, данный проект пока носит скорее демонстрационный характер.
Скорость работы кодера очень сильно зависит от выбранных настроек. Более того, алгоритм практически симметричен по времени. Это означает, что скорость кодирования равна скорости декодирования. Это прежде всего объясняется особенностью алгоритма SPIHT.
Другими словами, agcodec достаточно требователен к ресурсам компьютера, но несмотря на это, на достаточно мощной машине возможно как кодировать, так и декодировать аудио CD-качества в реальном времени.
>>> Подробности