I know that people like Jeff Frohwein did a C implementation of a JPEG decoder for the GBA but has anyone optimized it in ARM? I think VCD would be possible on GBA (it's certainly possible on the DS) but I wonder if MPEG4 is possible for the DS. Memory-sticks are getting cheap and I'm thinking of building a cart that allows the DS to play footage from the stick. I mean, the iPOD has an ARM9 in it (although running faster) and I bet that they didn't optimize the code. MPEG4 video could be done on the ARM9 and the audio on the ARM7 for example....
If I remember right, the Actimagine video playback libs used by Nintendo for Metroid First Hunt on the DS was MPEG4, and both processors were used. I'd say for sure that mpeg1 video would possible with tight, well written code.
I've been working with a guy lately, called Tony Savon, who developed the Caimans codec for GBA and Nintendo DS. It is based on the MPEG-4 codec, and he's optimised it specifically for the ARM. Here's some links. http://www.caimans.net/gbavideo/ http://www.ds-video.com/ Gets great quality video and sound, and in my opinion is way better than the ActImagine VX codec that Nintendo has been offering. Also worth noting is that Nintendo are soon deprecating the VX libs, in favour of the MobiClip codec, which is supposed to improve video and audio quality significantly. Also, if you're more into GPL code, look for Tuna-viDS, an xvid player for the DS by chishm. http://chishm.drunkencoders.com/tuna-vids/index.html cheers.