Как определить тишину в аудиофайле? Использую питон, но можно на любом языке

Как определить тишину в аудиофайле? Использую питон, но можно на любом языке

Для этого можно использовать энергию сигнала. Делим сигнал на окошки, затем для каждого окна проверяем, превышает ли энергия в окошке определенный порог, если да, значит там есть голос.

В аудиозаписях часто присутствует шум, поэтому есть смысл сначала "выровнять" сигнал в окошке - т.е. отнять среднее от каждого элемента.

Примерно так:

window = signal[i:(i+win_len)]
energy = ((window - window.mean()) ** 2).sum()
voice = energy > threshold
Для этого можно использовать [энергию сигнала](http://en.wikipedia.org/wiki/Energy_%28signal_processing%29). Делим сигнал на окошки, затем для каждого окна проверяем, превышает ли энергия в окошке определенный порог, если да, значит там есть голос. В аудиозаписях часто присутствует шум, поэтому есть смысл сначала "выровнять" сигнал в окошке - т.е. отнять среднее от каждого элемента. Примерно так: window = signal[i:(i+win_len)] energy = ((window - window.mean()) ** 2).sum() voice = energy > threshold
177
просмотров
1
ответов
2
подписчики
Предпросмотр
введите как минимим 10 characters
WARNING: You mentioned %MENTIONS%, but they cannot see this message and will not be notified
Сохраняю...
Сохранено
Все темы будут удалено ?
Сохранены неопубликованные черновики. Нажмите для продолжения редактирования
Discard draft