我遇到了一个无法诊断的未记录问题。我在用pd-for-ios。加载到libpd (iOS)中的补丁与在Pd中运行的补丁的行为不同。
我设法找出了delay和metro对象发送消息的速率比指定的要高得多。似乎在libpd中没有时间同步。为了测试这一点,我做了一个简单的补丁,让节拍器每1秒发送一次响声。在Pd中,它按预期工作。在libpd中,我注册了一个调度程序,每隔几毫秒就会传来一声巨响。当我将补丁加载到所提供的一个pd-for-ios测试项目中时,结果是相同的。似乎节拍器没有时间限制地工作,不间断地发送刘海。
发布于 2015-10-05 23:17:54
libpd本身没有内置的挂壁时间。它只根据处理的音频帧的数量来跟踪时间;客户端代码负责在正确的时间调用libpd的process方法。
如果您将libpd与pd-for-ios一起使用,则这将被隐式处理,因为pd-for-ios将创建一个音频单元,该单元在其呈现回调中调用libpd的process方法。
如果您直接调用process方法,那么它将尽可能快地运行,这解释了您所看到的行为。您可以实现自己的延迟,但通过pd-for-ios可能更容易。
https://stackoverflow.com/questions/32934214
复制相似问题