AudioKit似乎与运行它的硬件紧密结合。例如,如果将耳机插入计算机,则在模拟器上运行的简单let mic = AKMicrophone()
可能会崩溃。
有没有办法配置音频套件以将其与硬件隔离?现在,在我看来,似乎不可能可靠地对任何涉及 AudioKit 的代码进行单元测试。更不用说在云 CI 上做到这一点了。
我错过了什么吗?
实际上 AudioKit 本身是使用 TravisCI 进行测试的。
https://audiokit.io/tests/
基本上,我们将音频离线渲染到缓冲区,并将结果的MD5检查为已知值。
与其使用不能依赖的AKMicrophone进行测试,不如将生成器输出(我们使用基本的正弦波(发送到处理节点。