在Python Audiolab中发出哔声
我想知道怎么在Python中生成一个轻柔的“哔”声,使用audiolab,而不想用外部的.wav文件。我找到一个生成随机噪音的例子:
play(0.05 * np.random.randn(2, 48000))
可惜的是,我对音频的表现形式了解得不够,无法创建一个特定频率的“哔”声,而且我也不知道在哪里能找到一些易懂的文档。
如果有人能帮忙,那真是太好了!
2 个回答
0
我搞明白了:
play(0.05 * np.array([math.cos(x/40) for x in range(10000)]))
这个代码生成了一个很不错的音调,其中的数值:
- 0.05 定义了音量;
- 40 定义了频率;
- 10000 定义了音调的持续时间。
再见!
3
具体来说:
import audiolab
import scipy
x = scipy.cos((2*scipy.pi*f/fs)*scipy.arange(fs*T))
audiolab.play(x, fs)
这里的 f
是音调的频率,单位是赫兹(Hertz),fs
是采样率,T
是音调的持续时间,单位是秒。