Remova o silêncio dos arquivos de áudio enquanto deixa lacunas

16

Atualmente, estamos usando este comando dentro de um script de shell para remover o silêncio dos arquivos de áudio:

ffmpeg -i $INFILE -af silenceremove=0:0:0:-1:1:${NOISE_TOLERANCE}dB -ac 1 $SILENCED_FILE -y

Isso funciona bem, exceto que remove todo o silêncio, fazendo com que o áudio restante seja comprimido.

Como isso pode ser feito, deixando dois ou três segundos entre cada pedaço de áudio?

A solução precisa ser muito eficiente, pois processaremos muito áudio e deve usar uma ferramenta que possa ser facilmente instalada no Linux e no OSX, como ffmpeg ou sox.

O que outras pessoas estão dizendo
fonte

Respostas:

25

A melhor maneira que eu vi é adicionando a -lbandeira ao silêncio da seguinte maneira:

sox in.wav out6.wav silence -l 1 0.1 1% -1 2.0 1%

Copiei esse comando do Exemplo 6 deste post muito útil chamado The Sox of Silence

Ben T
fonte
Testado e faz exatamente o que eu preciso. Obrigado!
precisa
Finalmente, uma solução sobre como funciona. Obrigado.
vr_driver
Eu gostaria de fazer isso em um vídeo e aparar o silêncio - o SoX funcionará? Qual é a melhor alternativa?
Zero_cool 5/05/19