Featured Post

Wednesday, December 29, 2010

Game Music Technical Code Requirements

This was originally posted on bpmusic.com on 2/13/2009.

It was in response to the following email:

I have a day job but am a musician by night. I was really interested in making music for video games as I thought it would be a very good side project.

I read your information on how to get started and I had a couple of questions if you have a moment to pass your knowledge. I have written a ton of music in all sorts of styles and write quite regularly. You mention Technical game sound code and I have no idea what that means? I was originally going to put together a CD with many different styles of music and approach companies and see if anything caught their attention and also offer custom work.

Where can I learn about the technical game sound code requirements? Do you have any suggestions for someone who is just getting into this?

Developers do not all use the same techniques to put music and sound effects into their games. The code they use is dependent upon many things. They may purchase a commercial product and use it as is or tweak it. Or they may have a programmer write special code. Many platform games use the sound SDK (software development kit) that comes with the general development code for games on that particular platform.

The important thing is that you may have to present your final music in a format that's compatible with the sound code they are using in the game. Remember that a lot of game music is more than just a single song file played as if on an audio CD player. If the music is to be interactive or variable, there will often be more specifications than just a simple General MIDI or digital audio file.

For a few examples, technical sound code could require:
  1. a MIDI file that has multiple different tracks for each instrument's part -- different tracks for different game states. And you could be requested to put MIDI controller or other data on each of the tracks so the game's sound code would be able to select which tracks of the MIDI file to play at a certain point in the game. This could be more or less complicated by other MIDI code requirements, too.
  2. MIDI files that play audio file snippets or loops.
  3. digital audio files that are snippets of an overall composition. These could also be different parts for a single instrument as in the different MIDI tracks mentioned in 1, above. These snippets could be streamed depending upon a game state (making the music more or less interactive and variable as with the MIDI tracks above).
  4. an audio/MIDI file that you run through some specialized conversion software that makes it compatible with the platform.
  5. MIDI or audio files that smoothly loop.
  6. MIDI or audio files that are in consonant keys so the sound code can switch from one to the other without obvious dissonance.
One of the first questions you should ask when considering whether to work on a project is "what format will you require the music to be in?" If there is a special format, you should find out what it will take to meet the format's specifications. It might mean that you will have to spend some time doing something other than just music.

As for learning these technical aspects, I'd wait until I knew that I was going to have to learn something about it. Most developers will help you with what you might need to know. And sometimes it's better not to know so you'll only be expected to do the music :-) And if you do not understand what the developer is talking about from the get go, let them know that you do not understand but you are willing to learn whatever is required (if indeed you are).

No comments:

Post a Comment