Pull to refresh

SoX Spectrum — удобная утилита для создания графических спектров аудио-файлов

Reading time2 min
Views15K
В связи с подготовкой полной раритетной дискографии одного известного в узких кругах музыкального коллектива, эксклюзивной не то что для русского, но и вообще для мирового интернета, появилась необходимость создания качественных частотных спектров аудио-файлов. Было перепробовано несколько известных инструментов для подобных целей, но они были либо неоправданно громоздкими для такой процедуры, либо не имели необходимых для этого настроек.
В результате совершенно неожиданно мне на глаза попалась известная в узких кругах утилита для работы с аудиофайлами SoX (http://sox.sourceforge.net/).

image

Она была мною давно забыта, но, как оказалось, неоправданно. Это консольная утилита, имеющая огромные возможности для работы со звуком и позволяющая выполнять с ним практически любые операции. Эдакий швейцарский армейский нож для аудиофилов. На официальном сайте имеется весьма внушительный список ее возможностей. Как уже было сказано — утилита консольная, а значит поддерживаемая практически любыми устройствами. Даже в репозиториях моей гиковской никсовой Nokia N900 я нашел пакет для работы с ней (!). Некоторые сподвижки есть и на Андройде. Это уже очень интересно! Но самое главное то, что в ней был обнаружен отличный инструмент spectrogram, основное предназначение которого — именно создание графических спектров аудиофайлов в формате PNG. Несмотря на весьма спартанский интерфейс, а точнее его полное отсутствие, он имеет и некоторое количество настроек, которые можно указать как ключи при выполнении данного действия. Отлично! Теперь единственное, что остается — это написать для него небольшой bat-файл, который бы выполнял процедуру создания аудио-спектров с легкостью для пользователя. Данный процесс особых проблем не вызвал, но неожиданно возникла трудность: по умолчанию инструмент работает только с WAV. Вот это поворот! Придется собрать SoX с библиотеками libmad (для FLAC) и libmp3lame (для mp3). Компилирование происходит относительно несложно, однако его описание выходит за рамки данной статьи. Возможно в дальнейшем я опишу этот процесс. Все готово! Ветку создал на Гитхабе от работы. Все изменения и новые версии будут появляться только там. Пока утилита поддерживает только mp3 и FLAC, в дальнейшем может мартышку (APE) добавлю…

Примеры получаемых спектров:

FLAC:

image

mp3:

image

Небольшая инструкция по установке:

1) Скачиваем актуальную версию пакета SoX тут: http://sourceforge.net/projects/sox/files/latest/download и устанавливаем.
2) Скачиваем актуальную версию SoX Spectrum тут: https://github.com/ointeractive-russia/sox-spectrum и распаковываем в папку с установленным SoX (по умолчанию C:\Program Files\sox-14-4-1).

Установка завершена!

Теперь просто перемещаем нужный музыкальный файл на ярлык «SoX Spectrum» на рабочем столе. Утилита сама запустится в командной строке и выполнит необходимые действия. Картинка со спектром в формате PNG появится в папке с этим аудиофайлом.

P. S. По умолчанию утилита создает спектры в режиме обычной цветопередачи, но также имеется возможность включения режима повышенной цветопередачи, что позволит получить более четкие и наглядные спектры. Чтобы сделать это — откройте файл sox-spectrum.bat любым текстовым редактором и в разделе «Настройки» исправьте значение переменной HIGHT_COLOR на 1.
Tags:
Hubs:
+6
Comments5

Articles