Recording demos on Ubuntu

I’ve been looking for a good “screen recording” solution for Ubuntu. When I was a windows guy, I used Camtasia 5. It worked really well. For a while they were even giving away version 3 but that seems to have gone away. Still, if you use Windows, you can make 30 days worth of screen videos with the latest trial version.

Stephen over at techosystems listed “recordMyDesktop” in one of his recent “links posts“. I’ve tried most of the other options for recording my screen while running through a demo. Most had serious problems with the 1400×1050 screen on my Thinkpad T60p. recordMyDesktop actually handles it pretty well.


the video is distorted because YouTube doesn’t like video that is not 4:3

The program is a command-line tool and there are a couple of GUI front-ends to it. I didn’t find the GUIs so I just did a little trial and error and used the command line interface. It turns out it is very easy so I just made a few BASH scripts and will likely never install a GUI. Here are two of my command lines - the first is “full screen” and the second is an example of a portion of the screen.

recordmydesktop –no-sound -o ~/Videos/screen-recording.ogg
- or -
recordmydesktop -x 2 -y 51 -width 1000 -height 698 –no-sound -o ~/Videos/screen-recording

If you want to record a single application window, you can just type “xwininfo” in a command window and then click on the window you want to record. It will spit back the coordinates of the upper left corner and the window’s width and height. Then you just plug those into the command line above.

Recording will start as soon as you hit “ENTER” after the recordmydesktop command. You finish recording by returning to the command window and hitting “CTRL-C”. It’s not elegant but is simple enough. Again, the GUI improves the user experience.

The recording is in ogg format - an open source video container format that is very very efficient. Unfortunately, it is not very common outside the Linux world. Fortunately there is ffmpeg - a very good tool for converting video and audio files from one format to another. Here again, I have a couple simple BASH script to run the command line tool - the first converts the video to an AVI file with xvid coding and the second does the same but scales down the video and the third converts to FLASH video which works with YouTube.

ffmpeg -i ~/Videos/screen-recording.ogg -vcodec xvid -b 100k ~/Videos/screen-recording.avi
- or -
ffmpeg -i ~/Videos/screen-recording.ogg -s 700×525 -vcodec xvid -b 100k ~/Videos/screen-recording.avi
- or -
ffmpeg -i ~/Videos/screen-recording.ogg -vcodec flv -b 100k ~/Videos/screen-recording.flv

So, with two command line tools and a couple of BASH scripts, I now have a reasonable solution for creating video recording of demos *and* given some recent disasters I’ve seen at computer conferences where networking was down, having a video recording of the demo as backup is paramount !

Comments are closed.