Compact cameras like the Kodak Zi6 (or my shiny, new, optical image-stabilizing HD Zi8) sure are convenient. They also do some weird things with their video and audio encoding. ffmpeg to the rescue. Image (CC-BY) Ofer Deshe.

I freaking love ffmpeg. This command-line utility, backed by one of the most versatile video engines anywhere, can convert from just about anything to just about anything. It’s free, it’s more compatible than anything I’ve seen, it’s absolutely robust, and it’s also really, really fast. It’s just the thing when you encounter a video file that’s causing trouble, or if Apple just (cough) stripped out important features from QuickTime Pro X.

And when you’re in a big hurry, the command line really is the way to go.

I’ll have a series of recipes with ffmpeg, but to kick things off, make sure you can get ffmpeg running on your OS of choice.

ffmpeg official site

On Linux, your distro likely has a current release packaged up and ready to go. (The only reason you might want not to use it, in fact, is if you need to compile a specific version to stay in sync with a video editor. ffmpeg is actually reasonably easy to build, too, if it comes that.)

On Mac, you can go with the GUI port, ffmpegx. But come on: you’ve got a lovely bash command line ready to go. I suggest this how-to:
Installing and using FFmpeg on Mac OS X

Windows turns out not to be as bad as you’d think; you just need MinGW, the lightweight compiler that drags Windows kicking and screaming into the GNU age. Full instructions from the official ffmpeg docs. (Using MinGW is a lot easier than mucking about with Cygwin or Virtual C++, but if you need to do that for some reason – like, you’re a developer, for instance – they cover that, as well.)
FFMPEG Windows how-to

For our first recipe, let’s split some video and audio, and transcode the audio.

I’m a huge fan of handheld flash memory cameras; I like their lo-fi footage. Someday, years from now, people will like the sensor wobble, even. The problem with them is that they do some strange things in encoding their video. Many video editors refuse to read the audio track out of my Kodak Zi8, I expect because it doesn’t exactly follow the spec.

And, of course, another reason to strip audio from video as a VJ/visualist is that you don’t need it (meaning you could easily script this so it worked on an entire folder, etc.)

ffmpeg, away!

1. To copy video and remove audio from a file:

ffmpeg -i [inputfile] -an -vcodec copy [outputfile]

This switches off the audio (-an) and simply copies the video data without touching it (-vcodec copy).

2. To copy audio of the video, transcoding to WAV:

ffmpeg -i [input file] -acodec adpcm_ima_wav [output file]

This copies just the audio, and sets the audio codec to a standard PCM wav readable on Windows and other OSes.

Requests for recipes? Tricks of your own? Let us know.