você está aqui: Home  → Arquivo de Mensagens

Convertendo de flac para mp3

Colaboração: Bruno Buys

Data de Publicação: 13 de janeiro de 2012

Flac é um formato de áudio interessante: é lossless - sem perdas - e livre. Mas os arquivos resultantes são grandes e nem sempre podem ser tocados em nossas "appliances" portáteis.

Vamos convertê-los então, usando o ótimo SoX. Que outro programa de áudio tem a moral de usar a descrição "Swiss army knife of sound processing"??

  1. Comece instalando o SoX e a biblioteca libsox-fmt-mp3.

      apt-get install sox libsox-fmt-mp3
    

  2. Converta seus arquivos flac um por um:

      sox arquivo.flac -C 320 arquivo.mp3
    

    No SoX a ordem na qual você chama as opções faz diferença. O "-C" tem que vir nessa posição, e especifica o bitrate do arquivo mp3 resultante. 320 é o valor mais alto permitido no mp3 (maior qualidade de áudio, veja http://pt.wikipedia.org/wiki/Bitrate).

  3. Converta um lote de arquivos flac sem precisar comandar um por um:
      for flac in *.flac ; do sox  "$flac" -C 320 "`basename "$flac" .flac`".mp3 ;
      done
    
    Esse comando converte todos os arquivos flac de um diretório em mp3.

    Esse comando é complicado, cheio de parâmetros, ok. Mas você pode copiar aqui da dica e colar no terminal, com o shift+insert.

    Graças à mágica do basename, o arquivo resultante fica com o nome correto, só a extensão trocada para mp3.

  4. Crie uma função no seu .bashrc e tenha o comando acima à sua disposição sempre:
      flacmp3(){
      for flac in *.flac ; do
      sox  "$flac" -C 320 "`basename "$flac" .flac`".mp3
      done
      }
    
    O nome da função é o que vem antes dos parênteses (). Eu uso esse por simplicidade, mas você pode botar o que quiser.

  5. Se preferir, comande direto do terminal
      echo "for flac in *.flac ; do sox  "$flac" -C 320 "`basename "$flac" .flac`".mp3
      ; done" >>  ~/.bashrc
    
    em vez de abrir seu .bashrc em um editor.

Nenhum dos comandos apresentados aqui apaga o flac original depois de convertido :).

Sobre o flac: flac.sourceforge.net/

Sobre appliances portáteis e porque elas vão entrar em guerra com os computadores de propósito geral: http://boingboing.net/2011/12/27/the-coming-war-on-general-purp.html


Nerd versus Geek

Por Fátima Conti

Nerd x Geek

Xadrez

Vi a primeira em @cliffoliveira



 

 

Veja a relação completa dos artigos de Bruno Buys

Opinião dos Leitores

bruno buys
14 Jan 2012, 22:19
luis henrique,
Instale a biblioteca libsox-fmt-mp3
Luis Henrique
14 Jan 2012, 13:30
Estou com o seguinte erro:

sox FAIL formats: can't open output file `1.mp3': SoX was compiled without MP3 encoding support

como faço para compilar o sox com suporte a mp3?
bruno buys
13 Jan 2012, 13:29
Pessoal, tem um errinho no 5o comando.
Para copiar a função pro .bashrc o comando correto é:

echo "flacmp3(){ for flac in *.flac ; do sox "$flac" -C 320 "`basename "$flac" .flac`".mp3 ; done }" >> ~/.bashrc

Aramis
13 Jan 2012, 13:17
Quando os nomes de arquivos são comuns (nada de um arquivo com nome como "arq.flac.flac") costumo usar a própria substituição do bash, ao invés de abrir um subshell:

for flac in *.flac ; do
sox "$flac" -C 320 ${flac/.flac/.mp3}
done

Mas só vale quando não existe um arquivo com nomes `estranhos' =]
E só faz diferença sensível no desempenho quando a conversão é massiva.
Mercelo
13 Jan 2012, 12:01
Eu sempre uso Sound Convert (soundconvert). Ele converte de diversos formatos para MP3 (talvez faça o caminho contrário, mas nunca usei). E é possível também criar regras de nomeação dos arquivos.
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script