我有ViewController
我添加AVPlayerLayer
以获得视频背景。为此,我使用AVPlayerLayer
并将其添加到视图的图层。如果我在打开ViewController时播放Spotify或其他任何播放音频的内容,则PlayerLayer会暂停播放。
我该如何结束这种行为?
我像这样创建我的图层:
lazy var playerLayer:AVPlayerLayer! = {
var playerLayer:AVPlayerLayer!
if let src = NSBundle.mainBundle().pathForResource("Untitled", ofType: "mp4") {
playerLayer = AVPlayerLayer(player: AVPlayer(URL: NSURL.fileURLWithPath(src)))
playerLayer.frame = self.view.bounds
playerLayer.backgroundColor = nil
playerLayer.opaque = true
playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
playerLayer.player?.muted = true
self.view.layer.insertSublayer(playerLayer, atIndex: 0)
}
return playerLayer
}()
正如您所看到的,Ive尝试将muted
属性设置为true,但它不起作用。
答案 0 :(得分:3)
其他应用'音频正在打断你的。
您需要创建AVAudioSession并将"混合设置为其他人"选项。
try? AVAudioSession.sharedInstance().setActive(true)
try? AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: .MixWithOthers)