"Hello, World!": Week 4 kaput!

So today in my coding bootcamp adventure, we started into "Back-End Fundamentals" of web development. The new format for the Web Development course at the Iron Yard is meant to give all graduates a shot at both front- and back-end development, both to give us a chance to evaluate what we want to focus on with the last month of our training, and also to send us out into the job market with at least a foundation in both areas, regardless of our chosen specialty. We're gone headfirst into Node.js, which allows us to continue working in JavaScript and honing our understanding of that language.

I must say that, for now at least, I'm still intending on focusing on front-end dev. We'll see how this section on Node.js goes, but the projects we did for the first four weeks of class were fun to tackle, and making things look like mock-ups is a fun puzzle for me. Again, we'll see, but the thought of learning React and REACT Native sounds exciting. More to come!

"Hello, World!": week 3

So, it's hump day of my third week of code school bootcamp, and ma synapses are burnin'. Week 3 day 3 corresponds to our third day of JavaScript, and this class is rapidly burning through the pre-learning that I've managed to accumulate through years of poking my nose into books, tutorials, free "crash courses" and digging through source code for snippets I could "borrow" for my own projects.

I do catch some flack in school for being ahead of the curve compared to a lot of people in the class, but I know it's coming from the stress everybody is under, trying to make sense of all this information that's being hurled our way. I know I would feel the same way were I in their shoes. And, it won't be long until I'm in territory just as new to me as it is to them. After all, we'll be starting Ruby in a week and 1/2.

In the meantime, I try to help out as much as I can, explaining logic and syntax for things I have a good handle on. Often, I find myself talking my way into a better or more efficient way of coding a particular solution than the one that I had already written in my own code.

🐤

Okay, time for a nightcap.

"Hello, World!": week 2

Writing now from near the end of week 2 of my Iron Yard coding boot camp, and I'm kinda feeling like this dude:

TFW you've been coding for 9 days straight...

TFW you've been coding for 9 days straight...

My sister asked me how class was going, and I replied "My brain is getting fuller every day!", and that's kinda how it feels.  We've been speeding through HTML, CSS, command-line usage, flexbox, and HTML forms, and we've only had 9 classes! In the next 2 weeks we'll be getting into javascript, and after that it'll be on to back-end developing with Ruby.

More to come...

New Project: "Hello, World!"

Welcome back, folks. Today I'm starting a new project, which is upgrading my self. Today was my first day at The Iron Yard, a code school here in Indianapolis. The Iron Yard has campuses around the country, but in Indy I'm enrolled in the Web Development Career Path course, where, in 12 weeks, I hope to come out the other end with the skills to land a job in web development. 

Now, I know what some of you are thinking: Jason, you have a website! I'm reading it right now! Why the hell do you need a class?!?

Well, to be honest, right now Squarespace is doing the heavy lifting for this site. I type things in boxes and click this and that, and poof! these pages appear. Nobody is going to hire me to design their website in Squarespace. Not for any kind of meaningful salary, anyway. So, here I am! Picking up a new hustle.

Today was all about brushing up on some fundamentals, getting comfy with Terminal and the command line, and getting to know my fellow students. Everyone is really on board, helping each other out, and I get the feeling we'll all have each other's backs for the next three months and on.

More news as news develops! Thanks for stopping by.

Music for a Tuesday

So I've got a little bit of downtime between the end of my contract at IRT and the start of the next chapter in my life (more on that soon...), so here I present, on a Tuesday, a song I recorded on Monday, in the style of The Sundays:

If you don't know the original version, you should go listen to it. It's a beautiful song. I've been practicing acoustic guitar finger picking for a while now, in an attempt to get better, and this is one of the songs I practice. One day, I was having a case of FAT FINGERS while practicing, and so I decided to switch up the style of the song, so it could be strummed. Anyway, I kinda liked it, so yesterday morning I whipped up this track in Logic Pro X. I mastered it this morning, and here it is. Enjoy.

Hello?

A common thing to happen in a play is to have a telephone that rings. There are many ways to ring telephones onstage, but in the current show that I'm running, our telephone, a standard desk telephone with bells inside of it, must ring through a wireless speaker. So, that means playing a sound of a telephone ringing through the speaker. Easy, right? But what if they pick up the phone in the middle of the ring? You can't just stop the sound cue, because in a telephone the clapper would stop hitting the bells, but the bells would naturally ring out. So, you split the sound into two parts, the ringing, and the ring-out. So, you play the ringing, then when the actor picks up the phone, you play the ring out. But now you have to carefully listen to the phone ringing, and NOT play the ring-out if the actor has picked up the phone in between rings! ACK. That sounds like stressful work to me, the intrepid sound operator.

Computers to the rescue!

I wrote a little AppleScript for QLab 3 which listens to the phone ringing for me, and determines if the phone is mid-ring or between rings!  If you've read this far, I'm going to assume you've had to deal with this before, so I'm going to post the script here.


tell application id "com.figure53.qlab.3" to tell front workspace
  set cueTime to action elapsed of cue "1" -- change "1" to target your repeating full ring cue
  if (cueTime mod 6.0) < 1.9 then -- 6.0 is the length of a full ring, and 1.9 is just before the ring-out: edit as necessary
    start cue "2.1" -- in this case, cue "2.1" is a quick (0.1s) fade out of the full ring
    start cue "2.2" -- "2.2" is a cue with only the ring-out portion
  else
    start cue "2.3" -- cue 2.3 is a devamp cue, to stop the full ring cue when it completes
  end if
end tell


So, the entire sequence in the QLab Cue List would look like:

sample QLab Cue List (click for full-size)

I'll have more from the theatre realm soon, so stay tuned!

Apologies...

Just a quick note to apologize, both for a lack of fresh content here, but also a preemptive "sorry!" for creating a musical ear worm. I'm not prepared at this moment to unleash it upon the general public, but I will soon. So, sorry! And, you've been warned.

Another chance to hear my work!

Hi folks! Coming up in September, people in the Ann Arbor area can grab tickets to see Liberty's Secret at the Michigan Theater! I really wish I could be in town to attend this screening.

A candidate you can laugh at without crying for America • photo by Tripp Green courtesy of Liberty's Secret

A candidate you can laugh at without crying for America • photo by Tripp Green courtesy of Liberty's Secret

For those that don't know or haven't been following, Liberty's Secret is a film written, directed, and composed by U of M School of Music, Theatre and Dance professor Andy Kirshner, who I met while I was getting my BFA. Andy and I have collaborated several times, and when he approached me to help him with the post-production sound on his film, I of course agreed! I worked on the sound edit while still in Los Angeles, and shortly after moving to Indianapolis, traveled up to Ann Arbor to mix the film in the Performing Arts Technology department's excellent facilities.  It also gave me a chance to work with fellow UM grad Dave Fienup, all-around nice guy (and Detroit-area sound guy, for all your sound production and post-production needs)! Dave provided foley for Liberty's Secret, and did a bang-up job.

If anyone is able to attend this screening on my behalf, please give my regards to cast and crew, and let me know how it sounded!

Chances to hear my work!

Hello again! I just wanted to let folks know about a project I worked on shortly before leaving Los Angeles, that I kind of lost track of - y'know, with all the packing and moving and everything - but I have noticed is making the rounds of festivals, showing up on screens around the country/world. It's called Harold and Lillian: A Hollywood Love Story:

Although the couple was responsible for some of Hollywood’s most iconic examples of visual storytelling, their contributions remain largely uncredited. Through an engaging mix of love letters, film clips and candid conversations with Harold and Lillian, Danny DeVito, Mel Brooks, Francis Coppola and others, this heartfelt documentary chronicles their remarkable relationship and two extraordinary careers spanning six decades of movie-making history.
— haroldandlillian.com

Coming up, it's appearing at the River Run International Film Festival in North Carolina, at the Buenos Aires International Festival of Independent Film Village Recoleta Room, and back in Hollywood at the end of April, as part of the TCM Classic Film Festival: all the dates are here.

It's a neat little film, full of inside-Hollywood stories about a lot of films that you know. Check it out if you can!

Logic X Key Commands: ProTools Preset

Holy pants, folks! I don't know if this was always in Logic X, or if it has just recently reappeared, but this will save me so many ⌘-Z undo actions.

My brain's memory banks thanks you, Logic developers!

My brain's memory banks thanks you, Logic developers!

Especially, the difference between the default Logic X and ProTools zoom shortcuts: ⌘+← or → for Logic, ⌘+[ or ] for ProTools. I can tell you how many times I've mashed the ProTools shortcut 5 times while using Logic, thinking I was going to zoom out or in, only to trim a region or wreak some other untold havoc on my session.

New content!

Hey folks! Just wanted to draw your attention to a new space I've created on this site - called "MUSIC & DESIGN" - which is a place for me to share some of the things I've worked on. Squarespace, my elegant and gracious web creation and hosting platform, has a template for a "music album," so I'm trying it out as a format for sampling my work. Unfortunately, I haven't yet figured out how to display all the metadata that I've so lovingly typed into each track, but I'll keep you updated if/when I do. In the meantime, check it out!

Scripting!

Happy 2016, everybody!

I'm in tech for my next show at IRT, The mystery of Irma Vep - 1991's most produced play and longest-running show in Brazil! The show features some great organ music by composer/sound designer Lindsay Jones, so come on down and check it out if you're in the area. Recently, IRT's resident sound designer and I were talking about QLab, and he mentioned how it would be nice to have a simple way of exporting a cue sheet from QLab, to give to stage managers. I had been looking for a project, so I thought this sounded like an excellent test case for teaching myself some Applescript. And, lo and behold, it works!

Here's a link to the .scpt file, or you can copy/paste/compile your own:


-- Export a simple cue sheet from a QLab cue list
-- Jason Tuttle
-- This script will export the cue number and name of all selected cues to a comma-delimited (.csv) text file,
-- which can be imported to any common spreadsheet program (Excel, Numbers, OpenOffice, etc...)

tell application id "com.figure53.qlab.3" to tell front workspace

   set AppleScript's text item delimiters to ASCII character 44 --comma, change to 9 for tab-delim
   global oneCue

   set theFile to choose file name with prompt "Name the .csv file" default name "New Cue Sheet.csv"
   set referenceNumber to open for access theFile with write permission
   set header to {"Cue #", "Cue Name", "Notes" & return} as string
   write header to theFile starting at eof

   repeat with eachCue in (selected as list)
     try --if you want to expand the number of fields to export, do so here
       set thisqnumber to q number of eachCue
       set thisqname to q list name of eachCue
       set thisqnotes to notes of eachCue
       set oneCue to {thisqnumber, thisqname, thisqnotes} as string --you'd have to add extra fields here
      write (oneCue & return) as text to theFile starting at eof
      on error error_message number error_number --just in case something goes wrong...
      display dialog "Error" & error_number & ": " & error_message buttons {"OK"} default button 1
    end try

  end repeat

   close access referenceNumber --close access to the file we opened

   set AppleScript's text item delimiters to "" ---reset to nothing

end tell

So, there it is. It's pretty simple, but it works. If you download or use it, let me know. If you make improvements on it, let me know. If you have a feature request, let me know that, too, and I'll see if I can make it happen.

Happy scripting!

2015 Wrap-Up

Happy new 2016, folks!

2015 wrapped up pretty well around these parts. Towards the tail end, I got to head back to my alma mater, the University of Michigan, to do the final mix of Liberty's Secret with writer/director/composer/producer Andy Kirshner. It was a whirlwind 4-day mix in one of the fabulously equipped Electronic Music studios run by U of M's School of Music. It's a terrific movie, with fantastic performances and music. Keep an eye, and ear, out for it to appear later in 2016.

Next up on my plate is at my day job at Indiana Repertory Theater, and their upcoming production of The Mystery of Irma Vep. I'm looking forward to getting to meet and work with Lindsay Jones, perhaps one of the busiest sound designers working today.

More to come, so stay tuned!

This is embarrassing...

Hey folks! Long time no see!

Gosh, where do I start...?

Inspiration to put up a new post today actually came from something I discovered in ProTools 11 that I wasn't aware I could do previously - having multiple video files in a single session!  Now, it has always been a limitation of non-HD ProTools (previously known as ProTools LE) that you could only have a single video track in a session, and attempting to import another video file into your session would bring up a dialog box saying that the existing video had to be removed before importing a new video.

But, today, I was using the Import Session Data function to create a "super session" of tracks from a film I'm working on, and I selected the Match Tracks option in the import dialog, which attempts to map the tracks of the incoming session data to the existing tracks of the session to which you are importing. Lo and behold, it brought in the video track of the imported session, and laid the video down after the existing video, right where it should be! It's a ProTools miracle!

Does this work for you, too? If so, or if not (especially if not, I guess), let me know! File this under Pro Tip!

I'll catch you up on all the comings and goings of the last few months later, but for now, enjoy this little tidbit.

Nightmare Released

Currently between homes while writing this, but I wanted to get this out there: The Nightmare, the film that I sound-edited and mixed with sound designer and composer Jonathan Snipes, is opening in select theaters around the country starting this Friday! 

Current screenings

Current screenings

The film will also be available on that day on VOD, specifically on iTunes.  

Poster for LA screening

Poster for LA screening

Hopefully, I'll be able to update this with more info in the future. If you do happen to attend a screening, please let me know! 

Audio Levels and Metering: Part 1 | Art of the Guillotine

This article presents the whole loudness and metering issue from the very basics. I've found using the meters in iZotope's InSight to be indispensable to me while editing and pre-mixing projects in my small home studio, before either delivering to clients, or going to a larger studio that's going to cost me (or my clients) much more money. I'm looking forward to part 2.  Thanks to Designing Sound for linking to this article.

News!

Hello there! Yes, this thing is still on. To play a little bit of catch-up, here's the list:

  • designing at UCLA
  • moving!
  • looking for work
  • did I mention moving?

Okay... So, I'm doing some sound design work at UCLA, working with their MFA actors and directors. They have a class on devised theater, and the culmination of the class is essentially two original one act plays. The shows will open later this month, but as of now, here's what I've been doing:

Speaker Plot Section

I love designing shows at UCLA! They have great inventory (tons of Meyer speakers) and are super supportive of sound designers doing creative things.

Secondly, Hear Spot Bark will be relocating as of June 1st, to Indianapolis, IN.

Anything else?

What? Oh, yeah. I'm moving. Los Angeles has been pretty good to me for the most part, but it's kinda been tough the last couple of years.I've gotten to work on some really great projects, and with some really great people, but for the sake of my family, we're picking up and starting fresh in Indianapolis. So, if any of you loyal readers have connections that might help me, hit that contact link in the menu bar and let me know!

In other news, The Nightmare and Excess Flesh have been doing great in their festivals and screenings! I'll try to let you know if I see of any screenings in the future.

I'll try to check in on the site when the move is completed, and fill you in on all the great things happening!

The Audio Producer's Guide to Loudness

I've been dealing a lot with this topic lately, as I'm working on my second feature-length film mix in as many months. When you're working on mixing levels for a project that's 90 to 100 minutes long, over the course of several days or even weeks, it's easy to lose track of the loudness of the mix over time. Having a properly calibrated listening environment is key, but having tools to help you keep track of your overall loudness levels over time can be a great tool.

Today as you mix audio productions you most likely monitor levels with a peak meter — those two little bars that jump up and down in tandem with the waveform — and you know those meters don’t always line up with what you hear! You look at two very different pieces of tape on the meter (say, your studio-recorded voice against an interviewee on the phone), tweak those two voices until they appear the same on the meter, and your ears tell you they play back at quite different volumes. You might decide to forego the peak meter for the RMS meter, which can provide a small advantage over a peak meter, but they too do not take perception into account. This is a problem that a new audio measurement method, loudness, can help you solve. Finally there’s a way to simplify levels.
— Rob Byers

Using Logic Pro to generate "air"

A while back, I linked to a Designing Sound article by Doug Murray (whom I later would go on to work for on Dawn of the Planet of the Apes!) about using convolution reverb to generate room tone to fill holes in dialog tracks.  At the end of that linked post, I speculated on using Logic Pro's Space Designer plug in, since I didn't (and still don't) own a convolution reverb for ProTools.  Well, I finally had a reason to sit down and try it out, and the results were pretty great.

Using Space Designer to generate endless room tone!

Using Space Designer to generate endless room tone!

I was really pretty happy with the results. The general process:

  • I cut in ProTools, so when I needed a piece of fill, I'd copy-and-paste a clip of room tone onto a new track that I had labeled "FILLSeed", and consolidated it (OPTION+SHIFT+3) into a new file, and named it according to the character, room, and reel, i.e. "FILLSeed_Chris_BR_R1". I called it "FILLSeed" because I didn't want to confuse this short clip of room tone with the synthesized version that will come out of Logic later.
  • Switching over to Logic, clicking on the disclosure triangle next to the IR Sample label in Space Designer brings up a menu for importing a sound file as your new impulse response.
  • Make sure to set the Dry level to "0", which in less confusing terms would be -∞, and setting the "Rev", or wet signal, to "max." Space Designer is also a multi-channel plug-in, so it will always come out as stereo, so I set the Input slider to the mono setting, over on the left side of the window.
  • Turning on the Test Oscillator insert plugin (with white noise, output at around -50 to -60 dB) on my AIR SOURCE track in Logic, white noise starts pouring into Space Designer, which gets convoluted with the impulse response of room tone that I just imported, and sweet magical room tone comes pouring out!
  • Space Designer does have built-in EQ, so if you need to tweak it a little bit with some high or low-pass/shelf, it's really easy to do that right in the plugin window.
  • I set the input of a second track to be the bus output of my SOURCE track, put it in Record Mode, and record a chunk of fill! Drop that new recording into your ProTools session, and cut it in. Huzzah!

So, there you have it. For about 1/5th the cost of Altiverb, you can buy a copy of Logic Pro and have your own capable convolution reverb. And, you get a pretty nice DAW with some great features of its own, to boot! With the improvements to Core Audio in OS X, having two DAWs open at the same time, using the same hardware, is actually possible, making this type of workflow far less painful.

 

POST SCRIPT (11/09/2015): While this process has been rendered less useful due to features in software like iZotope's RX and the Ambience Match algorithm, this is absolutely still relevant if you a) don't own RX or 2) don't have it available immediately.