ios - MTAudioProcessingTapGetSourceAudio 问题

标签 ios objective-c audio avplayer

我一直在尝试让 iOS 的音频分路器处理器与 iPod 库一起工作,但运气不佳。

主要问题似乎是有时根本不会调用“进程回调”(尽管调用了准备回调)。

当 PROcess 回调确实开始被调用时,一切似乎都正常进行,直到我暂停音频。当我尝试取消暂停音频时,MTAudioProcessingTapGetSourceAudio 失败(错误:268451843 和 268435459),之后什么也没有发生。

当我尝试将它与存储在我的文档目录中的 wave 文件一起使用时,它工作得很好,过程总是被调用,暂停/取消暂停工作得很好。

在编写频谱分析应用程序时,我认为提取音频数据以进行频谱分析可能花费的时间太长(尤其是由于遗留原因,我正在将传入的音频从浮点多 channel 转换为短单 channel )。为了解决这个问题,我尝试使用 dispatch_async 将缓冲数据传递到主线程以生成频谱。同样,这似乎对我的文档目录中的 wave 文件相当有效,但对 iPod 库中的文件完全失败。

遗憾的是,由于回调的实时性,整个音频分流器的记录严重不足,几乎不可能调试。

如有任何建议或想法,我们将不胜感激!

最佳答案

Again this seems to work reasonably well for wave files in my documents directory but fails completely for files form the iPod library.

要从 iPod 库中的文件中读取样本,您必须先将文件导入临时文件夹。我已经成功使用this library , 用于导入。

关于ios - MTAudioProcessingTapGetSourceAudio 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19332286/

相关文章:

ios - 设置每个 View 的标题不起作用

ios - NSManagedObject 类并创建一个 Setter 方法

ios - 如何在谷歌地图上显示搜索地址?

javascript - 在播放器上的浏览器上播放 wav 字节数据

c# - C# 中 .wav 的平均振幅

c - 您能想到的为计算机游戏制定简单音频均衡器的最简单方法是什么?

ios - 如何让覆盖 View 与底层 View 一起转动/旋转?

ios - 在多个 NSPersistentStoreCoordinator-s 之间传递 NSManagedObjectID-s 是否安全?

iphone - 检测触摸 Cocos2d-x

android - 我口袋里的 IDE?