Ajouter le fichier Mp4 au projet, dans un dossier Média par exemple.
Bien vérifier que la case "Add to targets" soit cochée :
Importer "AVKit", créer une propriété de type "AVPlayer" , et un cadre pour la vidéo en propriété de type "AVPlayerLayer"
import UIKit
import AVKit
class ViewController: UIViewController {
var videoPlayer: AVPlayer?
var videoPlayerLayer: AVPlayerLayer?
Créer une méthode pour gérer la vidéo, le lecteur et le cadre :
func setupVideo() {
// obtenir le chemin d'accès à la resource vidéo (avec le nom du fichier viéo : ici "BoatsSailing")
let bundlePath = Bundle.main.path(forResource: "BoatsSailing", ofType: "mp4")
guard bundlePath != nil else { return }
//créer une url à partir du chemin
let url = URL(fileURLWithPath: bundlePath!)
//créer video player item
let item = AVPlayerItem(url: url)
//créer le lecteur
videoPlayer = AVPlayer(playerItem: item)
//créer le cadre
videoPlayerLayer = AVPlayerLayer(player: videoPlayer)
//ajuster taille
//pour cadre au centre de l'écran
videoPlayerLayer?.frame = CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.view.frame.size.height)
//pour video sur tout l'écran : très grand cadre, sur l'écran on voit le centre
//videoPlayerLayer?.frame = CGRect(x: -self.view.frame.size.width*1.5, y: 0, width: self.view.frame.size.width*4, height: self.view.frame.size.height)
//ajouter à la vue et lancer
view.layer.insertSublayer(videoPlayerLayer!, at: 0)
videoPlayer?.playImmediately(atRate: 0.3) //atRate détermine la vitesse de lecture
}
Appeler cette méthode dans l'override de "viewWillAppear()" ou viewDidLoad()
override func viewWillAppear(_ animated: Bool) {
setupVideo()
}