[Forest] Come up w/ a strategy re: playing the MOV files
Opened this issue · 1 comments
The MOV files which ship with Secret Paths in the Forest (and perhaps Sea, too, but I don't have the game) come in several different formats. They all seem to be of super old Apple formats, ones that I used to see all the time when I was younger.
For example, here's how FFmpeg interprets GRDN.SHARE.MOV
, Darnetta's intro story:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'GRDN.SHARE.MOV':
Metadata:
creation_time : 1997-07-25T16:22:22.000000Z
Duration: 00:00:33.47, start: 0.000000, bitrate: 514 kb/s
Stream #0:0(eng): Video: smc (smc / 0x20636D73), pal8, 640x480, 159 kb/s, 0.36 fps, 10 tbr, 600 tbn, 600 tbc (default)
Metadata:
creation_time : 1997-07-25T16:22:22.000000Z
handler_name : Apple Video Media Handler
encoder : Graphics
Stream #0:1(eng): Audio: pcm_s16be (twos / 0x736F7774), 22050 Hz, 1 channels, s16, 352 kb/s (default)
Metadata:
creation_time : 1997-07-25T16:22:22.000000Z
handler_name : Apple Sound Media Handler
The goal of this issue is to identify the best way to get these movies playable within Luna Purpura, given the fact they're already decodeable. But that doesn't mean we necessarily want to link Luna Purpura against libavformat and libavcodec.
- Do we go ahead and make libavformat/libavcodec straight up dependencies of Luna Purpura? This reduces the work we need to do, but I'm not sure if that's an agreeable or portable way of doing it.
- Do we go through the trouble to understand the file formats and come up with our own decoder? This will basically let us play these movies inside of a LOVE game, and/or any other platform we decide to introduce Luna Purpura to.
Tl;DR it's time to make a Big Decision™.
For what it's worth, libavformat/libavcodec can be configured to be fairly small. Configure away as much functionality as possible, except for what's needed in order to demux a QuickTime container and play these specific A/V formats. I'll need to go actually go through that exercise in order to determine how much complexity/bloat/etc. Luna Purpura would have to deal with, were we to finalize on a decision to use FFmpeg