Here’s something worth reminding of, something I’m not going to tackle myself and it’s not likely somebody else will pick up. I’m talking about an intermediate form between static videos and interactive games, which I called (semi) interactive movies.
The best-known representative of those is Flash. Some of you old enough may remember it as a source of annoyance in form of extremely animated ad banners, some of you not so old may remember Flash games, younger people may remember it as an annoying web player that every video hosting required until they all got rid of it (reportedly by a whim of one man). But there was a time when Flash was used for its original purpose: creating animations (often bundled with a stand-alone player) or slightly interactive animations (like a blender with several buttons you can press and depending on it a different animation will play; it was gory and disgusting, it’s better to watch something nice and cute like Happy Tree Friends instead).
Of course Flash is reasonably well supported by open-source software to the point you can even run it in the browser without installing a plug-in. But there were more and not all from the same company.
Macintosh had MacroMind Director which allowed to create interactive applications a la HyperCard. Later it was ported to Windows as well and was used to create more or less portable games or activity centres and such. Eventually it was bought up with its sibling projects and compressed into shitbrickmud-brick, but meanwhile it managed to spawn several variations. There were “Gaffed Director movies” (usually bundled with stand-alone player), there were RIFF Multimedia Movies (in .mmm files), I’m pretty sure there more flavours of it too. Rather recently ScummVM started to support some games made with Director (which is not that easy task considering different engine revisions and that it often relied on platform-specific plug-ins for extended functions like playing videos or CD audio—up to decrypting data). So if you want to have support for the formats I mentioned the best course would be probably to write a new player based on their code-base (because it’s probably the best foundation to start from and ScummVM is for playing games, not this kind of content).
Another similar system I’m aware of is Brilliant Digital Entertainment’s Multipath Movies. I haven’t played any of them but from the description it sounds a lot like those DVD menu-based games. The engine seems to be under one megabyte and its data is self-contained (one large .bhf for the content plus auxiliary .map and .nav files—a striking difference from Director with its .cxt and .dxr files referencing each other and all other external resources).
There are so many old neglected formats that deserve to be preserved for the posterity, here I hope to remind people at least of some.
P.S. Why wouldn’t I implement it? Exactly because it’s not the kind of multimedia I work with. Mostly I write a decoder and I can do whatever I want with the decoded output. Here one has more to mind inner engine workings: interpreting engine script, synchronising output composed mostly of sprites, mind potential user input and such. And hardly any work on figuring how how video is compressed. So if you want to be the next open-source software hero—well, here’s a good challenge for you.