如何解决如何在Swift中使用播放控件制作循环播放的无缝视频?
我有以下代码使我的(10秒)视频无缝循环。它可以工作,但是我使用AVQueuePlayer,但似乎无法集成暂停/播放按钮等。使用普通的AVPlayer,它会显示其标准的暂停/播放按钮。我想将这些功能集成到我的代码中。有人可以帮我吗?
Import Foundation
Import AVKit
Import AVFoundation
Class VideoController: UIViewController {
private var player: AVQueuePlayer!
private var playerLayer: AVPlayerLayer!
private var playerItem: AVPlayerItem!
private var playerLooper: AVPlayerLooper!
override func viewDidLoad(){
super.viewDidLoad()
let path = Bundle.main.path(forResource: "flickering",ofType: "mp4")
let pathURL = URL(fileURLWithPath: path!)
let duration = Int64( ( (Float64(CMTimeGetSeconds(AVAsset(url: pathURL).duration)) * 10.0) - 1) / 10.0 )
player = AVQueuePlayer()
playerLayer = AVPlayerLayer(player: player)
playerItem = AVPlayerItem(url: pathURL)
playerLooper = AVPlayerLooper(player: player as! AVQueuePlayer,templateItem: playerItem,timeRange: CMTimeRange(start: CMTime.zero,end: CMTimeMake(value: duration,timescale: 1)) )
playerLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill
playerLayer.frame = view.layer.bounds
view.layer.insertSublayer(playerLayer,at: 1)
player.play()
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。