У меня есть URL-адрес видео, которое я должен показать в виде таблицы. когда я нажму на любую ячейку, она перейдет в подробный вид, где видео будет воспроизводиться с использованием AVPayer. как только видео закончится, будет воспроизведено следующее видео. когда я запускаю код, это видео воспроизводится один за другим. Я получаю только звук и видео в качестве неподвижного изображения. когда воспроизводится видео nex, только изображение меняется на другое изображение. на экране нет видео.
Как показать все воспроизводимое видео на экране?
class DetailView: UIViewController {
@IBOutlet weak var videoView: UIView!
var playerLayer: AVPlayerLayer!
var videoObject = [VideoData]()
private let vplayer = AVQueuePlayer()
override func viewDidLoad() {
super.viewDidLoad()
videoPlayerView.player = vplayer
addAllVideosToPlayer()
}
private func addAllVideosToPlayer() {
for video in videoObject {
guard let urlString = try? URL(string: video.url) else{return}
print(video.url)
let asset = AVURLAsset(url: urlString)
let item = AVPlayerItem(asset: asset)
vplayer.insert(item, after: vplayer.items().last)
playerLayer = AVPlayerLayer(player: vplayer)
videoView.layer.addSublayer(playerLayer)
}
}
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
playerLayer.frame = videoView.bounds
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
vplayer.play()
}
}