有没有办法在不使用 AVFoundation 框架的情况下在 iOS 中录制音频?

Posted

技术标签:

【中文标题】有没有办法在不使用 AVFoundation 框架的情况下在 iOS 中录制音频?【英文标题】:Is there a way to record audio in iOS without using the AVFoundation framework? 【发布时间】:2014-02-18 10:00:47 【问题描述】:

我正在trigger.io 中开发本机插件,这不允许 2 个插件在一个项目中使用相同的框架。

我的录音机插件只是简单地记录音频,保存它并将 url 返回到音频文件。为此,我使用了 AVAudiosessions 和 AVAudioRecorder。

我正在寻找一种替代方法,通过设备的麦克风录制音频,而不使用通常的 AVFoundation 框架。 谁能推荐一个替代方案?

提前致谢。

【问题讨论】:

查看这个答案***.com/questions/8357514/… 特别是 SpeakHere 示例项目。还有atastypixel.com/blog/using-remoteio-audio-unit 【参考方案1】:

Core Audio 有几个较低级别的 API。 AudioQueueServices 类是一个很好的起点,可以在 AudioToolbox 框架中找到。

对于最精细的粒度控制,AudioUnits 框架是最接近硬件抽象层 (HAL) 的框架。

这些需要更多的代码,但回报是值得的。 AVAudioRecorder 只是其中一些较低级别框架的 Objective-c 包装器。

有关更多信息,请查看Core Audio Overview 文档。 (查找标题为使用音频队列服务进行录制和播放的部分

但是,您仍然需要 AVFoundation 框架中的 AVAudioSession 类来管理您的应用程序音频会话,因为现在已弃用 AudioSessionServices 类。

【讨论】:

以上是关于有没有办法在不使用 AVFoundation 框架的情况下在 iOS 中录制音频?的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 的 AVFoundation 中使用夜间模式

有没有办法在不使用 PHP 或 JavaScript 的情况下让 textarea 拉伸以适应其内容?

使用 AVFoundation 框架进行音频处理

使用 OpenCV 和 AVFoundation 框架的 iPhone 实时图像处理?

是否可以在 Objective c 中使用 AVFoundation 框架绘制网格线

使用 AVFoundation 框架(AVCaptureSession)在 iPhone 中录制视频?