Follow Game Sound Design!

follow gamesounddesign on soundcloud

Stay Up To Date With Us!

We will never spam you or share your email address.


Game Sound Design Strategies

GSD Strategies

Check out the gamesounddesign.com strategies when you are feeling creatively uninspired. Each random strategy will present you with a new avenue to pursue. Give them a try!

Game Sound Design Glossary

GSD Glossary

Our game audio glossary has all the sound terms you have been wondering about. Game audio can be confusing enough without having to deal with a new technical language. We are constantly updating the database with new terms that relate to not only game audio but game developer terms as well.

iPhone Sound Design: Tips and Tricks

Article by PJ Belcher

Games on handheld devices in recent years, as many people will be aware, have been big. With games such as "Angry Birds" and "Peggle" selling like AAA titles, it has been proven that big game playability and looks can be squeezed into a tiny device, but what about the sounds? Audio on handheld devices has produced a whole new set of challenges for the audio producer. With audio easily eating up 50% of any games' asset weight, and limitations such as Apple's 20mb "over the air" download limit size, it sees producers having to force a whole lot of sound into a very small space. That is without mentioning having to fight for space with other game assets.

This isn't helped much by the fact that the iPhone only has the capability to decode one compressed file at a time, and often this function is reserved for the player to listen to their own music. This means all audio has to be in uncompressed PCM file formats, such as Wav and Aiff, which aren't exactly small.

All in all, you only have around 10mb to play with (if you're lucky), you have to use uncompressed file formats, and given the competition in mobile game markets there can be no compromise on the quality front. The audio must be as dynamic, involved and immersive as any other AAA title. On a typical game this would include a large variety of event-driven sound effects, menu audio production, dialogue recording and a full score of music.

Is this an impossible task? Not by any means, you just need to employ a few tricks that will ensure massive sound with tiny size, and have an equally small negative effect on quality.



The Worst Case Scenario

First off, one must decide what sounds can be dropped if the user has decided to listen to their own music. This normally includes: start up; menu and in-game music; and credits. Now take these files and put them in a compressed format. Although most devices (including the iPhone) cannot decode two files at once it will not matter as these sounds will only ever play by themselves, plus if the user decides to play their own music then these will not want to be heard anyway. In some cases this can be handy as the OS will automatically not try to play the files from the game if already playing music. If you use a decent enough encoder then you can go down to 96-110kbps and make sure you use VBR (variable bit rate) (with iPhone use AAC file format).

angry birds

Most developers will be using development environments such as Unity that will include a 3D space sound engine. All of these engines will require SFX to be associated with an object to be mono, so don't forget this will effectively halve that file's size!

I'm not a great fan of this next trick but it really does help. The sample rate of any sound has to be twice as frequent as the highest audible sound, in order to effectively "sample" it, and in turn play it back accurately. CD quality is set at 44.1Khz, so should be able to re-produce a sound at 22.05Khz which is 2.05Khz higher than the audible range of humans. Given that most adults can barely hear above 18Khz there is a large amount of information going to waste. This coupled with the fact that a majority of the sounds used in a game will not sound above 10Khz (with dominant level) produces quite a large spectrum of digital information going to waste. Now like I said I am not a fan of this technique since I believe there to be more value in those higher frequencies than being able to hear them clearly (such as psychoacoustic properties) but given that most of your hard work is going to be played back over the in-built speaker or some "wasp-in-a-jam-jar" earphones I'm happy to let this one go on mobile game projects.

On a production note, it is worth having a drastic roll-off on the whole mix at around 50-100hz. Although this will not save asset space it will help the sound, since whatever is handling playback will not have to worry about reproducing frequencies it is incapable of at the sacrifice of sounds it is. With all this in mind I suggest you sample all uncompressed sounds at 24Khz, which will almost effectively halve the file size. Be wary of aliasing, which can occur if your sample rate is too low. Most pro audio production software should do a good job of reducing the sample rate while maintaining a good quality. Although I have never used them, there are other applications out there designed purely to reduce the sample rate of a sound while maintaining quality. If you want to be really pedantic then you can go through every sound you have and cater its own rate by reducing it until you hear the drop in quality. Since every sound will have a different highest frequency they will all be different, but be wary of bugs arising in the software from the constant changes in sample rate playback from sound to sound.

bouncing down an audio track

More Helpful Tips

I talked about this method in a previous post, and first employed it on Floe, but the use of generative asset based audio systems can be a great help. Elements such as background ambience in the form of a single looping sound file doesn't only sound fake but can also be very costly in space, since for the sound to be remotely convincing you need at least 30s of audio. To conquer this, I developed my own system based on taking the elements of what makes up the overall sound, categorising them and then arranging them in real-time (using in-game software) to form the soundscape. Not only does this save space but it also makes for a more convincing sound. Since the sound is forever changing, on a psychoacoustic level players appreciate this, it just feels more real.

Another tip is to use Cross-Fade looping. Most sounds can be edited so that they loop seamlessly and convincingly, allowing you as the producer to cut the sound down to just one cycle, and then loop this in the software to produce the full sound. This works well and can cut down on a lot of asset size, but seamless looping for some sounds is just impossible. Take noise for instance, there is no way you can reduce the volume to minus infinity at the beginning and end of the sound file without the loop point becoming noticeable. This is where CF looping comes in. By using an envelope and cross-fading a sound file with itself repeatedly such that the file end and start are always at no volume, you can have a constant sound that could go on forever which a fraction of the file size.

One last thing, which is more common sense than anything else, bounce your tracks as much as you can! There is no point having 2 sound files that play simultaneously as two separate files, bounce them to one, you have half the asset size and exactly the same sound.

combining-multiple-tracks-and-bouncing-down-to-one

By using all of these techniques together then you can be looking at a quarter of the original asset size - a great help for any mobile developer which helps keep games within that 20mb limit with minimal effect on quality. After all, the level of quality is a direct reflection of your work, so it would be a shame to see this ruined. It is also worth noting that smaller asset sizes can help with memory issues, especially on older devices.

I hope this article has been helpful to anyone out there also producing audio for mobile games. If so, (or not as the case may be...) then please write to me and let me know about your discoveries.

Also, anyone out there with any more tips and tricks then please let us know.

I look forward to hearing from you and good luck!



BIO

PJ Belcher is a freelance audio producer specialising in producing video game sound. Based in Cambridge, UK he offers services that include:

Sound Design, including in-game sounds, ambience, dialogue recording and user interface audio production.

Music Composition, in a variety of styles, offering live guitar, piano and drum performances, plus a wide skill set in electronic production.

Developed skills in audio based programming environments such as Max/MSP and SuperCollider, offering unique sounds and a programmatic understanding.

Experience in developing fully generative sound systems for event driven sound design and music.

Full audio production management including, composing, performing, producing, mixing, mastering, refinement and optimisation.

With a wide skill set, the best way to learn of his abilities is to meet him and discuss your auditory requirements, so please get in contact and arrange a meeting. Can travel and uses Skype.

PJ Belcher Official Site


blog comments powered by Disqus