You could also run optical flow, e.g. Lucas-Kanade flow [1] on the past pair of frames to predict how things will move in the next.
[1] https://en.wikipedia.org/wiki/Lucas%E2%80%93Kanade_method
[1] https://en.wikipedia.org/wiki/Lucas%E2%80%93Kanade_method
The encoding algorithms are not written in stone, so to speak. If you can optimize motion estimation encoding using Lucas-Kanade, you can just write that into, say, the x264 encoder and so long as the output is complaint you can expect all existing decoders to play back just fine.
Decoding of course may not be so flexible for compatibility reasons, and of course software is much more malleable than hardware.
Are there video codecs which are (accidentally) Turing-complete?