Converter um WAV (gravações de asterisco) para MP3

1

Eu tenho uma grande coleção de WAVs. Eles são:

  • RIFF, little-endian
  • WAVE audio
  • GSM 6.10
  • Mono 8000Hz
  • taxa de bits efetiva de 13,6

Eu preciso convertê-los em MP3. Eu sou forçado a enviar o arquivo primeiro pelo sox:

sox input.wav -s input-pcm.wav

Então através do coxo:

lame input-pcm.wav output.mp3

Existem alguns problemas com isso, um arquivo de 1MB leva 5s e o MP3 soa como lixo. É principalmente inteligível, não realmente estatístico, mas apenas de má qualidade.

Alguém converteu com sucesso este WAV e MP3 específicos de uma forma que é rápida e não produz uma qualidade de som horrível? Agradecemos antecipadamente.

    
por kmarks2 23.05.2012 / 20:13

3 respostas

2

Você pode tentar com o ffmpeg:

ffmpeg -i file.wav file.mp3
    
por 23.05.2012 / 20:17
1

Se você tiver acesso aos arquivos com uma caixa do Linux com uma GUI, o SoundConverter funciona muito bem para transcodificar em lote. Então você não terá que fazer nenhum script-fu.

    
por 23.05.2012 / 20:40
1

Você poderia paralelizar a execução no processador multicore:

  • crie '/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"
  • converta todos os wavs no diretório atual e nos subdiretórios:
    find -name \*.wav -print0 | xargs -0 -i -P 4 sh /tmp/wav2mp3.sh {} {}.mp3
por 24.05.2012 / 16:10