以ulaw格式捕获iOS麦克风音频

时间:2015-05-22 08:32:48

标签: ios avfoundation core-audio

我需要实时捕获麦克风语音输入,并通过RTSP向上游传输。音频格式需要在ulaw中。我需要获取原始字节,以便将其提供给Live 555 RTSP库。鉴于Core Audio和AV Foundation中的各种内容,我不知道从哪里开始。

  1. 麦克风的原生音频格式是什么?它是线性PCM吗?

  2. iOS 8只有AV音频引擎才具有转换功能吗?虽然我可能需要支持iOS 7。

  3. 我可以使用AQRecorder吗?但它似乎保存到文件,但我需要流式传输。

  4. 我可以使用AVCaptureDevice吗?但是,如果它不在其中,我如何将其转换为ulaw?

  5. 帮助表示感谢,谢谢。

1 个答案:

答案 0 :(得分:2)

  1. 是的,它是线性PCM;

  2. 我对AVAudioEngine一无所知,也许你可以试试Audio Converter;

  3. 3和4。也许你需要使用Audio Unit&音频转换器&音频流。它很复杂,但由于您需要实时捕捉麦克风并将其转换为ulaw并上传,您需要深入了解更深层次。音频单元是一个不错的选择。

    这里有一些受欢迎的第三方图书馆供您参考:

    Novocaine,从麦克风捕获实时语音数据;

    AudioStreamer& FreeStreamer,从网络下载数据并播放;

    TheAmazingAudioEngine,据说非常强大;

    也许这些对你来说太复杂了,我写了一些简单的例子:

    ExtAudioFileConverter:将音频文件从一种格式转换为另一种格式;

    iOSEchoCancellaion:是同步捕获语音和播放的示例。