Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从内存开始播放wave文件,从磁盘开始播放其余文件_Python_Performance_Audio_Wave_Preloading - Fatal编程技术网

Python 从内存开始播放wave文件,从磁盘开始播放其余文件

Python 从内存开始播放wave文件,从磁盘开始播放其余文件,python,performance,audio,wave,preloading,Python,Performance,Audio,Wave,Preloading,我正在寻找一种改进基于python的乐器性能的方法(一种在Raspberry Pi3上触发.wav示例的midi键盘)。目前,所有样本都加载到内存中,以便使用python sounddevice进行低延迟播放。这适用于较小的样本集,但对于1GB的大钢琴样本集,加载时间为30秒以上 直接从磁盘播放解决了这个问题,但引入了更高的延迟,这对乐器没有好处 是否有一种方法可以将每个样本的第一个区块预加载到内存中,从内存中播放该区块,然后让文件的其余部分直接从磁盘播放?还是有一个我没有想到的完全不同的解决方

我正在寻找一种改进基于python的乐器性能的方法(一种在Raspberry Pi3上触发.wav示例的midi键盘)。目前,所有样本都加载到内存中,以便使用python sounddevice进行低延迟播放。这适用于较小的样本集,但对于1GB的大钢琴样本集,加载时间为30秒以上

直接从磁盘播放解决了这个问题,但引入了更高的延迟,这对乐器没有好处


是否有一种方法可以将每个样本的第一个区块预加载到内存中,从内存中播放该区块,然后让文件的其余部分直接从磁盘播放?还是有一个我没有想到的完全不同的解决方案?

这似乎相当广泛,不是吗?也许我的解决方案涵盖的范围太广,但性能问题肯定非常具体