未分類

AVPlayer()で動画を使う方法

投稿日:

AVPlayer()で動画を扱える。

1.AVFoundationをインポートする。

import AVFoundation

2.コードを書く

//インスタンス生成
var player = AVPlayer() 

override func viewDidLoad() {
        super.viewDidLoad()
        
        //動画ファイルを指定
        let path = Bundle.main.path(forResource: "ファイル名", ofType: "拡張子")
        player = AVPlayer(url: URL(fileURLWithPath: path!))
        
        //AVPlayer用のレイヤー(layer)を生成
        let playerLayer = AVPlayerLayer(player: player)
        playerLayer.frame = CGRect(x: 0, y: 0, width: view.frame.size.width, height: view.frame.size.height)
        
        //動画の表示設定
        playerLayer.videoGravity = .resizeAspectFill
        playerLayer.repeatCount = 0  //ループする
        playerLayer.zPosition = -1  //一番奥に配置
        view.layer.insertSublayer(playerLayer, at: 0)
        
        //ループさせる時に必要な処理
        NotificationCenter.default.addObserver(forName: .AVPlayerItemDidPlayToEndTime, object: player.currentItem, queue: .main) { (_) in
            self.player.seek(to: .zero)
            self.player.play()
        }
        self.player.play()
    }

-未分類

執筆者:

関連記事

no image

テキストアニメ、モーションのフリーテンプレート使い方

【商用利用OK】Premiere Proのテキストアニメーション・テンプレート100種類 .mogrtのフォントがpremiere proで変更できない時の対処法

no image

AutoLayoutで均等な横並びにする

AutoLayoutで均等に並べるための基本が分かりやすく載っている↓ 参考:Xcode|StoryboardのAutoLayoutを使用してラベルやボタンを均等に配置する

no image

プロトコルの仕様書を見るコツ

プロトコルのデリゲートメソッドを確認したい。 プロトコル名をcommand+クリックJump to Definitionで設計図が見られる。 protocol UITableViewDelegateの …

no image

動画の速度を遅くしてクリップを引き伸ばす方法

commnd + R スロー・早送りで速度を変更できる。 参考: Premiere Pro 再生速度を変更(早回し・スローモーション動画)する手っ取り早い方法

no image

UIViewの下のタッチイベントを使えるようにする方法

UIViewをのせると、その下にあるボタンやcollectionViewのタッチイベントを感知しなくなる。 UIViewのタッチイベントを透過することで、下のボタンなどが使えるようになる。 Story …