📅  最后修改于: 2023-12-03 15:38:26.939000             🧑  作者: Mango
在 Swift 中,我们可以使用 AVFoundation 框架来播放视频。
首先需要导入 AVFoundation 框架:
import AVFoundation
然后需要创建一个 AVPlayer 对象和一个 AVPlayerLayer 对象:
let player = AVPlayer()
let playerLayer = AVPlayerLayer(player: player)
首先需要获取本地视频文件的地址。如果视频文件是在项目中的话,可以使用以下代码获取文件路径:
guard let path = Bundle.main.path(forResource: "video_name", ofType: "mp4") else { return }
然后需要创建一个 AVPlayerItem 对象来表示视频文件:
let url = URL(fileURLWithPath: path)
let playerItem = AVPlayerItem(url: url)
最后将创建的 AVPlayerItem 对象赋给 player 的 playerItem 属性:
player.replaceCurrentItem(with: playerItem)
最后,将 playerLayer 添加到需要播放视频的视图上,并播放视频:
playerLayer.frame = view.bounds
view.layer.addSublayer(playerLayer)
player.play()
首先需要创建一个 AVPlayerItem 对象来表示网络视频:
let url = URL(string: "https://example.com/video_name.mp4")!
let playerItem = AVPlayerItem(url: url)
最后将创建的 AVPlayerItem 对象赋给 player 的 playerItem 属性:
player.replaceCurrentItem(with: playerItem)
最后,将 playerLayer 添加到需要播放视频的视图上,并播放视频:
playerLayer.frame = view.bounds
view.layer.addSublayer(playerLayer)
player.play()
player.pause()
player.seek(to: CMTime.zero)
player.pause()
以上就是在 Swift 中播放视频的方法。我们先创建一个 AVPlayer 对象和一个 AVPlayerLayer 对象,然后根据需要播放的视频文件类型创建 AVPlayerItem 对象,将创建的 AVPlayerItem 对象赋给 player 的 playerItem 属性,最后将 playerLayer 添加到需要播放视频的视图上,并播放视频。如果需要暂停或停止视频,我们可以使用 player 的 pause() 和 seek(to: CMTime.zero) 方法。