问题描述
我有一个很奇怪的问题。我正在使用 python 开发语音命令分类应用程序,我正在使用 sounddevice 库来记录音频信号。如果我记录 10 秒的信号,它看起来像这样:
Waveform graph of silence and one word in the middle (don't mind the red and yellow lines).
但是,如果我在程序中也导入了tensorflow.keras,并且记录了同样的信号,开始的时候突然出现了一个峰值,图形变成了这个。播放信号后,我还可以听到短促的“哔”声。
Waveform graph after including 'import tensorflow.keras.' statement.
我已经多次复制了这个,我确信没有其他库导致了这种情况。你知道为什么会发生这种情况吗?这不是应用程序中的大问题,我可以解决它,但我只是很好奇和困惑,因为这个问题对我来说很陌生。
代码:
import sounddevice as sd
from digit_spotting_service import *
# tensorflow.keras is imported inside (at the top) of this module
from sif_splitting_service import *
SAMPLE_RATE = 22050
if __name__ == "__main__":
sd.default.channels = 1
sd.default.samplerate = SAMPLE_RATE
print("Recording...")
signal = sd.rec(SAMPLE_RATE * 10)
sd.wait()
print("Stopped")
signal = signal[:,0]
sss = SifSplittingService()
dss = DigitSpottingService()
# "sif" stands for silence-isolated-frame
sifs = sss.split(signal,SAMPLE_RATE)
sss.visualize()
for sif in sifs:
digit = dss.predict(sif,SAMPLE_RATE)
print("I think that the digit is {}.".format(digit))
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)