gpt4 book ai didi

iphone - AudioQueueNewInput 降低 AVAudioPlayer 的播放音量

转载 作者:行者123 更新时间:2023-12-03 21:24:56 24 4
gpt4 key购买 nike

我正在使用 Stephen Celis 的 SCListener 类来记录 iPhone 麦克风音频级别。我还通过使用 AVAudioPlayer 播放音频。例如,用户按下“播放”以开始在后台播放声音,然后可以选择向麦克风吹气以播放其他更短的声音。代码一切正常,在应该播放的时候播放所有声音,但是,当您开始使用 SCListener 收听时,AVAudioPlayer 音量大大降低。我已将罪魁祸首缩小到 SCListener 源代码中的这一行:

AudioQueueNewInput(&format, ListeningCallback, self, NULL, NULL, 0, &queue);

我绞尽脑汁,不知道如何在执行此行后将播放音量保持在最高水平。我也和史蒂芬·塞利斯谈过,他不知道发生了什么事。我认为 iPhone 在使用麦克风时可能会降低输出音量,这样就不会引入反馈,但似乎应该有一种方法可以禁用它。

总结:

  1. 开始使用 AVAudioPlayer 播放长音频文件 - 100% 音量(大声)。
  2. 启用 SCListener 并开始监听(调用 AudioQueueNewInput)。
  3. AVAudioPlayer 声音的输出音量大幅降低
  4. 调用 [[SCListener sharedListener] stop] 来处置队列
  5. AVAudioPlayer 声音恢复更高的播放音量

有人见过这样的事情或者对如何保持更高的播放音量有任何想法吗?我已将音量参数明确设置为 1.0f,以确保增益处于最高水平。

最佳答案

你可以试试这个:

UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);

关于iphone - AudioQueueNewInput 降低 AVAudioPlayer 的播放音量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/892695/

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