ChillyWilly posted an entry into the Neoflash Coding Contest:
Heres the details:
Nickname: Chilly Willy
Project name: Simple Music Player
Division: Retro APP
Original enter: YES
In last NEO Compo this project have won in the top 10: NO
Project description: Plays Ogg-Vorbis, MP3, and MIDI files from the rom or from SD card.
How to use: Copy the v64 file to an SD card and load from the menu (v1.6+). It runs as Myth-aware homebrew, simultaneously accessing the rom and SD card. SMP shows the contents of the rom on startup. Press START to switch to the SD card. Directories are shown in brackets. Press A to enter a directory. When in a directory with media files, press A to start playing from a specific file; when it's done, the rest of the files in sequence will be played. Press B to play all the files in random order. While a song is playing, press A to pause/resume, and B to stop.
Notes: There are still some bugs to work out. I was rather rushed for time, so it's not up to my usual standards. Ogg-Vorbis seem fine, but MP3 files may hang on embedded tags... I'm still working on the code to skip tags automatically (why the heck doesn't libmad do that automatically? ). The MIDI player seems to have a dangling pointer problem, so it often hangs when it moves from one MIDI file to the next. The project is partly an example of how to do Myth-aware homebrew on the N64, and comes with all the source, including all the libraries used. One could easily use the ogg playing code in a game or other project. The MP3 player is also fine for game since folks usually strip the tags from MP3s for games to save space. SMP comes with two MP3s in the rom, along with two ogg files, and a bunch of Doom MIDI files. This is a pretty big download - 27 MB 7zipped. It's a 16MB N64 rom with all the code and resources, so it's big. Sorry.