Mod Archive Forums

Music Production => Players => Mobile Phone Players => Topic started by: JarkkoL on December 05, 2019, 05:13:32

Title: Arduino MOD/S3M/IT/XM Player
Post by: JarkkoL on December 05, 2019, 05:13:32
Hi!

I have worked on an open source music player for Arduino (https://www.arduino.cc) supporting MOD/S3M/IT/XM formats that's designed to run within pretty limited resources. For example Arduino UNO (https://store.arduino.cc/usa/arduino-uno-rev3) is running at 16MHz and has only 32KB of flash memory (used for programs) and only 2KB of RAM, and has no DAC so you have to build R2R ladder Covox style, so chip tunes are perfect for this little MCU :D The player scales to more complex mods though if the MCU has more memory, processing power, stereo DAC, etc.

MOD/S3M/IT/XM files are first converted to custom format and embedded to the MCU player program. The conversion compresses the mod file to better fit in MCU flash and organizes it so that it can be played back in-place without any further processing.

There are quite a few effects supported (on both volume and effects tracks), envelopes, multi-sample instruments, etc. but it's not perfect by any means and there are still various playback errors that I need to iron out. Currently the player also supports only 8-bit mono samples.

So if you are interested playing mods on Arduino (for demos for example), this GitHub project might interest you: https://github.com/JarkkoPFC/arduino-music-player

Video showing the player on Teensy 4.0 (https://www.pjrc.com/store/teensy40.html) + Audio Shield (https://www.pjrc.com/store/teensy3_audio.html) w/ simple ILI9341 TFT (https://www.pjrc.com/store/display_ili9341_touch.html) visualization:
(http://i3.ytimg.com/vi/xZ7lZayUQXU/hqdefault.jpg) (https://www.youtube.com/watch?v=xZ7lZayUQXU)

There are also other videos in my Youtube channel (https://www.youtube.com/channel/UCjoSpLb__9D2FwhNvwiYe0w) showing the player on different MCU's.

Cheers, Jarkko
Title: Re: Arduino MOD/S3M/IT/XM Player
Post by: Saga Musix on December 05, 2019, 20:05:14
Cool stuff!