Python 精确异步定时

Python 精确异步定时,python,asynchronous,audio,pygame,Python,Asynchronous,Audio,Pygame,制作“音乐盒”节目。现在,我的代码实际上调用: note.play() time.sleep(0.08) note.play() time.sleep(0.16) note.play() time.sleep(0.12) 但是,计时有点不一致,使得每次播放的音乐听起来都不一样。我要精确 如何最好地处理这个问题?带时间增量的Pygame循环?异步等待东西?你不能相信计算机的时钟。所以你能做的就是在你想要安静的地方播放录音的沉默 看看这个: 您可以轻松地连接音频曲目。因此,如果你在一个文件中记录了

制作“音乐盒”节目。现在,我的代码实际上调用:

note.play()
time.sleep(0.08)
note.play()
time.sleep(0.16)
note.play()
time.sleep(0.12)
但是,计时有点不一致,使得每次播放的音乐听起来都不一样。我要精确


如何最好地处理这个问题?带时间增量的Pygame循环?异步等待东西?

你不能相信计算机的时钟。所以你能做的就是在你想要安静的地方播放录音的沉默

看看这个:


您可以轻松地连接音频曲目。因此,如果你在一个文件中记录了0.01秒的静默,你可以将第一个音符与静默音轨连接8次,获得音符+0.08秒的静默,然后连接到另一个音符,依此类推。

注意:pygame只是直接播放音频文件。我非常感谢其他音频库建议。我正在开发一个库,它允许在指定的时间播放:。它仍然有很多工作在进行中,但是如果你愿意,你可以尝试一下!非常好,谢谢。我将:使用pydub拼接位,保存文件,然后使用pygame播放文件。这有点麻烦,但应该能用。是的,我就是这么想的。如果我找到更好的办法,我会告诉你的!