Concatena e faz loop em arquivos MP3

1

Eu quero concatenar e fazer o loop de 3 arquivos MP3.

grammaraudio1.mp3 grammaraudio2.mp3 grammarsudio3.mp3 

O arquivo de saída deve fazer o loop do primeiro arquivo MP3 cinco vezes, depois o segundo 5 vezes, etc. Posso usar o ffmpeg para fazer isso?

Eu gostaria que a segunda parte da faixa incluísse os mesmos arquivos MP3, mas em loop apenas 3 vezes. Em seguida, uma terceira parte que pode fazer o loop de cada arquivo apenas uma ou duas vezes. O comando deve produzir um único arquivo MP3.

Exemplo de saída, em que x# é o número de vezes em loop:

GA1.mp3 (x5) GA2.mp3 (x5) GA3.mp3 (x5) GA1.mp3 (x3) GA2.mp3 (x3) GA3.mp3 (x3) GA1.mp3 (x2) GA2.mp3 (x2) GA3.mp3 (x2)

    
por Jake Mackenzie 07.07.2018 / 01:52

1 resposta

2

Supondo que os MP3s tenham a mesma taxa de amostragem e contagem de canais, use

ffmpeg -f lavfi -i amovie=grammaraudio1.mp3:loop=5,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio2.mp3:loop=5,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio3.mp3:loop=5,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio1.mp3:loop=3,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio2.mp3:loop=3,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio3.mp3:loop=3,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio1.mp3:loop=2,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio2.mp3:loop=2,asetpts=N/SR/TB
       -f lavfi -i amovie=grammaraudio3.mp3:loop=2,asetpts=N/SR/TB
       -filter_complex "[0][1][2][3][4][5][6][7][8]concat=n=9:v=0:a=1" out.mp3

Comando único, sem arquivos intermediários.

    
por 07.07.2018 / 09:14