В результате совершенно неожиданно мне на глаза попалась известная в узких кругах утилита для работы с аудиофайлами SoX (http://sox.sourceforge.net/).
Она была мною давно забыта, но как оказалось, неоправданно. Это консольная утилита, имеющая огромные возможности для работы со звуком и позволяющая выполнять с ним практически любые операции. Эдакий швейцарский армейский нож для аудиофилов. На официальном сайте имеется весьма внушительный список ее возможностей. Как уже было сказано — утилита консольная, а значит поддерживаемая практически любыми устройствами. Даже в репозиториях моей гиковской никсовой Nokia N900 я нашел пакет для работы с ней (!). Некоторые сподвижки есть и на Андройде. Это уже очень интересно! Но самое главное то, что в ней был обнаружен отличный инструмент spectrogram, основное предназначение которого — именно создание графических спектров аудиофайлов в формате PNG. Несмотря на весьма спартанский интерфейс, а точнее его полное отсутствие, он имеет и некоторое количество настроек, которые можно указать как ключи при выполнении данного действия. Отлично! Теперь единственное, что остается — это написать для него небольшой bat-файл, который бы выполнял процедуру создания аудио-спектров с легкостью для пользователя. Данный процесс особых проблем не вызвал, но затем неожиданно возникла трудность: по умолчанию инструмент работает только с WAV. Вот это поворот! Придется собрать SoX с библиотеками libmad (для FLAC) и libmp3lame (для mp3). Компилирование происходит относительно несложно, однако его описание выходит за рамки данной статьи. Надеюсь, что в дальнейшем я опишу этот процесс. Все готово! Ветку создал на Гитхабе от работы. Все изменения и новые версии будут появляться только там. Пока утилита поддерживает только mp3 и FLAC, в дальнейшем может мартышку (APE) добавлю…
Примеры получаемых спектров:
FLAC:
mp3:
Небольшая инструкция по установке:
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.
ссылка на оригинал статьи http://habrahabr.ru/post/192510/
Добавить комментарий