如何在 Swift3 iOS 中以特定时间在 AVPlayer 中播放视频
Posted
技术标签:
【中文标题】如何在 Swift3 iOS 中以特定时间在 AVPlayer 中播放视频【英文标题】:How to Play a video in AVPlayer for a specific duration in Swift3 iOS 【发布时间】:2018-06-12 06:03:29 【问题描述】:我正在Swift3
中创建一个Video
应用程序。我们在TableView
列表中有Video
文件的列表。对于每个Video
,我们提供了Range Slider
选项,供用户选择Range
中的Range
。现在我正在尝试为用户选择的特定范围播放Video
。
我正在使用下面的代码从 4 开始 Video
秒到 8 秒使用CMTimeMake
但播放不正确。
let targetTime:CMTime = CMTimeMake(4, 1)////Video start
self.player?.seek(to: targetTime)
self.player?.currentItem?.forwardPlaybackEndTime = CMTimeMake(8, 1)//Video stop
self.player?.play()
任何人都可以在我做错的地方帮助我。谢谢。
【问题讨论】:
Play a specific part of video的可能重复 【参考方案1】:不妨试试这个:
let item = AVPlayerItem(url: path)
let player = AVPlayer(playerItem: item)
player.seek(to: CMTimeMake(4, 1))
item.forwardPlaybackEndTime = CMTimeMake(8, 1)
self.player.play()
编辑:这看起来与原始代码非常相似,减去了 .currentItem
的使用,我猜这可能是问题所在。
【讨论】:
我知道这是一个细微的差别,但这不使用.currentItem
,我认为这会导致播放器出现问题。我不确定这是否能解决他们的问题,但对我有用。以上是关于如何在 Swift3 iOS 中以特定时间在 AVPlayer 中播放视频的主要内容,如果未能解决你的问题,请参考以下文章
如何在swift3中以其他方法更新UITableviewcell标签?
如何在swift3中以另一种方法访问UITableView单元格