我目前有一些python代码可以持续录制4秒的音频片段:
#!/usr/bin/env python3
import sounddevice as sd
fs = 16000
while True:
print('Started listening')
myrecording = sd.rec(int(4 * fs), dtype='int16', channels=1, blocking=True)但是,我不希望有固定的4秒片段,而是希望sounddevice录音,直到音量降到音频阈值以下(即,当手持麦克风的人停止讲话时),然后再次开始收听。
本质上,我想模仿像sox的rec recording.wav silence 1 0.1 3% 1 3.0 3%这样的命令的行为,它就是这样做的。
有没有一种简单的方法可以用sounddevice做到这一点?
发布于 2019-02-01 13:09:56
这样做的库似乎被称为VAD (语音音频检测)。对于python来说,py-webrtcvad似乎是一个很好的选择。
https://stackoverflow.com/questions/53534418
复制相似问题