在我正在制作的应用程序中,有一个“工作室”,当你可以发出一些声音效果,并为此我正在使用“惊人的音频引擎”。
还可以选择按流收听歌曲。 不幸的是,令人惊叹的音频引擎不包含“流媒体”功能,所以我使用的是“AudioStreamer”。
我不知道为什么但是这两个对我来说不能很好地合作。 他们独自工作很好,但此刻我尝试在惊人的音频引擎上播放一些音频,停止,然后移动到流,然后回到音频引擎,声音不再播放!没声音!
我已经检查过每个课程都叫“停止”,并将其设为“无”。 在他们比赛之前我每次都会分配它们。
我没有选择,并且认为它可能与它们都使用的核心音频有关? 任何帮助将不胜感激
由于
修改
我发现,只有当我使用“AudioStreamer”的“停止”方法时才会发生这种情况! 可以解释任何方式吗?
编辑第二个
找到了答案!
这是通过以外的方式解决的:
/*
while (state != AS_INITIALIZED)
{
[NSThread sleepForTimeInterval:0.1];
}
*/
// And adding this:
AudioQueueStart(audioQueue, NULL);
对于“停止”方法,仍然不明白为什么......
答案 0 :(得分:0)
调用音频停止方法或函数以确实停止所有音频单元(缓冲区被硬件清空等)需要一些时间。在经过这段(短暂的)延迟之后,您通常无法重启音频。