Как мне определить, когда пользователь включает видео в swift при использовании AVPlayer

#swift #avplayer #avplayerviewcontroller

#swift #avplayer #avplayerviewcontroller

Вопрос:

Я пытаюсь определить, нажимает ли пользователь на кнопку включения во время просмотра видео. Я знаю о player.isMuted, но я не уверен, как проверить, есть ли изменение, если значение. Я использую AVPlayerVideoViewController и хочу переопределить функциональность кнопки включения. Это кнопка, которую я хочу определить, нажата она или нет

Ответ №1:

Я создал образец ViewController, вы можете isMuted легко наблюдать за изменениями:

 import AVKit

class ViewController: AVPlayerViewController {
    var muteObservation: NSKeyValueObservation?
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        guard let videoPath = Bundle.main.path(forResource: "video", ofType: "mov") else {
            return
        }

        let videoURL = URL(fileURLWithPath: videoPath)
        player = AVPlayer(url: videoURL)
        player?.play()
        
        muteObservation = player?.observe(.isMuted) { player, _ in
            print("isMuted: (player.isMuted)")
        }
    }
}
  

Комментарии:

1. @Sash Это ответ на ваш вопрос?