Parâmetros ótimos para o fatiamento de áudio usando o FFMpeg

1

Estou planejando usar o Perl para extrair o áudio de arquivos de mídia por meio do FFMpeg. Agora, até onde eu sei, o FFMpeg precisa de muitos parâmetros, como taxa de bits, etc, que é usado para extrair o áudio. Assim, para um vídeo em particular, podemos fornecer os parâmetros por meio de testes, e o FFMpeg nos dará o áudio. Mas quando eu preciso aplicá-lo a muitos arquivos de mídia, eu preciso de alguns parâmetros ótimos que sempre extrairão um áudio decente de todos.

Então, alguém pode me orientar quais devem ser os parâmetros padrão que devo usar para garantir que quase todos os arquivos de mídia forneçam uma extração de áudio decente?

    
por SexyBeast 02.06.2013 / 15:29

1 resposta

3

Você pode usar -codec copy ou -c copy (ou -c:a copy ). Isso irá copiar o fluxo de bits em 100%. Copiar o fluxo de bits tem certas limitações, pois você só pode cortar quadros-chave; mas, até onde sei, isso se aplica principalmente a fluxos de vídeo em vez de áudio (codecs de áudio não têm um análogo para quadros-chave, tanto quanto eu sei). Pessoalmente, nunca encontrei problemas para cortar áudio com cópia de fluxo de bits.

ffmpeg -i input.mp3 -c:a copy -ss 10 -t 50 output.mp3

Sua próxima melhor opção seria usar áudio PCM descompactado ( -c:a pcm_s16le ) ou um codec sem perdas, como FLAC ( -c:a flac ). Isso produzirá áudio com som idêntico ao original. Isto lhe dará um arquivo maior, no entanto.

ffmpeg -i input.mp3 -c:a pcm_s16le -ss 10 -t 50 output.wav
ffmpeg -i input.mp3 -c:a flac -ss 10 -t 50 output.flac

Você pode colocar -ss antes da entrada para acelerar consideravelmente as coisas, embora isso possa dar uma busca menos precisa. Como você está criando scripts, você pode encontrar algum uso para a opção -to (consulte a documentação ).

    
por 02.06.2013 / 16:45