【发布时间】:2016-07-08 21:50:14
【问题描述】:
我想为我的神经科学研究生成一系列特定频率和持续时间的音频提示。经过一番谷歌搜索,我发现一个名为 Pygame 的 Python 模块似乎能够完成这项工作。
sound = pygame.sndarray.make_sound(sample_array) #sample_array is a one-second sine wave I created
sound.play(maxtime = 100) #play the sample_array for 100ms
pygame.time.delay(1000) #pause for 1000ms
我多次循环运行这些代码。但是,声音的长度存在微小但明显的差异。我用手机录制了声音,并在 Matlab 中分析了信号。有些脉冲持续时间长达 180 毫秒,有些短脉冲仅持续 80 毫秒,而理论上它们都应该持续 100 毫秒。
这种变化对我的应用来说太大了。我能做些什么来改善它吗?或者,如果有人可以确认这种精度超出了 Pygame 的能力,并且可能会建议使用另一个库,那也很棒。
【问题讨论】: