advertisement
|
CURRENT NEWSSTAND ISSUERead the full Table of Contents for the issue on sale now! Click here Subscribe for only $1.84 an issue! Please tell us about yourself so we can better serve you. Click here to take our user survey. |
| |
![]() |
Life in the Fast Lane This collection of St.CroixÕs columns was assembled during the two years following his death of cancer in May 2006. Included are many of his most-read columns, as well as personal notes, drawings and photographs. Click for more books |
![]() Listen to these latest podcasts and more: |
|
eDeals Newsletter for Discounts on GearGet First Dibs on Hot Gear Discounts, Manufacturer Close-Outs and Job Opportunities when you sign up to receive eDeals E-newsletter, sent twice a month. Check out an issue get advertising info or subscribe |
|
Writing music for cell-phone games is a specialized skill. Though it may seem simple on the surface, the process is more complex than just dropping an MP3 or MIDI file in an email to a client and getting paid. In its most basic form, it requires the composer to navigate through a dizzying array of formats, work with reduced file sizes and polyphony counts, and make the best possible sound come through an unforgiving mobile-phone speaker.
FIG. 1: This figure shows a common setup for configuring GM playback on a mobile phone. The sequencer being used is Yamaha’s XG Works 3.0.
In this article, I'll provide strategies to create bulletproof mobile soundtracks. To illustrate the process, I'll walk through a recent project and describe some of the techniques and tools I used. Though more-advanced mobile audio technologies are available, my focus will be the common protocol for U.S.-based games: playback of a single file using a limited General MIDI sound set. Mastering the basics will ensure a smooth transition to working with more-advanced engines.
Before starting the composition process, it is crucial to fully understand the scope of the project and its requirements. What style will the music be? What formats does the client require? What are the maximum file sizes? What is the polyphony count for each format? My particular project called for a 30-second looping theme no larger than 4K, delivered in four different formats: 4- and 16-voice GM, 16-voice Yamaha SMAF, and monophonic Nokia OTT. I'll describe these format types and the conversion process later; for now I'll focus on the composition.
The Project
Award-winning mobile game developer and publisher Digital Chocolate needed a soundtrack for an upcoming game. The music and the theme of the game were dark and moody. In the game, the user would play the role of a club manager, hiring dancers and staff while keeping the local law enforcement in check. There were six main dancers that needed their own theme song while they danced onstage.
The user had the challenge of figuring out which dancer would match up with the patrons that were in the club at the time. The better the match, the more money they would earn. With this earning of cash came more respect from the manager's bosses, and with the earning of respect, new items and staff were available for the club. In addition to these six tracks, the developer also required a title theme. The process of composing the theme is the basis of this article.
Preparation
Because the largest and most complex version was the 16-voice GM theme, I chose to start with that and work down to the mono version later. The platform was a mobile phone with limited sound-playback capabilities, not an Xbox 360 or PS3, so I used only a basic sequencer and limited the sound palette to General MIDI. (Although it's tempting to load up your DAW or digital audio sequencer with the latest plug-ins and effects, that's not a good idea in this case.) I used Yamaha's XG Works 3.0 and set the playback source to my sound card's software GM sound set (see the sidebar “Manufacturer Contacts” for the URLs of the companies mentioned here). This allowed me to hear a representation similar to the final playback medium while I worked.
To streamline work, I used a template that included the necessary header information and track setup for the mobile formats. Track 1 was used as the master track and included two SysEx messages: GM System On and GM Master Volume, set to 127. Because some phones can be finicky, I always reserve the first five ticks to store patch, volume, and pan information on sequential steps (see Fig. 1). On more than one occasion, I have corrected sequences that did not play properly because all the setup data was stacked up on tick 0.
After going over the creative brief, I began work on the main theme. Keeping a careful eye on the polyphony count, I started by composing a monophonic melody to a click track and finished by filling out the arrangement with the remaining voices. I allocated the backing-track voices to synth bass, two distortion guitars, and a small drum set. In the end, I used all the available voices and had a fairly full-sounding arrangement of the theme.
A Clean File
To ensure proper playback on most mobile audio sequencers, MIDI controller messages must be kept to a minimum. Most mobile sequencers recognize only Pitch Bend and Mod Wheel, so it's pointless to have extra data that will be ignored. This is a critical point because in some cases, the extra data can result in playback errors on certain phones. I used an input filter so the sequencer ignored that data to begin with, which saved an extra step down the line. However, having recently bought a new controller keyboard, I realized that I had inadvertently recorded Aftertouch messages on all the tracks, so that data was removed after the fact in the event editor.
Before moving to the next stage, I double-checked the total polyphony count to make sure there were never more than 16 simultaneous voices. Because XG Works does not include a polyphony-count meter, I counted the notes manually, track by track. Right away I spotted overlapping notes in the melody track (which would count for two voices) and a few doubled notes on the drum track. It was much easier to see the doubled notes when I viewed the drum track in the event-list view.
Because the GM spec doesn't include start and end points, I used a simple technique to create a seamless loop of the music. Most phones handle looping by using the first Note On as the start point and the last Note Off as the end point of the sequence. To ensure a smooth loop, I extended the length of the last snare hit to reach the end of the last bar. That created a perfectly timed Note Off and end point for the sequence. Another trick to create an end point is to insert a note at the desired ending place in the sequence and set the Velocity to 1, which acts as a silent marker.
Read more of this article
![]() |
Fill in the form below and click Order Now! to get two years (26 issues) for just $23.97 - the regular price of one year. But HURRY - this offer won't last forever! (U.S. orders only please) |
This data will be sent directly to Electronic Musician Magazine and will not be used for any other purposes. |
|
Acceptable Use Policy blog comments powered by Disqus
Want to use this article? Click here for options!
© 2009 Penton Media, Inc.













