gpt4 book ai didi

ios - 使用 AVAudioRecorder 和 AVAudioSessionCategoryPlayAndRecord 忽略麦克风输入

转载 作者:行者123 更新时间:2023-11-28 17:33:17 27 4
gpt4 key购买 nike

我正在开发一款具有多个 AVAudioPlayer 和一个 AVAudioRecorder 的 iPad 应用程序。这个想法是像背景音乐一样播放主要 AvAudioPlayer 的声音,然后触摸不同的按钮播放其他 AVAudioPlayer 的声音以与背景音乐混合。混合音乐将由 AVAudioRecorder 录制。

为此,我使用类别 AVAudioSessionCategoryPlayAndRecord 实现了 AVAudioSession,并使用以下设置创建了 AVAudioRecorder 对象:

NSDictionary *recordSetting = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt:kAudioFormatAppleIMA4], AVFormatIDKey,
[NSNumber numberWithInt:AVAudioQualityHigh], AVEncoderAudioQualityKey,
[NSNumber numberWithInt:16], AVEncoderBitRateKey,
[NSNumber numberWithInt: 2], AVNumberOfChannelsKey,
[NSNumber numberWithFloat:44100.0], AVSampleRateKey,
nil];

一切正常,但它也记录了麦克风的输入,这对我来说不太好。

问题是,如何在录音过程中忽略/替换/消除麦克风输入?

我用谷歌搜索了很长时间,并在 Apple 文档中搜索 AVAudioSession 类别和模式、AVAudioRecorder 设置,但对我没有任何帮助。

我还搜索了静音麦克风,但我了解到这在 iOS 设备上是不可能的。

在此先感谢您的帮助,对于我写英文的错误感到抱歉。

最佳答案

AVAudioRecorder API 仅用于麦克风录音。

为了创建应用程序发出的任何声音的音频文件,应用程序必须在软件(混音器音频单元或您自己的 DSP 代码)中进行音频混合,然后在需要时进行压缩,并保存生成的音频流.

关于ios - 使用 AVAudioRecorder 和 AVAudioSessionCategoryPlayAndRecord 忽略麦克风输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10608074/

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