Screencasts with RecordMyDesktop, ffmpeg conversion for HTML5 video
Producing a demo video for my DrupalCon Portland presentation caused a bit frustration with video editing tools, so here is a simple solution to cut and convert a video on Ubuntu.
First I recorded my screencast with RecordMyDesktop, a simple tool to capture the happenings on your screen. It even supports only recording one window, so you don't need to include the rest of your irrelevant desktop. Installation:
sudo aptitude install gtk-recordmydesktop
The output file it creates uses the Ogg Theroa Video format, which is free and open, but unfortunately not used on a lot on other platforms. For HTML5 video H.264/MPEG-4 now seems to be the most widely spread format, so we need to convert that. I tried with various graphical video editors such as PiTiVi, kdenlive and OpenShot, but not any of them produced useful results. They always changed the resolution, used the wrong codec, a different frame rate or blew up the output file. Their preconfigured rendering profiles just don't make sense for simply converting and cutting a video for the web.
I decided to look into the command line tool ffmpeg directly and found it surprisingly easy to use. Installation with the H.264 codec:
sudo aptitude install ffmpeg x264
To convert the video file, cut off everything after minute 1:34 and remove the audio track I used this command:
ffmpeg -i input-file.ogv -vcodec libx264 -acodec none -t 00:01:34.0 output-file.mp4
Done! It also reduced the file size from 4 MB for the Ogg file to 1.4 MB for the MP4 file without reducing the visual quality, thank you ffmpeg :-)