#140831 - Div03 - Thu Sep 20, 2007 2:37 am
I've been searching all over for good references for composing music for the DS, but to no avail. Maybe I'm looking in the wrong places? Well, either way. Maybe one of you experienced ones can help me out.
I'm a musician and use other synthesizers and sequencers, but nothing I have can save to the infamous .MOD format which is what most homebrew devkits can use to my understanding. But from there on, it gets cloudy. I know you compose these using samples and trackers, and I have tried ModPlug Tracker. Problem is, alot of the songs we'd export out of there just to test on No$gba wouldn't play. We downloaded some pre-made .mod music and it worked fine. We even tried loading up the pre-made music in ModPlug and re-saving it and trying that -- it wouldn't work. We also tried taking some samples from the free music and trying it in our own songs, and it wouldn't work. Yet, the original samples and song work fine without passing through ModPlug. So that leaves me with the conclusion that we aren't saving it right, or ModPlug just doesn't work. Is ModPlug all we can use? What are we doing wrong here...?
So you can see the position we're in. Mainly, before we move on to the beginning stages of pre-production, we need to make sure we can do everything we need to, and we are very passionate about having our own soundtracks.
Any information would be helpful =)
#140832 - tepples - Thu Sep 20, 2007 2:45 am
Yes, .mod is limiting, but DS-based players for .s3m and .xm exist.
Are you talking about homebrew or commercial development?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#140833 - sonny_jim - Thu Sep 20, 2007 2:45 am
I used to <3 FT2, I might actually get back into it. If anyone needs any soundtrack music I could probably chuck some out.
#140835 - Div03 - Thu Sep 20, 2007 2:49 am
Homebrew. If we were going commercial, we would need an official Nintendo devkit, which is not so easy to get, though a friend of mine recently got an official PS3 devkit but he had something to show. This is mainly something for our portfolios, and we've always wanted to make a DS game.
I could have sworn I read that the DS couldn't handle .xm files, but if you say so I won't argue. Do you know where I can find those players?
I did take a look at FT2, but noticed it saved in .xm iirc and wrote it off because the palib devkit states to only use .mod, or thats what I was told.
#140862 - kusma - Thu Sep 20, 2007 9:34 am
Div03 wrote: |
I could have sworn I read that the DS couldn't handle .xm files, but if you say so I won't argue. |
There's only two issues with XM and DS that I'm aware of: the DS sound hardware can't mix more than 8 channels, and none of the hardware-channels supports ping-pong looping. Both of these issues can be overcome by doing software-mixing, which leaves 6 hardware channels for sound-effects.
#140881 - tepples - Thu Sep 20, 2007 11:42 am
kusma wrote: |
There's only two issues with XM and DS that I'm aware of: the DS sound hardware can't mix more than 8 channels |
O RLY? I thought I read in GBATEK :: DS Sound that the DS sound hardware supports 16 simultaneous PCM channels.
Quote: |
and none of the hardware-channels supports ping-pong looping. Both of these issues can be overcome by doing software-mixing |
Which libmodplug appears to do, at least in DSOrganize and MoonShell.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#140891 - Sunray - Thu Sep 20, 2007 12:15 pm
I use XM music in my game, supporting all envelopes effects and commands except for glissando (no modules use it anyway). Ping-pong loops works just fine, just append a reversed copy of the sample data. But there are a few other limitations with the hardware channels. Max 16 channels, sample offset doesn't work correctly, some alignment issues that may skip a sample in loop points/sample offsets.
#140898 - kusma - Thu Sep 20, 2007 2:45 pm
tepples wrote: |
O RLY? I thought I read in GBATEK :: DS Sound that the DS sound hardware supports 16 simultaneous PCM channels.
|
Uhm, my bad. 16 it is, indeed. XM still supports up to 32 channels.
#140900 - kusma - Thu Sep 20, 2007 2:48 pm
Sunray wrote: |
just append a reversed copy of the sample data |
Yeah, this is a nice trick indeed, but it's tricky to get right with sample offset. Still worth doing, though.
#140908 - ThomasS - Thu Sep 20, 2007 4:05 pm
You could also use mp3s instead of mods. It's fast enough if you play them on the arm7, and I've made an example which shows how to do that.
I've also written step-by-step instructions on how to use this with PALib.
_________________
<dsFont> <Game Collection>
#140909 - melw - Thu Sep 20, 2007 4:12 pm
XM is your choice if you want to use modules/tracked music. It's still from the mid-90's but a valid format what comes to making music for handhelds. At least Mikmod and Oxtob's libntxm can play the XM format on DS. MP3 is definitely more modern alternative, although tracked music can have its advantages (making tens of minutes of music with very small memory/space usage).
#140933 - Div03 - Thu Sep 20, 2007 8:34 pm
Yeah ThomasS, I found that thread last night actually and called my partner up and told him about it. We still have a few concerns about using Mp3s aside from space, like the memory issue. But if you say its fast enough if you play them on the ARM 7, then perhaps our question has been answered. Using the Mp3 format would be much easier for us since we wouldn't have to learn tracking software, but we still haven't ruled out tracked music.
From what I calculated, on a 96kbps song, it takes up about .7 megs per minute. So I was wondering what bitrate people use in their games and if 96 is even too much since the speakers couldn't take full advantage of the music. Even so, headphones would be the likely solution.
Thanks melw for the XM player. I'm sure he'll see this thread and add it in and maybe we'll try that out too.
I appreciate the answers!
#140934 - tepples - Thu Sep 20, 2007 8:42 pm
As a matter of fact, almost all your classic Super NES games used a format very much like XM.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#141081 - Sweater Fish Deluxe - Fri Sep 21, 2007 10:40 pm
If you're concerned about space in terms of filesize or memory usage, keep in mind that a mono MP3 is half the size of stereo. A 64kbps mono MP3 would sound excellent, 48kpbs would be pretty good, 32kbps probably wouldn't even be noticeably bad through the internal speakers.
I'm a big fan of tracked music, though. I think it has many advantages even beyond the small size, such as the ease and flexibility of looping and the possibility of dynamically changing tempo or or other elements. I haven't tried using libntxm yet and as far I know there's no library for .IT files and they don't seem to work in libmikmod without as it stands now, though darknight_ez uses them in AmplituDS, so it's definitely possible. I've only used MODs on the DS so far, but I actually like the simplicity of that format quite a bit. I've had no trouble using mods created or saved in Modplug Tracker. Are you sure you're saving them as .MODs? I think MPTracker saves as .IT by default.
Trancker music would obviously be an extra hurdle you'd have to overcome in making this game if you don't have any experience with creating this type of music and honestly I don't know how much it would help your portfolio since it's a pretty outdated way of making musc, but it would at least show that you can use a variety of tools, I suppose.
Keep raw PSG music in mind, too, if you really want to impress people with your archaic music making skills.
...word is bondage...
#141099 - Div03 - Sat Sep 22, 2007 5:07 am
Well, I'm a jack of all trades really. So I'd be doing more than just the music, such as the sprites, interface, etc etc.. I've worked as a 3d artist before but never as a 2d one, so this will be a good addition. Plus I am confident enough I can pull it all off.
We made sure they were .mods, thats for sure.. But heres the thing: we always "tested" it on No$gba, not actually putting it on the DS. So when nothing played on the emulator, we just assumed it wouldn't on the DS. Are there any other file settings we should be aware of? What version of modplug tracker were you using?
And it really isn't a big deal learning the software. I have a friend who owes me who's used Buzz, so if I had problems I could ask him for tips.
#141247 - goruka - Sun Sep 23, 2007 3:41 pm
Hi! This is a project of mine, it's a highly portable/embeddable XM player. It needs a backend for libNDS though so it can mix using hardware (writing a Mixer backend). It shuold be a work of some hours, but i never bothered. unlike mikmod and other players, you have a lot more control on memory and sample management.
https://developer.berlios.de/projects/chibi-xmplay/
#141330 - Div03 - Mon Sep 24, 2007 4:35 am
Well, we've been trying to get the helix decoder to work but nothing seems to work. He's been posting on the palib boards about it and Tom you're the one helping him out, just now noticed that =)
But nothing seems to work time and again, so its getting really frustrating. I can't help but think he's missing something obvious, but code isn't my specialty.