gpt4 book ai didi

buffer - iOS - RemoteIO AudioUnits,可能有 2 个?

转载 作者:行者123 更新时间:2023-12-01 15:29:05 24 4
gpt4 key购买 nike

我正在尝试这样做

RemoteIO1(用于记录到缓冲区)-> kAudioUnitType_Mixer -> RemoteIO2(用于播放输出)

RemoteIO1 用于两个目的:

1) 将音频送入混音器 channel 0

2) 从麦克风录制音频到缓冲区

kAudioUnitType_Mixer

1) 从 RemoteIO 获取音频 - 输入 0

2) 将来自 (1) 的音频与来自缓冲区 - input1 的音频混合

RemoteIO2

1) 获取混合音频并将其发送到播放

最初我以为我可以只从混音器输出播放,但下面给了我一个错误。我可以确认我需要另一个 RemoteIO 来播放吗?

// Enable Mixer for playback
status = AudioUnitSetProperty(_mixerUnit,
kAudioOutputUnitProperty_EnableIO,
kAudioUnitScope_Output,
mixerOutputBus,
&flag,
sizeof(flag));

if (noErr != status) { NSLog(@"Enable Mixer for playback error"); return; }

此外,我做了以下测试,发现似乎只有一个 RemoteIO 可用(inputComponent 和 inputComponent2 的地址相同)

// Get component
AudioComponent inputComponent = AudioComponentFindNext(NULL, &desc);
AudioComponent inputComponent2 = AudioComponentFindNext(NULL, &desc);

我的应用程序中只能有一个 RemoteIO 实例是真的吗?如果是这样,第二个 RemoteIO 的替代方案是什么?

谢谢。

码头。

最佳答案

我了解到 iOS 不可能有 2 个 remoteIO。 (如果我错了,请纠正我)。RemoteIO 就像墙上的 socket ——一个插头表示“输入”,另一个表示“输出”。“输入”未连接到“输出”。因此,我能够将混音器的输出连接到 remoteIO 的输出。同时,我从 RemoteIO 输入捕获了麦克风音频。

关于buffer - iOS - RemoteIO AudioUnits,可能有 2 个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13246999/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com