mp3 extração com avconv ou ffmpeg não funciona mais corretamente

5

Antes de atualizar para o Ubuntu mais recente, usei o seguinte comando para extrair o mp3 de um arquivo avi:

$ for x in *.avi; do ffmpeg -vol 100 -ab 160k -ar 44100 -i "$x" "'basename "$x" .avi'.mp3"; done

Isso funcionou. Mas desde o Ubuntu 12.04 eu recebo Opção sample_rate não encontrado. quando tento executar este comando. Se eu omitir -ar 44100 (ou -sample_rate 44100) ele extrai o mp3, mas na maioria dos casos o tamanho do mp3 extraído não serve mais. Isso significa que eles têm um comprimento de 43min ou algo assim, embora o avi tenha um comprimento de apenas 5min.

É o mesmo problema com o ffmpeg e o avconv. Alguma idéia de como resolver esses problemas?

    
por Bevor 27.06.2012 / 21:45

4 respostas

4

Tente com isso:

ffmpeg -i "$x" -vol 100 -ab 160k -ar 44100 "'basename "$x" .avi'.mp3"

Antes as opções estavam na frente do arquivo de entrada, mas parece que você quer defini-las para o arquivo de saída.

    
por 04.08.2012 / 15:20
1

Já experimentou com outros arquivos avi? A faixa de áudio do arquivo pode ser maior que a faixa de vídeo (apenas um palpite).

Já experimentou a opção -t?

   -t duration
       Restrict the transcoded/captured video sequence to the duration
       specified in seconds.  "hh:mm:ss[.xxx]" syntax is also supported.

Você pode tentar configurar um filtro de fluxo de bits de áudio no ffmpeg. Eu nunca tentei, mas o filtro "remove_extra" parece promissor;)

   -absf bitstream_filter
       Bitstream filters available are "dump_extra", "remove_extra",
       "noise", "mp3comp", "mp3decomp".

Você já pensou em usar um comando como o ExifTool para visualizar informações sobre o arquivo e definir suas opções de acordo (talvez até analisar a saída e automatizá-lo em seu script)?

Talvez você possa extrair o arquivo de áudio em um formato sem perdas e transcodificar o arquivo de áudio, mas é necessário que haja uma maneira melhor do que isso.

Se você resolver, por favor, poste o que você fez, porque eu não estou satisfeito com os métodos óbvios de processar os milhares de arquivos de vídeo que eu preciso para demux. Eu fiz um script semelhante ao seu, no entanto eu quero obter os melhores arquivos de áudio de qualidade possível, sem perder nenhum espaço. Minhas opções de transcodificação serão dinâmicas com certeza, então eu preciso de algo um pouco mais sofisticado do que um forro único.

    
por 06.08.2012 / 08:28
0

O ffmpeg -version irá informá-lo que opções de compilação foram ativadas durante a compilação do ffmpeg para o Ubuntu 12.04. Você pode estar faltando uma biblioteca ou talvez uma opção não foi ativada durante o tempo de compilação no qual você teria que recompilar com quaisquer opções desativadas ativadas. A taxa de amostragem padrão para o ffmpeg é 44100 com uma taxa de bits de 64k.

    
por 03.08.2012 / 20:34
0

Instale o ppa do ffmpeg do ppa: jon-severinsson / ffmpeg e isso consertará isso.

    
por 01.11.2012 / 02:38