I recently bought a JVC GZ-MG255U camcorder with an internal hard drive. It’s almost everything I’d hoped it would be. The size, weight, features, video quality, etc. are all satisfactory. The macro capability is fantastic, and makes me yearn for insect-infested summertime.
It comes with bundled software, which I’m sure provides some sort of Nerf interface to the video files… but I’m not really interested in being locked in to bundled software that only runs on Windows. I haven’t even installed it (although it’s possible I will, so I can see how it manages the files).
So far I haven’t found documentation on the directory structures and file formats, but here’s what I’ve figured out:
For a given “program” (a collection of video files), there are three file types; MOD, MOI, and PGI.
MOD and MOI (MOvie Data and MOvie Information?) files come in sequentially named pairs (MOVxxx.MOD and MOVxxx.MOI, where xxx is a three digit hexadecimal number starting with 001). Each pair apparently corresponds to a single video segment (the time between starting recording, and stopping). I haven’t tested whether a sufficiently large segment will span MOD/MOI pairs.
MOD files contain MPEG2 video with AC3 audio. DVDs use MPEG2, and AC3 is among the supported formats for DVDs, so MOD files are extremely DVD-ready. (Unfortunately AC3 is heavily encumbered by strongly enforced patents, which creates some problems for me.) From my limited testing (I’ve tried mencoder, mplayer, Media Player Classic, and Windows Media Player), any program that can read MPEG2 files can read the MOD files, although less clever programs (like Windows Media Player) actually require that the file be renamed from MOD to MPG.
MOI files are a tiny fraction of the size of their MOD counterparts, but there does seem to be a loose correlation in relative size. MOI files do not contain essential video or audio information, but they may contain interesting and valuable movie metadata. In searching the web, I’ve found at least one claim that MOI files contain “timestamp” information.
Each “program” has a single PGI (ProGram Information?) file.
I have spent almost no time digging through the PGI and MOI files so far, but I’m preserving the files for now because they’re small and might contain information I can use.