Swift:如何设置与其他人优雅混合的音频会话(又名 Pod)

Posted

技术标签:

【中文标题】Swift:如何设置与其他人优雅混合的音频会话(又名 Pod)【英文标题】:Swift: how to set up an audio session that gracefully mixes with others (aka Pod) 【发布时间】:2014-10-30 14:15:43 【问题描述】:

这段代码 sn-p 使其他音频(又名 iPod)停止:

func setSessionPlayer() 

    var audiosessionError: NSError?
    let audioSession = AVAudioSession.sharedInstance()

    audioSession.setActive(true, error: nil)

    if audioSession.setCategory(AVAudioSessionCategoryPlayback, withOptions:AVAudioSessionCategoryOptions.MixWithOthers,
        error: &audioSessionError) 
            println("Successfully set the audio session")
     else 
        println("Could not set the audio session")
    


我错过了什么?

【问题讨论】:

【参考方案1】:

我认为这是因为您在将 audioSession.active 配置为 MixWithOthers 之前对其进行了设置。将audioSession.setActive 移动到 if 块下方,如下所示:

if audioSession.setCategory(AVAudioSessionCategoryPlayback, withOptions:AVAudioSessionCategoryOptions.MixWithOthers,
    error: &audioSessionError) 
        println("Successfully set the audio session")
 else 
    println("Could not set the audio session")


audioSession.setActive(true, error: nil)

【讨论】:

以上是关于Swift:如何设置与其他人优雅混合的音频会话(又名 Pod)的主要内容,如果未能解决你的问题,请参考以下文章

如何取消 AVAudioSession

iPhone 上的音频混合:需要建议

如何将我的音频会话默认行为设置为快速播放?

在 ios 上混合音频

Swift实现iOS录音与播放音频功能

iPhone 音频会话属性