BLACKISH DEV BLOG Support
 

 

GameDev Audio Workflow

This is my current workflow for recording, mixing and exporting audio for use in my games. (Currently recording dialogue…) I’m very interested in your approach, so leave a comment, tweet to @col000r or send me mail if you want to share your workflow!

Apple Logic Express 8:

This is where I record and mix all the Audio. (Or at least try to, because IMHO Logic is a mess)

To make my life easier I usually cut all the dialog into separate clips and name them with the first few words of the first sentence in the clip, split everything into separate tracks for separate characters and use color-coding to mark the clips I like best if there are multiple takes. (Rarely do I use comps, I just don’t find them very helpful…)

I currently keep all the dialogue in one big file (so I can tweak the sound of individual characters all at once). It’s not possible to batch-bounce files from markers, so I just add a region marker for each mission, select that range and bounce the whole mission to a WAV.

Adobe Audition CS 5.5:

That WAV goes into a multitrack session in Audition where I split all the dialogue into small pieces by creating named marker regions and batch-exporting them to files. (They need to be short because they’re going to be loaded at runtime and any file larger than a few KB will cause a short pause on iOS devices…)

I add markers to a multitrack session and not directly to the WAV because there is no way to copy/paste markers, and if you copy/paste audio from one file to another it clears the markers. Thus this is the only way to preserve markers when you want to re-export the files from a new bounce without having to set up everything anew.

A short how to:

  • Move the playhead to any position
  • Press Shift+Cmd+M to create a region marker
  • Adjust the in and out points of the region, open the Markers window and rename the marker (we’ll use the name as the filename later on)
  • When all markers are done, do a Multitrack > Mixdown to new File
  • Select all the markers in the Markers window and click the “Export audio of selected range markers to separate files” button.
  • Done!

Unity 3.4:

Back in Unity I’ll set the audio-files to mono 96 kbs Compressed StreamFromDisk – that’s the best setting I’ve come up with for the iOS version of the game. I wrote an Editor-script that lets me batch-change the audio format of all selected files to this, to save some time. I haven’t looked into the best solution for the desktop version yet, but the base files are all 44.1khz, 16 bit stereo WAVs, so there’s room for improvement…

Then I’ll drop everything into a custom editor window (as blogged about before here), copy/paste the dialog from the script, call the right pieces at the right time from script and finally in the end it looks like this:

(If you want to see and hear it: http://beta.blackish.at)

Bookmark the permalink. Follow any comments here with the RSS feed for this post. Trackbacks are closed, but you can post a comment.

2 Comments

    gottfired on October 17, 2011 at 14:12 | Permalink

    Nice. My current workflow is a lot less sophisticated :) I am doing a multimedia slide show for iOS. I've written an editor in Python where I can directly record each sample and associate it with the correct slide and playback time. If I do multiple takes then the editor always uses the last take, but keeps a history of all previous ones. After I'm done with recording I batch process everything in Audacity for cleanup, compression, etc. Then I use a shell script to convert to the final iOS format. The playback timing of slides, music, speech, etc. is all controlled by an xml file exported by the editor.

    col000r on October 19, 2011 at 08:17 | Permalink

    you call this less sophisticated? :)

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>