Swift AVPlayer转耳机

时间:2015-01-23 12:12:34

标签: swift avplayer

我有一个很棒的简单音频播放器。我正在播放远程URL MP3。我的代码:

@IBAction func playAudio(sender: AnyObject) {
        let url = self.productAudio
        let playerItem = AVPlayerItem( URL:NSURL( string:url ) )
        player = AVPlayer(playerItem:playerItem)
        player.
        player.rate = 1.0;
        player.play()
}

但音频是由扬声器输出的。如何通过耳机播放音频?

2 个答案:

答案 0 :(得分:3)

最后我找到了答案......

我必须修改我的音频会话,并覆盖端口。这是播放器代码之前的代码:

    let session = AVAudioSession.sharedInstance()
    var error: NSError?

    session.setCategory(AVAudioSessionCategoryPlayAndRecord, error: &error)
    session.overrideOutputAudioPort(AVAudioSessionPortOverride.None, error: &error)
    session.setActive(true, error: &error)

答案 1 :(得分:0)

Swift 5.0

let session = AVAudioSession.sharedInstance()

        do{
            try session.setCategory(.playAndRecord)
            try session.overrideOutputAudioPort(AVAudioSession.PortOverride.none)
            try session.setActive(true)
        } catch {
            print ("\(#file) - \(#function) error: \(error.localizedDescription)")
        }