【发布时间】:2015-12-13 18:17:40
【问题描述】:
我想在 iPython 中生成连续的音频。我见过pyo,但我只能让它在terminal 中工作……如果可能的话,我更愿意在iPython 中测试作品。
我最近发现了iPython.display.Audio,并认为它可能是一种为动画生成色调的有用方法。
# Generate a sound
from IPython.display import Audio
import numpy as np
def waveform(freq,sec=1,sample_rate=44100):
t = np.linspace(0,sec,sample_rate*sec)
return(np.sin(np.pi*freq*t))
scale = [440, 493.88, 523.25, 587.33, 659.25, 698.46, 783.99, 880.00]
sample_rate = 44100
Audio(waveform(440,sec=2),rate=sample_rate,autoplay=True)
所以这行得通,它制作了一个小音箱 GUI,可以播放我的音调。 . .但是当我尝试时无法生成多个音调:
for note in scale:
Audio(waveform(note,sec=2),rate=sample_rate,autoplay=True)
我真的很想让iPython.display.Audio 工作,但如果它实时播放音调(而不仅仅是写入文件),我愿意使用其他模块。我听说过pyaudio 和pygame,但我不确定声音是否可以即时生成。
【问题讨论】:
标签: python audio ipython pyaudio