Como posso remover o silêncio de um MP3 programaticamente?

Eu tenho arquivos MP3 que às vezes têm silêncio no final. Eu gostaria de remover esse silêncio automaticamente. Pelo que eu posso dizer, é o silêncio "perfeito" (amplitude 0), não o ruído de fundo. A duração do conteúdo e o silêncio variam.

Eu encontrei algumas outras perguntas sobrecorte para os primeiros 30 segundos oucorte para X e X + N segundos usandoffmpeg. Eu acho que poderia usar uma abordagem semelhante, desde que eu tenha uma maneira de encontrar quando o silêncio começar. Como eu faria isso programaticamente?

Por exemplo, uma solução possível seria ter um comando que encontre o início do "silêncio". Eu esperaria uma seqüência como esta

end=$(ffmpeg some-command-to-find-start-of-silence)
ffmpeg -t "$end" -acodec copy -i inputfile.mp3 outputfile.mp3

A solução nãonão tem que usarffmpeg, mas precisa estar disponível no Ubuntu.

questionAnswers(3)

yourAnswerToTheQuestion