#118539 - zohar - Wed Feb 14, 2007 4:07 am
Is there a way to play background music (not sound effects) with devkit? Or would you basically set it up the same way--convert the BGM file to raw and then use playSound(..)?
The problem is, I want to be able to stop the BGM whenever I want to, else loop continuously. playSound(..) will just simply play the audio file and then stop once it's finished. Has anyone written any libraries for more "advanced" sound functionality?
Any help appreciated, thanks.
#118544 - tepples - Wed Feb 14, 2007 4:44 am
Do you want a streaming recording, or do you want (likely smaller) MIDI/MOD/S3M/XM? Commercial games for Super NES and most commercial games for N64 and Nintendo DS use something more like the latter.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#118545 - zohar - Wed Feb 14, 2007 4:51 am
Originally, I was just thinking about using MP3/WAV files. Now that I think about it, it would be an obscenely large file... oops.
But yes, a MIDI BGM would be ideal then. Are there available processes that handle this?
Speaking of MIDIs, how do commercial games process them? Do the DS and other systems have built-in MIDI synthesizers? O_o
#118547 - tepples - Wed Feb 14, 2007 5:05 am
The playback software licensed from Nintendo and included into every DS Game Card that uses MIDI music implements a MIDI file parser and a MIDI synthesizer and contains a sound font.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#118551 - zohar - Wed Feb 14, 2007 5:15 am
Ah, that's what I thought.
Are there *any* ways of playing BGM with what's available in the open-source community?
#118552 - tepples - Wed Feb 14, 2007 5:19 am
There are some .s3m and .xm player engines, but I don't recall their names. Both DSOrganize and MoonShell have such players. NitroTracker, a .xm editor, obviously must contain some sort of .xm player.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#118641 - 0xtob - Thu Feb 15, 2007 1:45 am
Quote: |
NitroTracker, a .xm editor, obviously must contain some sort of .xm player. |
... which is going to be released as a library once I'm happy with it (i.e. not soon). If you badly want it: LemmingsDS uses an early version of it and is open source.
_________________
http://blog.dev-scene.com/0xtob | http://nitrotracker.tobw.net | http://dsmi.tobw.net
#118670 - Dark Knight ez - Thu Feb 15, 2007 11:32 am
Quote: |
There are some .s3m and .xm player engines, but I don't recall their names. |
Probably libmikmod. I use it in AmplituDS as well, only modified to my needs. It can also play .it music files.
Creators of tetattds packaged up their version nicely for use: http://blog.dev-scene.com/flatware/libmikmod/
_________________
AmplituDS website
#118681 - PypeBros - Thu Feb 15, 2007 2:10 pm
true. If you hunt for the sources of TetAttDS, it also features the DS version of libmikmod. It gives you the opportunity of playing not only BG music but also sound effects, though i'm unsure about its CPU consumption (afaik, the module -- BGM -- is rendered through only two hardware channels, and you have the other channels free for sound effects).
It also means that you'll have a whole community capable of writing songs for your game and a huge library of half-free modules to use during the testing process...
_________________
SEDS: Sprite Edition on DS :: modplayer
#118713 - zohar - Fri Feb 16, 2007 12:35 am
Very promising. I'm going to look into libmikmod and see where that leads me.
Thanks to everyone who replied to this thread!