Конвертировать WAV (записи Asterisk) в MP3
У меня есть большая коллекция WAV. Они есть:
- RIFF, little-endian
- ВОЛНА аудио
- GSM 6.10
- Моно 8000 Гц
- эффективный битрейт 13,6
Мне нужно конвертировать их в MP3. Тока я вынужден сначала отправить файл через sox:
sox input.wav -s input-pcm.wav
Потом через хромого
lame input-pcm.wav output.mp3
Есть несколько проблем с этим, 1 МБ файл занимает 5 секунд, а MP3 звучит как дерьмо. Это в основном понятно, не очень статично, но просто низкого качества.
Кто-нибудь успешно конвертировал между этим конкретным WAV и MP3 так быстро и без ужасного качества звука? Заранее спасибо.
3 ответа
Если у вас есть доступ к файлам с помощью Linux-бокса с графическим интерфейсом, SoundConverter очень хорошо работает для пакетных транскодов. Тогда вам также не придется делать сценарий-фу.
Вы можете распараллелить выполнение на многоядерном процессоре:
- создать `/tmp/wav2mp3.sh`:
T=`mktemp /dev/shm/wav2mp3.XXXXXX.wav` #/dev/shm is a tmpfs - a filesystem in memory sox "$1" -s "$T" lame --silent "$T" "$2" rm -f "$T"
- конвертировать все файлы WAV в текущем каталоге и подкаталогах:
find -name \*.wav -print0 | xargs -0 -i -P 4 sh /tmp/wav2mp3.sh {} {}.mp3