FFmpeg concatena áudio e compensa partes entre si

FFmpeg concatena áudio e compensa partes entre si

Eu descobri como posso concatenar vários arquivos de áudio com filtros complexos, mas estou lutando para compensar o áudio no arquivo de resultado. Digamos que eu queira adicionar um intervalo de 1 segundo de silêncio entre cada arquivo concatenado. É possível fazer isso com o FFmpeg?

Responder1

Gere um fluxo de áudio nulo e insira-o com um corte.

Digamos que você tenha três arquivos de áudio e queira intervalos de 1 e 3 segundos entre eles respectivamente, então você usaria

ffmpeg -i 1.mp3 -i 2.mp3 -i 3.mp3 -f lavfi -i anullsrc -filter_complex \
       "[3]atrim=duration=1[g1];[3]atrim=duration=3[g2];
        [0][g1][1][g2][2]concat=n=5:v=0:a=1"  out.mp3

Se você precisar cortar as entradas também,

ffmpeg -i 1.mp3 -i 2.mp3 -i 3.mp3 -f lavfi -i anullsrc -filter_complex \
       "[0]atrim=duration=20[t0];[1]atrim=duration=120[t1];[2]atrim=duration=45[t2];
        [3]atrim=duration=1[g1];[3]atrim=duration=3[g2];
        [t0][g1][t1][g2][t2]concat=n=5:v=0:a=1"  out.mp3

informação relacionada