My general problem is that I need to play and control the speed of a video (no sound) inside a Unity3D world and probably need to control the decoding myself and I have absolutely no idea how to do that efficiently. So any hints in the right direction are welcome.
I need to play a video projected on a Material in Unity and I need to control the speed of that video at runtime. As I target mobile devices I cannot use MovieTexture. There are alternatives like e.g. Easy Movie Texture but they do not allow me to control the speed of the video.
I found a problematic solution in this post. In short, the author breaks the video into its frames and then displays it frame by frame. This way I can control the video speed by simply changing the time until displaying the next frame. The video does not have any sound, so it's that easy. The problem is that this is a nightmare from a memory and performace point of view. The app would be GB big and inefficient.
So as far as I know a normal video player solves that by not saving and displaying every frame but just delta between them. If I could do that myself and control it frame by frame I'd solve my problem.
I imagine to decode it at runtime and then display the delta's. But I have no idea how to do that. So please point me in the right direction or maybe even give me a solution if you have.
The video format is not yet fixed, so whatever is easiest.