Как удалить тишину из MP3 программно?

У меня есть файлы MP3, в конце которых иногда есть тишина. Я хотел бы удалить это молчание автоматически. Насколько я могу судить, это «идеальная» тишина (0 амплитуды ), а не фоновый шум. Продолжительность контента и тишины варьируется.

Я нашел несколько других вопросов о обрезке до первых 30 секунд или обрезке до X и X+N секунд с помощью ffmpeg. Я думаю, что мог бы использовать аналогичный подход, если у меня есть способ определить, когда начинается тишина. Как бы я сделал это программно?

Например, одним из возможных решений было бы иметь команду, которая находит начало «тишины». Я ожидал такой последовательности

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

Решение не должно использовать ffmpeg, но оно должно быть доступно в Ubuntu.

24
задан Community 23 May 2017 в 10:31
поделиться