AudioToolBox AudioConverterFillComplexBuffer 实现文件不存在
AudioToolBox AudioConverterFillComplexBuffer implementation file is not present
我正在使用 Audio Unit RemoteIO
的实时音频渲染,我需要进行采样率转换以确保我的渲染与硬件规格的采样率相同。例如。在 iPhone 12 中采样率为 48khz 但在 iPhone 8 中为 44.1khz。
为了进行这种采样率转换,我使用了 AudioConverterFillComplexBuffer
方法。但是有一个问题。为了确保我没有得到任何欠载,我想检查 AudioConverterFillComplexBuffer
方法源代码以查看是否使用 new
关键字进行内存分配。这是一个要求,因为 mem alloc 是阻塞的,所以它不应该在远程 io 回调中使用。
有没有办法从 AudioToolBox
的源代码访问 AudioConverterFillComplexBuffer
函数?在 xcode 我只能看到 header.
该实现是 Apple 私有的,但 AudioConverterFillComplexBuffer
和 AudioConverter
的 C++ 端均由 IOProcs 直接使用,因此从实时上下文调用该函数应该没有问题。
这是 AVAudioSourceNode
的渲染块的屏幕截图:
我正在使用 Audio Unit RemoteIO
的实时音频渲染,我需要进行采样率转换以确保我的渲染与硬件规格的采样率相同。例如。在 iPhone 12 中采样率为 48khz 但在 iPhone 8 中为 44.1khz。
为了进行这种采样率转换,我使用了 AudioConverterFillComplexBuffer
方法。但是有一个问题。为了确保我没有得到任何欠载,我想检查 AudioConverterFillComplexBuffer
方法源代码以查看是否使用 new
关键字进行内存分配。这是一个要求,因为 mem alloc 是阻塞的,所以它不应该在远程 io 回调中使用。
有没有办法从 AudioToolBox
的源代码访问 AudioConverterFillComplexBuffer
函数?在 xcode 我只能看到 header.
该实现是 Apple 私有的,但 AudioConverterFillComplexBuffer
和 AudioConverter
的 C++ 端均由 IOProcs 直接使用,因此从实时上下文调用该函数应该没有问题。
这是 AVAudioSourceNode
的渲染块的屏幕截图: