如何渲染来自远程 I/O 音频单元的系统输入并以立体声播放这些样本
Posted
技术标签:
【中文标题】如何渲染来自远程 I/O 音频单元的系统输入并以立体声播放这些样本【英文标题】:How to render system input from the remote I/O audio unit and to play these sample in stereo 【发布时间】:2016-01-26 13:58:15 【问题描述】:我正在实现从(单声道)麦克风到立体声输出的播放程序。对于输出,我配置了带有两个通道的 AudiostreamBasicDescription,并将此 ASBD 设置为远程 I/O 单元的输入范围。
但是,当我将渲染回调配置为绘制系统输入时,不会播放任何音频。另一方面,当 ASBD 设置为单声道时,播放音频没有问题。
音频单元渲染由以下实现:
AudioUnitRender(_rioUnit, ioActionFlags, inTimeStamp, 1, inNumberFrames, ioData)
显然,这不足以处理和播放渲染的输入。有谁知道这应该怎么做?
【问题讨论】:
【参考方案1】:RemoteIO 两侧的 ASBD 中的通道数应设置为相同,均为单声道,或均为立体声。如果您想要立体声输出,请配置立体声输入。即使插入(或内置)单声道麦克风。
【讨论】:
虽然我不知道通道应该始终相同,但它确实适用于单声道和立体声输出(应该先检查...)!以上是关于如何渲染来自远程 I/O 音频单元的系统输入并以立体声播放这些样本的主要内容,如果未能解决你的问题,请参考以下文章
在 iOS 中同时使用两个音频单元进行 I/O 是不是安全?
如何在 iOS 的 AUGraph 中添加两个 I/O 音频单元?