I've done an update to the Full Color version fork of pyprocgame that MOcean and I have been working on for the last few months. This enhancement is not yet in MOcean's GIT repository as we are "debating" the method.
The method I have written relies on openCV to handle the pulling of the images out of the mp4 file and then creating the dmdAnimation. At that point this behaves like any other DMD animation you may be using. The big advantage to this is that the file sizes are significantly smaller. Based on some testing, the time it takes to load/process the mp4 is the same as using a dmd or dmd.zip file (zip files are supported in the HD fork). As a reminder, the hdDMD version of pyprocgame uses pygame surfaces vs bitmaps for the dmd frames. So even a DMD file at load time gets loaded and processed into a set of surfaces.
The difference in file sizes of a 300 frame test file . . .
.mp4 1.4 MB
Obviously the other big benefit is not having to do the extra conversion when working on your animations before testing them out.
MOcean is concerned about needing an additional library (openCV), so for anyone who is using this fork, do you feel that is a concern/roadblock if you wanted to use mp4 conversion?
There is a possible alternative we (well Michael), may look at using FFMPEG or something similar.
Keep in mind this speed testing was done using an SSD, so it is possible that the the mp4 performance would improve on a slower drive, but my guess is until the files got really big it would still be negligible. I have also not looked at any optimization of the code, however, there is really not much code to optimize, since it is only about 12 lines.