我有一个找不到解决方案的问题。我正在编写合成器。当我想使用import IPython.display as dis
中的dis.Audio()
作为听取我在数学上所做的事情的一种方式时,它不会输出应该输出的.wav文件。一段代码(对于当前测试(是:
FREQ_d = 523
SAMPLES_RATE = 40000
t_samples = np.linspace(0, 4, 4*SAMPLES_RATE)
for j in song.values():
if j['note'] == 'd':
dis.Audio(np.sin(2*np.pi*FREQ_d*t_samples), rate=SAMPLES_RATE)
如果没有问题。我已经确定了这一点。当我尝试写这样的东西时:
SAMPLES_RATE = 40000
t_samples = np.linspace(0, 4, 4*SAMPLES_RATE)
freq1 = 200
freq2 = 201
s1 = np.sin(2*np.pi*freq1*t_samples)
s2 = np.sin(2*np.pi*freq2*t_samples)
s = s1 + s2
dis.Audio(s, rate=SAMPLES_RATE)
没有问题,它会输出音频。
我不知道第一段代码中问题的原因。对不起,如果很难理解我的意思。
当你想在循环中显示它时,你应该这样称呼它:
...
for i in range(100):
dis.display(dis.Audio(...))
...