Friday, 12 September 2014

Arduino Uno Playing 12Chl S3M @ 37KHz


This is Video about 'Arduino Uno Playing 12Chl S3M @ 37KHz'


Arduino Uno Playing 12Chl S3M @ 37KHz
Video Youtube
Arduino Uno Playing 12Chl S3M @ 37KHz, The next iteration of my music player on Arduino Uno!

The mixer and interrupt routines are now optimized by hand written assembly code and mixing is done one channel at the time to reduce register pressure, so I was able to increase the playback frequency and number of audio channels from the previous iteration. If I counted the cycles right, the mixer inner loop is now 28 cycles/sample/channel on ATmega328. Writing the routines in asm was a good crash course to AVR assembly language and GCC inline asm (:

I also added support for S3M files to have music files with more audio channels because MOD files usually have only 4 channels. The music in the video is aryx.s3m (from '95 by Karsten Koch) that has 12 channels and was small enough to fit into 32KB of flash in Uno when compressed. The player also supports most audio effects to play wider range of MOD/S3M files correctly.

The source code is available here: http://code.google.com/p/arduino-music-player
Arduino Uno Playing 12Chl S3M @ 37KHz
Arduino Uno Playing 12Chl S3M @ 37KHz
Thank's for reading about 'Arduino Uno Playing 12Chl S3M @ 37KHz'.

No comments:

Post a Comment