iPhone音频播放:强制通过内部扬声器?

Posted

技术标签:

【中文标题】iPhone音频播放:强制通过内部扬声器?【英文标题】:iPhone audio playback: force through internal speaker? 【发布时间】:2009-06-30 17:06:25 【问题描述】:

有谁知道即使插入耳机,是否可以通过内置扬声器实现音频文件的播放?

【问题讨论】:

【参考方案1】:

我不确定您是如何播放音频的,但请尝试查看 Audio Session Programming Guide 的“重定向输出音频”部分

看起来像这样:

UInt32 audioRouteOverride = kAudiosessionOverrideAudioRoute_Speaker;  // 1 
AudioSessionSetProperty ( 
    kAudioSessionProperty_OverrideAudioRoute,                         // 2 
    sizeof (audioRouteOverride),                                      // 3 
    &audioRouteOverride                                               // 4 
); 

【讨论】:

这是否也改变了输入的路径?我想从外部麦克风获取输入,并希望使用内部扬声器进行输出。我可以使用这种方法吗? 我不确定,当您说外部麦克风时,您是指设备麦克风而不是耳机麦克风吗? 不不,我指的是外部插入的麦克风。输入应该取自那个。我的问题解决了。发现您的帖子很有帮助! @slf 我想录制使用 AudioPlayer 在后台播放的声音,同时我想禁用外部噪音(外部麦克风)。这可能吗??? 我想做相反的事情:当 Apple 提供的耳机(具有内置麦克风)插入 iPhone 时,我想使用设备的内置麦克风(而不是打开的麦克风)耳机),同时通过耳机(不是设备内置的接收器或扬声器)收听音频。关于如何做到这一点的任何想法?它似乎与您的解决方案相似。【参考方案2】:

实际上我认为这是不可能的,因为似乎有某种机械开关,这表明耳机已插入,因此在这种情况下会阻止扬声器输出。 (阅读here)

其他一些提示可以在kAudioSessionProperty_OverrideCategoryDefaultToSpeaker的描述中找到: "指定在没有连接其他音频路由(例如耳机)时是否将音频路由到扬声器(而不是接收器)。

【讨论】:

以上是关于iPhone音频播放:强制通过内部扬声器?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iPhone 扬声器上强制播放音频?

iOS 通过 iPhone 接收器(手机扬声器)播放音频

无法通过扬声器播放视频音频 - iOS

如何在 iPhone 上播放一排数字作为音频?

Unity - 音频文件在 iPhone 和 iPad 上播放不佳

使用哪种技术在 iPhone 上播放音频?