Hi everyone, I'm a long time reader but first-time poster. Here goes:
I'm building a music-based game, and I'm trying to figure out the best way to implement the audio. In the game, there are many songs, and for each song I need to have individual access to each track, i.e. the song can't be stored mixed together as a single file. I could do it by just having a WAV (MP3, Ogg, whatever) file for each track, but that would take up way too much space, since there will be a lot of songs.
Also, I want other people (non-game music composers) to be able to make music for the game easily, so ideally it would involve MIDI or be convertible from MIDI. I considered MOD but lots of composers don't know anything about tracking.
The actual songs should have as few limitations as possible. I would never use straight General MIDI, and I don't want to limit it to 4 channels of MOD, but I'm looking for some kind of wavetable based format, with a bunch of instrument samples and a score to play them back.
So to sum up, I need these things:
o the tracks are all separable
o the file size is as small as possible
o it's easy for anyone to make a song to add to the game
o it sounds good (quality isn't sacrificed for size)
I know this is a lot to consider, but any ideas would be helpful, I've thought about this too much and I'm stuck for now.
Advice on the best way to implement music
If you are simply a hobbyist project (i.e. never going to be released commercial for any kind of profit or revenue) then you could use FMOD's music playback system and not have to pay a license fee. If you are a commercial project, I believe the license is roughly $3,000 to license FMOD.
The way I'd consider this is to have several items set in place:
1) A master clock that will time everything to one clock (i.e help make all segments start and stop at the same time to keep things synced).
2) Fixed length music segments that are all compatible via key, meter and tempo-wise. Segments can also keep file size smaller instead of using full songs - which can many times be repetitive anyway.
3) Some kind of system that allows the end-user to "paint" or toggle different patterns on top if each other.
FMOD can already randomize various combination of music playback and make everything sync as long the tempo is consistent across all of the segments. FMOD will use audio which will sound better and help your game have consistent playback across a wide range of hardware set ups.
Honestly there have been a few iterations of FMOD since I was last using the music player heavily. They may have added a feature that could take various segments and play them back at once. From what I remember the version of FMOD music player I was working with (which was about a year ago) could natively toggle single audio segments. So you may have to do some additional coding to make it work per music track (i.e. bass, piano, guitar, etc).
Thanks,
Nate
The way I'd consider this is to have several items set in place:
1) A master clock that will time everything to one clock (i.e help make all segments start and stop at the same time to keep things synced).
2) Fixed length music segments that are all compatible via key, meter and tempo-wise. Segments can also keep file size smaller instead of using full songs - which can many times be repetitive anyway.
3) Some kind of system that allows the end-user to "paint" or toggle different patterns on top if each other.
FMOD can already randomize various combination of music playback and make everything sync as long the tempo is consistent across all of the segments. FMOD will use audio which will sound better and help your game have consistent playback across a wide range of hardware set ups.
Honestly there have been a few iterations of FMOD since I was last using the music player heavily. They may have added a feature that could take various segments and play them back at once. From what I remember the version of FMOD music player I was working with (which was about a year ago) could natively toggle single audio segments. So you may have to do some additional coding to make it work per music track (i.e. bass, piano, guitar, etc).
Thanks,
Nate
Nathan Madsen
Nate (AT) MadsenStudios (DOT) Com
Composer-Sound Designer
Madsen Studios
Austin, TX
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement