Назад | Перейти на главную страницу

Конвертируйте WAV (записи Asterisk) в MP3

У меня большая коллекция WAV. Они есть:

Мне нужно преобразовать их в MP3. Current Я вынужден сначала отправить файл через sox:

sox input.wav -s input-pcm.wav

Потом через хромой:

lame input-pcm.wav output.mp3

Есть пара проблем с этим, файл размером 1 МБ занимает 5 секунд, а MP3 звучит как дерьмо. Он в основном внятный, не очень статичный, просто плохого качества.

Кто-нибудь успешно конвертировал этот конкретный WAV в MP3 таким образом, чтобы он был быстрым и не приводил к ужасному качеству звука? Заранее спасибо.

Вы можете попробовать с помощью ffmpeg:

ffmpeg -i file.wav file.mp3

Вы можете распараллелить выполнение на многоядерном процессоре:

  • создайте `/ 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

Если у вас есть доступ к файлам в Linux с графическим интерфейсом, SoundConverter очень хорошо работает для пакетного транскодирования. Тогда и скрипт-фу делать не придется.