我目前有一些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
的{{1}}之类的命令的行为,
使用rec recording.wav silence 1 0.1 3% 1 3.0 3%
可以做到这一点吗?