Iphone 我们可以将耳机静音并仅从底部扬声器播放吗?
Posted
技术标签:
【中文标题】Iphone 我们可以将耳机静音并仅从底部扬声器播放吗?【英文标题】:Iphone can we mute Ear Speakers and only play from the Bottom Speakers? 【发布时间】:2019-10-19 00:46:58 【问题描述】:我需要单个 iPhone 扬声器的音频。最好只是底部扬声器。目前我正在从 Ear 和 Bottom 扬声器获得音频。
我已经尝试了 AVAudiosession 类别和端口的所有排列。 当我尝试将OutputAudioPort 覆盖到.speaker 时,我得到一个OSStatus 错误-50,并相信这是我的问题的根源。
覆盖在 iPhone X、iPhone XR 和 iPhone 6s+ 上失败
目前使用这个作为设置:
试试 AVAudioSession.sharedInstance().setCategory(.playback, options: AVAudioSession.CategoryOptions.defaultToSpeaker)
try AVAudioSession.sharedInstance().overrideOutputAudioPort(.speaker) // 这失败 OSStatus 错误 -50
【问题讨论】:
【参考方案1】:我发现的“解决方案”是设置平移
audioPlayer.pan = -1
全部向左平移,使其使用底部扬声器而不是耳机。所以可能不是每个人的解决方案。另请注意,此平移到 -1 仅适用于纵向模式。它必须根据方向变化进行调整。
OSStatus 错误 -50 的解决方案似乎是将类别设置为 .playAndRecord。然后设置为 .speakers 工作。但是,这仍然会播放两个扬声器,对我来说不是路线问题。
【讨论】:
以上是关于Iphone 我们可以将耳机静音并仅从底部扬声器播放吗?的主要内容,如果未能解决你的问题,请参考以下文章