1

我正在使用插孔创建一个音乐软件,它有多个输出 (16)。在我的程序(许多合成器、采样器等)中运行完整的 dsp 进程时,cpu 负载有点高,但没有什么问题。这是当插孔客户端的输出未连接或直接连接到声卡输出时。

因此,当我启动 Ardor 并打开空模板(没有插件或任何东西)时,cpu 负载保持在 5% (使用顶部监控),直到我将程序的输出连接到 Ardor 输入。在那之后,Ardor cpu 使用率跃升至 80-95% 并导致一切都变慢到无法使用,即使我的 prog 没有处理太多任何东西。这没有任何意义,因为具有相同或更高数量的插孔输出的 puredata 实例不会导致类似的 cpu 负载到 ardor(空的甚至充满插件)。

在我的程序中,所有输出都在同一个插孔回调函数中处理,这是 multiout 的正确方法吗?什么可能导致这个cpu峰值?我在 linux 测试机上使用 rt 内核,我的程序的 gui 是用 SDL 绘制的。

它开始成为一个非常酷的程序,但是这个问题使它有点无法使用。

4

0 回答 0