Having just completed two audiobooks (more on those adventures to come), I found that the most tedious portion of the process was without doubt the editing of each chapter. During the recording phase, I used the “finger snap” method of marking out my errors; any time I made a mistake, I would snap my fingers near the microphone in order to create a spiked waveform that I could find more easily while scrolling through the file. As you can see in the screen grab, there are sharp peaks in the wavefrom. As I scroll and scrub through, I see the mistakes, delete the area immediately before it, and smooth out the transition between the sections. Tedious, but necessary work.
After all of this work, I thought I would look into a better way of doing it. My friend Corey Snow, an experienced audiobook narrator, was working on a way to use what is called the “punch and roll ” method with Adobe Audition. Punch and roll is a method that is more easily found in Pro Tools, but doesn’t appear to be a common function in any of the next tier down DAWs that are common in the voiceover world. It allows the user to select where they want to pick up, automatically delete the error, roll back a few seconds so they can hear where they were, and start reading again immediately after that, eliminating the need for post production editing of the type I was doing before.
While researching the issue, I found an article on the indispensable Voice Over Xtra by Adam Verner outlining how to do this for Adobe Audition using the free AutoHotKey tool for Windows. AutoHotKey is a very powerful scripting tool that can take control of applications, your desktop, anything, and automating tasks. In my first reading of the article, I thought he was speaking of scripting available inside of Audition. Since my weapon of choice is Sony Sound Forge 10, I thought I would inquire with one of the masters of the product, Jeffery P. Fisher. He wrote co-wrote one of my favorite voiceover books, The Voice Artists Guide to Recording at Home and on the Road with Harlan Hogan. I got a simple and succinct answer: “No punch and roll in Forge. You can punch in to a section, you can punch in and continue to roll … but not as you describe.”
That felt like a pretty solid setback, especially since trying to get through the Sound Forge scripting language looked like me trying to program in C: that is, impossible (I spent 20 years in IT, but I couldn’t program my way out of a wet paper bag). Then I realized what Adam had done; he used AutoHotKey to do automation that wasn’t available in Audition itself.
So armed with his Audition script, I started plugging away at a Sound Forge 10 script to make punch and roll possible. During the process, I ran into a few issues that Sound Forge presented with its interface.
- Sound Forge does not have preroll built in – Audition 3.0 has a built in preroll setting, where Sound Forge only offers it for the preview function when opening a file. I was able to overcome this by forcing Sound Forge to seek to a specific point in the audio file 3 seconds before the cut.
- The playback function returns the cursor to where it started – This causes the system to start recording over existing audio…yes, that IS a problem.
- Starting the “Record” option automatically launches a new window when done programmatically – When attempting to start the recording function again after the cut and playback, Sound Forge would consistently open a new file, rather than add to the existing file. Ultimately I had to start the recording an another fashion.
Here is the script, complete with documentation. Download and install AutoHotKey first
#IfWinActive ahk_class Forge10MDIClass /* Looks for Sound Forge 10 running */
; Punch ‘n Roll Mimic
^P:: /* Defins the needed keystroke as CTRL-P*/
Send {Shift down}{End}{Shift up}{Delete}{f} / *Selects wavefrom from point of cursor to end and deletes it */
Send ^g{DOWN 30} /* opens ‘Edit -> Go To” and presses down arrow 30 times, moving cursor back 3 seconds */
Send {TAB 2} /* presses TAB key twice to move focus to OK button */
Send {Enter} /* presses OK */
Send {SPACE} /* Starts playback */
sleep, 3050 /* Pauses script while 3 seconds of playback occurs */
Send {Enter} /* Pauses playback */
Send !{0} /* Sets focus to this waveform window so record function will happen here */
Click 28, 92 /* Mouse click on “Record” button */
Sleep, 100 /* Waits one tenth of a second */
Click 204, 210 /* Clicks “Go To End” button in record window to force record to start at end of edit */
Click 70, 211 /* Clicks “Record” button in record window to start recording */
return /* Ends Script */
You can download the undocumented script here. You can place it in any folder on your computer, then double click the file to activate the script when you are running AutoHotKey.
I have run this on both my studio computer running Windows XP and my laptop running Windows 7 successfully. The only restriction is that your Transport Bar (where the Record/Play/FF buttons are) is in the top left corner under the main menu bar. This is necessary because I am pressing the buttons here as though a mouse were clicking them, instead of using keystrokes (which causes Sound Forge to open a new file instead of recording in the same file). The script is looking for these buttons in a very specific location relative to the Sound Forge window.
Here’s a sample of the punch in. The punch in happens at 18.617 seconds.
[soundcloud url=”http://api.soundcloud.com/tracks/71837468″ params=”auto_play=false&show_artwork=false&color=005eff” width=”100%” height=”166″ iframe=”true” /]
I have only started using it, but it will make a tremendous difference in longform reads and audiobooks. My thanks to Adam for coming up with this great way to use the tools at hand to get what you need!
George Whittam says
Amazing the lengths a VO will go to make punch n roll happen in their favorite DAW! Very impressive, George. I looked into this, but opted to learn Reaper for punch n roll, then editing in Twistedwave, since that’s what I am fastest with. I actually came up with a similar script hack for punch n roll in Twistedwave, but it’s sensitive to the zoom setting to work correctly.
George says
I know, it’s silly, isn’t it? But you know, it was actually easier to figure out this script than to start from scratch with a new DAW for me at this point. Plus, I enjoyed the challenge of figuring out how to make it work. A certain feeling of accomplishment if you will!
Joe Van Riper says
Hey GWIII… I second George W’s recommendations of Reaper and TwistedWave. Both are awesome DAWs, and very gentle on the budget, too. You know I’m a die-hard ProTools guy, but I’m seriously considering switching to Reaper and/or TwistedWave for everything except multi-track productions. I’m also starting to stick my toe in the audiobooks waters, and can’t imagine trying to do it without using punch and roll. Not sure if I’m going to have the patience for audiobooks… we’ll see.
George says
Joe, the audiobook process was a bit of a shock to me, as it is I suppose to anyone who is coming from short spots or medium length narration to this. I am working on a longish blog post about the process, how much time I invested in it considering I had not done it before, and the whole thing. I’m willing to give it another shot, and certainly I am more willing with this tool at my disposal. Oy the editing!
I know of both Twisted Wave and Reaper, but I have never tried them…I should take a look at them just to know what they are capable of.
Fran McClellan says
Hi George!
I am in a similar boat as I am just getting into audiobooks after almost exclusively doing short form work. I’m working on two right now and the editing is so time intensive!! I have Audition CS6 which doesn’t have the built in punch and roll and I’m on a Mac to boot. I’d really hate to switch to a new DAW, but if it saves time, then I may have to (at least for the audiobook projects) :s.
Thanks!
Fran
julie says
hi george, thanks so much for this! what a genious you are!
i had a quick question…i’m using soundforge 11 and not sure how to do set the keyboard settings (like how adam showed how to do it in audition 3.0…..also, in your script, i just changed soundforge 10 to soundforge 11…is that all i have to do?) thanks again!
George says
The beauty of Sound Forge 11 is that you don’t need this script AT ALL! You can set pre-roll timing like this:
1. Open the Record Options window (View -> Record Options)
2. Set the “Method” to Manual
3. Click the Settings Button
4. Click the Pre-roll checkbox and set it to a comfortable time. I usually set it to about 5 seconds
5. Click OK
And that’s it! Now, wherever you place the cursor, when you press the spacebar to star the recording, it will pre-roll 5 seconds of what was recorded before, and pick up recording at the cursor. Easy peasy punch and roll in SF 11!