AudioKit似乎与正在运行的硬件紧密结合。例如,如果您将耳机插入计算机,在模拟器上运行的简单let mic = AKMicrophone()
可能会崩溃。
是否可以通过某种方法将AudioKit配置为与硬件隔离?现在,对我而言,似乎无法可靠地对涉及AudioKit的任何代码进行单元测试。更不用说在云CI上这样做了。
我想念什么吗?
实际上,AudioKit本身是使用TravisCI测试的。
基本上,我们将音频离线渲染到缓冲区,然后将结果的MD5检查为已知值。
而不是使用不能依赖于您进行测试的AKMicrophone,而是将发生器输出(我们使用基本的正弦波)发送到处理节点。