swift - AVPlayer 视频间平滑过渡

标签 swift avplayer

我有一个视频播放器,它播放从 json 文件解析的视频 url。一切正常,除了视频之间没有平滑过渡。我将背景设为黑色(如其中一个堆栈答案中所建议的那样),但仍然不喜欢中间的短暂闪光。

有没有办法通过快速淡入/淡出来解决这个问题?我试图实现 AVQueuePlayer,但我不明白如何在我的代码中实现它,也不明白它是如何工作的。

如果有人知道平滑过渡的解决方案,那将是很好的。在堆栈上提出的相同问题要么从未得到回答,要么包含真正古老的答案/解决方案。

编辑: 我的视频正在通过 AVPlayerViewController 播放。视频 URL 用于 mp4 视频。

最佳答案

您可以淡出播放器 View 、更改视频,然后淡入播放器 View 。

UIView.animate(withDuration: 0.1, animations: {
    self.playerView.alpha = 0
}, completion: { _ in
    self.playerView.loadUrl...// Update video

    UIView.animate(withDuration: 0.1) {
        self.playerView.alpha = 1
    }
})

关于swift - AVPlayer 视频间平滑过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51988286/

相关文章:

ios - 如何在具有多个子选择的 ReSwift 中定义 `newState`?

swift - 在 Swift 中将 DMS 坐标从 String 解析和转换为 Double 的更好方法

ios - 如何设置具有间隔/延迟的循环?

iphone - 同时使用 AVPlayer 播放视频并使用 AVAudioRecorder 录制声音

ios - 使用 playlist.m3u8 从 Wowza 流式传输到 iOS 应用程序

ios - 滚动浏览 tableView 后,视频在 AVPlayerController 的 UITableView 单元格中停止加载

arrays - 为什么我不能在 SwiftUI 中附加到 View 内的状态数组?

c - Swift/C 互操作,Swift 中的结构数据更改未在 C 中更新

ios - crash - 重击 @escaping @callee_guaranteed (@unowned CMTime)

ios - 将 kvc 观察器添加到动态可重用单元