Wouldn’t creating in-memory key frames for every nth frame resolve substantial computations on a frame-by-frame basis?
I wonder if caching semi-compressed frames would be more efficient in either case (CPU or GPU)
Edit: this doesn’t have to happen synchronously either, it can occur in a background thread or passively.