Loop video using Optical Flow and Metal on iOS
The app loops video to make an effect like it is endless, it uses optical flow algorithm to detect the difference between the cut-frames to make a seamless fade transition. For example, it can be used to create smooth looped TikTok videos or NFTs. This is an experiment and my first completely SwiftUI app, it's made for fun but the result is preaty cool.
- Select video from gallery (it will work the best with short videos ~10 seconds, preferably if its background is more or less scatic).
- Using sliders find two most similar frames from two equally divided parts of the video.
- Tap the process button to see the result.
Onboarding screen | Main screen | Processing Video screen | Settings screen |
---|---|---|---|
Thank to https://github.com/luluxxxxx/video-loops for the idea to use optical flow.