I'm putting together screencasts for the new Remembary 1.4. Screencasts are a bit like standup comedy routines: the best ones seem effortless and spontaneous, but they in fact take a huge amount of work.
I've come up with a set of methods that work well for me, and I thought I'd share my notes with everyone else. Everyone has different strengths and weaknesses in speaking and editing, so these techniques might not work as well for you.
USB microphone. I use a mid-range Logitech headset with an attached microphone. It was designed for web chat or gaming, but it sounds pretty good.
GarageBand. A great Swiss-Army knife for general audio stuff, and it's already on your Mac.
ScreenFlow. There are various products that do screen capture. This one is pretty good, and it's the one I sort of know how to use. There are a number of other great screencasting products out there - use whichever one works best for you.
XCode with the iPad simulator. Filming a real iPad is difficult. The screen picks up a lot of glare and fingerprints, you need a really good camera, edits are obvious, and sometimes pets get in the way. It's much easier to just record the simulator.
Backing Music Track
Build a backing music track in Garageband. This is important for two reasons: it makes your video seem more professional, and it also helps cover up audio edits.
This is actually pretty easy (and a lot of fun): just search the Garageband library for catchy loops and put them together.
Aim for something distinctive, upbeat, and catchy, but not too annoying.
Don't get carried away with detail since it'll mostly be in the background.
Keep in mind that higher notes will be more audible over the vocal mix than lower notes. My first screencast had a backing track where the variety was all in the bass part while the higher notes repeated every bar - it became really annoying after two minutes. For the new one, I added a higher melody line, which made it more listenable.
Export the music ("Share" -> "Export to Disk") at the highest quality level, so you have a good foundation to edit from.
Vocal Narration Track
Record your vocal track in Garageband too, using one of the 'podcasting' setups. I find the "Male Narrator Noisy" amp / effects setup works well for my voice.
Your vocal track will probably require multiple takes. That's okay. This is a good point to remind yourself that almost everything you hear on radio or in podcasts is the result of a whole lot of takes (or in some cases years and years of practice).
You'll probably want to take multiple takes of your entire script, so you can pick and choose the best parts of each take.
You could also record each phrase separately. This gives you a lot more control, but it takes longer. It's also a dangerous way to fall into obsessive nit-picking and fine-tuning.
To keep from popping and buzzing, say your 'S's like 'Z's and your 'P's like 'B's - speak like you have a bit of a cold.
Using a headset lets you keep a consistent distance between your mouth and the microphone. I find it handy to have the microphone just slightly above my mouth - closer to my nose, in fact - to keep the volume more regular, and also cut back on the popping and hissing sounds.
If you're like me, the spaces in between your phrases will have lots of breathing and lip-smacking sounds. You can reduce these by staying away from milky coffee while recording - and just drinking lots of water. It's pretty easy to edit these sounds out afterwards in GarageBand - either by dropping the volume in between phrases or just cutting the bits out. This leaves bits of dead space in between your phrases, but that's one of the reasons we have a music track: to cover up the edits!
Everyone is different, but I find my best takes are often the first few. If I've worked too long on a vocal, I'll get so wrapped up in little details that I won't be able to do as well.
Export your vocal track at the highest quality level.
Use the app simulator on your computer - set up a good set of test data that covers everything you might be doing.
If you have, say, map data that requires a real device, make sure you have screen shots that look as close to your simulator version as possible. Ideally set up the same data in the simulator *and* device.
For every 'point' in your script, record a separate screencast clip. Keep the starting and ending points as neutral as possible, so that the transitions between clips are invisible.
Leave some time at the beginning and end of each clip where nothing is happening. This will help a lot with your editing down the line.
ScreenFlow records your whole screen, but you want to shrink down the display window just to fit the simulator.
It's really easy to accidentally move the simulator window without thinking, which means you have to perfectly line up the video frame again - a single pixel difference can show in a transition. To make this a bit easier, push the simulator up against the top of your screen and a pixel away from the right edge. That way Fitt's Law means you only have to worry about one axis. Put a graphic file with a grid or a monospaced text file or something like that just behind the simulator window to make it easy to line it up properly again.
You'll want a monitor that's big enough to show the iPad simulator at 100% scale. I've had good luck with a Dell 22" 1920x1080 screen pivoted into portrait mode. If you're using a MacBook for this, turn off the laptop's screen - the extra load on the graphics card can lead to choppy animations.
I used to be very concerned with consistency, and I had everything set up to look like it was one smooth presentation done in one take. This was extremely difficult to do, since it's quite tricky to get all of the little clips to merge seamlessly. In my latest screencast, I use a lot of fade transitions instead. I think it works almost as well - and it's a lot less work!
Consider doing a 'walkthrough' before actually recording your clips. This way you can make sure you have all of your data properly in place before you shoot.
Consider having a 'rest state' for your clips to start and finish. Pause a bit before and after performing the action.
Putting It All Together
Put your backing music on one track. You can start your music loud, but then fade it into the background once the vocal starts.
Bring your vocal track into its own track in Screenflow. You won't really use it as-is. Instead, shrink it down to only the first phrase. Then make a copy of that and adjust it to fit only the second phrase. Leave some space between them. Repeat until you have your entire vocal as individual phrase elements.
Add the individual screencast videos to the timeline as well.
Now the fun part: arrange the vocal phrases and video clips so they overlap properly and the flow and timing between them 'feels right'. This will take a lot of playing and replaying, and may drive you a little crazy.
You'll have black gaps in between the clips - select the 'empty' bits at the beginning and and of each clip and use the "Edit" - "Add Freeze Frame" command to make stills which you can extend to fit the available space as necessary.
Some tips for good 'flow':
Do a fade transition, wait a beat, *then* start the audio.
Try to make actions and transitions fit with the rhythm of the backing track.
Have a consistent transition length.
ScreenFlow lets you do a lot of things to your clips after they've been recorded. You can set up zooms to highlight certain parts of the screen where important activity is taking place - this is very useful, but I found it a bit tricky to do in Screenflow.
For each clip, figure out what kind of pointer/cursor you would like. For iPad apps, you mostly want to hide the mouse pointer, but show it as a circle every so often. Make sure to set the opacity at 50% or so, and use the "Radar" effect on click.
Sometimes you'll want to only show the clicks/taps (since the iPad doesn't have a continuous pointer like your computer). For this, switch the pointer opacity to 0%.
Save a version on your computer at the highest quality level - that's your master version for all future versions.
Many iOS apps look best in portrait orientation, while most web video only shows in 'landscape' dimensions. This can lead to problems. For example, ScreenFlow's handy built-in YouTube upload function will 'helpfully' stretch your portrait-sized video to fit in landscape - making it mostly useless. You can upload your master version directly, and YouTube will helpfully put black bars on either side of your content rather than stretching anything.
Here's the result - it's not perfect, but I think it's pretty good. Let me know what you think!