我在我的应用程序中创建了一个擦洗器,允许用户通过 [AVPlayer seekToTime:toleranceBefore:toleranceAfter] 在视频中向前/向后擦洗。
正在清理的视频是通过使用 AVCaptureMovieFileOutput 的 AVCaptureSession 捕获的。我已经对生成的 .MOV 进行了 ffprobed 并且结果符合预期(例如,在我的 iPhone 5s 上,我以大约 23000 kb/s 的速度以 120fps 的速度录制,每秒大约 1 个关键帧)。
由于每秒只有大约 1 个关键帧,因此很难以任何精度且没有任何滞后的情况下向后滑动视频(因为它必须返回到最近的关键帧并在我当前的擦除位置计算帧)。
所以我想知道是否有更好的平滑擦洗策略?有一些应用程序可以很好地做到这一点(例如,我检查了 Coach's Eye 应用程序,它录制视频的方式与我完全相同,但它的擦洗性能非常好)。
我会非常感谢任何建议。