У меня есть набор аудиофайлов, которые загружают пользователи, и неизвестно, что в них содержится.
Я хотел бы взять произвольный аудиофайл и извлечь каждый из случаев, когда кто-то говорит, в отдельные аудиофайлы. Я не хочу обнаруживать настоящие слова, просто точки «начал говорить», «перестал говорить» и создавать новые файлы в этих точках.
(Я ориентируюсь на среду Linux и разрабатываю на Mac)
Я нашел Sox, который выглядит многообещающе и имеет режим "vad" (голосовая активность). Обнаружение). Однако это, кажется, находит первый экземпляр речи и разделяет звук до этого момента, так что это близко, но не совсем правильно.
Я также просматривал библиотеку «wave» Python, но тогда мне нужно было бы написать свою собственную реализацию «vad» Sox.
Существуют ли готовые инструменты командной строки, которые будут делать то, что я хочу? Если нет, подойдет ли какой-нибудь хороший Python или Ruby?