jupyter笔记本中的python在循环中播放声音



我正在尝试使用ipython显示音频。我的想法是,我有一个循环执行一些任务,当该循环的任务完成时,我希望发出警报。因此,循环显然是这样的:

for i in range(5):
    if True:
        IPython.display.Audio("alarm.mp3", autoplay=True)
    else:
        pass

但是,这根本没有发出任何声音,也没有创建小部件。我可以使用哪些其他库,或者如何使用ipython进行修复?

库Sounddevice可以做到这一点。将音频文件转换为WAV,然后:

from scipy.io import wavfile
import sounddevice as sd
fs, data = wavfile.read('alarm.wav')
for i in range(5):
    if True:
        sd.play(data, fs)
    else:
        pass

这很好地做到了。

如果您仍在研究此问题。我刚刚发现了有关playsound的信息。非常简单的裸骨API,它是跨平台,甚至没有任何依赖。

您可以简单地在jupyter笔记本电脑中调用它,以阻止方式(即在主线程上)或异步。

import playsound
playsound.playsound(path, block=True)

在此处查看

相关内容

  • 没有找到相关文章

最新更新