カスタムの画像/ビデオ ピッカーを使用してタイム ラプスを選択しています。ピッカー ビューを閉じたら、インターフェイス ビルダーでビュー コントローラーに配置した UIView 内でタイム ラプスを再生したいと考えています。私が現在持っているこのコードは以下にありますが、問題はタイムラプスが選択された瞬間に再生されないことです。
ビデオ プレーヤーのアウトレットと変数を表示する
@IBOutlet var videoView: UIView!
let ipc = QBImagePickerController()
var playerItem: AVPlayerItem?
var videoPlayer: AVPlayer?
var playerLayer: AVPlayerLayer?
資産コードの選択は完了しましたか
func qb_imagePickerController(imagePickerController: QBImagePickerController, didFinishPickingAssets assets: [AnyObject]) {
for asset in assets as! [PHAsset] {
PHImageManager.defaultManager().requestAVAssetForVideo(asset, options: nil, resultHandler: {(avAsset: AVAsset?, audioMix: AVAudioMix?, info: [NSObject : AnyObject]?) -> Void in
self.playerItem = AVPlayerItem(asset: avAsset!)
self.videoPlayer = AVPlayer(playerItem: self.playerItem!)
self.playerLayer = AVPlayerLayer(player: self.videoPlayer)
self.playerLayer!.frame = self.videoView.bounds
})
}
self.dismissViewControllerAnimated(true, completion: { self.play() })
}
play() 関数コード
func play(){
videoPlayer!.play()
}