Перейти к содержимому

Скрипт sox сжатия wav в mp3

В новогодние каникулы прилетел алерт, испарилось 200ГБ дискового пространства. Зайдя на виртуальную машину, увидел, что один из разработчиков поставил копировать аудио записи из базы Avaya на диск. Оповестил руководство и предложил решение — сжать wav в mp3 а в дальнейшем будут на лету конвертировать сами.
Для решение задачи я выбрал мой любимый SoX (Sound eXchange) — свободный кроссплатформенный аудиоредактор, распространяющийся под GNU. Из репозитория epel не поддерживает из коробки сжатие в mp3. Если у вас еще не установлен, то предлагаю вам статью по установке sox.

Открываем редактор mcedit (я предпочитаю работать в нем):

mcedit /opt/wav2mp3.sh

Вставляем:

#!/bin/sh

# Директория для поиска аудио 
dd="/Records/recordings/"

# Выполняем поиск в директории dd формат файла wav
for i in `find $dd -type f | grep ".wav$"`

do
    echo "convert $i"
# Сжимаем файлы в wav в mp3
    sox -t wav -r 8000 -c 1 $i -t mp3 $i.mp3
# удаляем сжатые файлы wav
    rm $i
done

После сохрянения делаем файл исполняемым:

chmod +x /opt/wav2mp3.sh

Теперь выполняем:

./wav2mp3.sh

В итоге мы увидем следующие:

# ./wav2mp3.sh
convert /Records/recordings/2021/01/09/2021-01-09_16-48-58_7хххххххххх.wav
convert /Records/recordings/2021/01/09/2021-01-09_16-41-22_7хххххххххх.wav
convert /Records/recordings/2021/01/09/2021-01-09_16-25-50_7хххххххххх.wav

Вот и все.

Метки: