【问题标题】:iOS audio over HDMI -- how to deal with 48khz sample rate?HDMI 上的 iOS 音频——如何处理 48khz 采样率?
【发布时间】:2011-12-23 17:51:05
【问题描述】:

我很高兴合成音频(44.1khz)并通过 RemoteIO 音频单元发送出去。我注意到我的应用程序的音频在通过 HDMI 输出到特定型号的电视时出现“乱码”。在我看来,问题与这台电视正在寻找 48khz 的音频数据有关。

这里有一些问题:

  • RemoteIO 是否采用它输出到的任何设备的采样率?如果我通过 HDMI 向要求 48kz 的设备发送音频,我的 RemoteIO 回调缓冲区是否变为 48khz?

  • 是否有一些简洁的方法可以强制 RemoteIO 仍然以 44.1khz 的频率进行思考,并且在将数据传递给设备之前足够聪明地自行执行任何必要的采样率转换?

  • 如果 RemoteIO 确实只是遵循它所连接的设备,那么大概我需要在我的合成引擎和远程 IO 之间进行一些采样率转换。 AudioConverterConvertComplexBuffer 是最好的方法吗?

【问题讨论】:

    标签: ios core-audio


    【解决方案1】:

    如果您想要转换采样率,请尝试使用音频队列 API,或使用一些 DSP 代码在您自己的应用中进行转换。

    是否可以配置 RemoteIO 缓冲区大小或采样率可能取决于 iOS 设备型号、操作系统版本、音频路由、背景模式等,因此应用程序在使用 RemoteIO 时必须适应不同的缓冲区大小和采样率。

    【讨论】:

      【解决方案2】:

      解决了我的问题。我错误地假设渲染回调请求的帧数是 2 的幂。更改了我的代码以适应任意数量的帧,现在似乎一切正常。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-22
        • 1970-01-01
        • 2017-03-04
        • 2011-05-08
        • 2011-01-06
        • 2019-02-06
        相关资源
        最近更新 更多