recordMyDesktop BEFN$?FN

:i\Xk`e^kiX`e`e^m`[\fjn`k_i\Zfi[Dp;\jbkfg C<8IE@E> :LIM<

A training video of a new application can really reduce the learning curve. The recordMyDesktop program is at an early stage of development but already stable enough for everyday use. We'll show you how to use the program to capture custom procedures in a desktop video. BY ERIK BÄRWALDT

T trainers understand that the best ers had no alternative but to create their codec and a complete Python environ- way to teach a desktop procedure is own tools for building training videos. ment, including matching Qt and Gtk @to help the user visualize each step. A number of developers rose to modifications. Overhead projectors were long regarded this challenge and programmed record- RecordMyDesktop is available in bi- as the best approach; in recent years, MyDesktop [1] and Istanbul [2]. Both nary format for almost any Linux distri- computer-based slideshows and video programs are currently at an early stage bution, which considerably simplifies projectors have extended this philoso- of development, but lab tests reveal that the installation. Users with Fedora and phy. But even these “modern” teaching recordMyDesktop is certainly mature Mandriva, or their derivatives, will find aids suffer from the fact that they are and stable enough for everyday use. pre-built packages at Rpmfind [3]; pack- static: In the best case, all you can show ages for Slackware and its derivatives your students is a short text segment and @ejkXccXk`fe are available from Linuxpackages [4]. a couple of screenshots. To run recordMyDesktop, all you need Debian and Ubuntu offer the package in Educational videos, typically imple- is a working Linux PC with one of the their own repositories, and fans of open- mented as Flash animations, are a rela- major video players (Totem, Xine, SUSE can turn to Rpmseek [5]. If you tively recent innovation. To play the MPlayer). If you want the recording to use any other distribution or prefer to video, all the student needs is a web be professional, the system also must build the program yourself, Sourceforge browser with a suitable Flash plugin. have a sound card, and you will need a [6] has a tarball with the current source Because a native Linux application for microphone for sound recording. If you code package. Macromedia’s proprietary Flash format intend to use the GUI to control the soft- Although recordMyDesktop is a com- did not exist at first, trainers and teach- ware, you need both the free mand-line program, the developers have

AUGUST 2008 ISSUE 93 63 BEFN$?FN recordMyDesktop

Microphones mouse in the preview.Clicking the Record with just a couple button starts the recording. of hundred ohms RecordMyDesktop then takes snap- impedance are not shots of the desktop at the preset frame suitable: You will rate and – assuming you enabled the achieve the best sound option – records the sound at the results with a de- same time. Clicking Quit quits record- vice that offers MyDesktop. about 2.5 to a maximum of JgXZ\I\hl`i\d\ekj 10kohms. The recordings generate a fairly substan- tial volume of data, so make sure you =\\[YXZb have enough space for this on your hard To avoid feedback disk. What you also need to take into through your PC’s consideration is that the space require- loudspeakers, ments skyrocket if you have a high =`^li\(1JdXccXe[giXZk`ZXcZc`gd`Zifg_fe\j[fefk_Xe[`ZXgk_\ most distributions screen resolution. And higher audio jg\Xb\iXkXcc% disable the micro- sampling frequencies will consume even phone input by more space. programmed two almost identical front default; you might need to enable it in Because recordMyDesktop does not ends for Gnome/ XFCE and KDE: Gtk- the ALSA Mixer. To do so, check the Rec. typically encode the data it collects on recordmydesktop and Qt-recordmydesk- checkbox in the Mic slider window. the fly (preferring to do the job later), top. Both are available as pre-built bi- you need twice the amount of disk space nary packages for most distributions. :Xd\iXjIfcc to be able to convert the recording later. Synaptic, Rpmdrake, and YaST will Clicking the recordMyDesktop entry in Making sure you have several hundred also set up the required menu entries the menu launches the program and when they install the programs, allowing shows a preview of the current desktop users to launch the in next to in a small window. The Video Quality no time. and Sound Quality sliders – both set to a maximum value of 100 – can be changed Jfle[Xe[M`j`fe here. Modern computers typically have a Clicking the Advanced option takes sound card. To avoid reinventing the si- you to more settings, such as the frame lent movie with recordMyDesktop, just rate or the sound card sampling rate attach a microphone to your sound (Figure 2). Normally, you will not need =`^li\*1Gif^i\jjf]k_\\eZf[`e^gifZ\jj card’s microphone input jack. to modify these values. `ei\Zfi[Dp;\jbkfg% In our lab, I achieved the best results At the bottom left of the program win- with a simple clip microphone clipped dow, you will also see a Select Window megabytes of free disk space for a re- onto the collar of my shirt or attached to button, which you can use to select the cording of just a couple of minutes is a a buttonhole (Figure 1). window drawn by an active program. good idea. The microphone needs a stereo jack; After you click the button, the mouse On top of this, the CPU load will prob- if you use a mono jack, a modern sound pointer changes to a small cross; now ably grow to just below 100 percent, no card will only record on one channel. click the active application window on matter how powerful your computer is. On top of this, PC sound cards are not the original screen. designed to support just any input im- RecordMyDesktop draws a red frame INFO pedance. around the window in the preview and [1] recordMyDesktop: you can immediately http:// recordmydesktop. iovar. org see which activities [2] Istanbul: you are recording. http:// live. gnome. org/ Istanbul If you mistakenly en- [3] Binaries for Fedora and Mandriva: able the wrong win- http:// rpmfind. net dow, just right-click the preview image to [4] Binaries for Slackware: http:// www. linuxpackages. net/ pkg_ revert to your previous details. php? id=12173 selection. Besides this, you can [5] Binaries for openSUSE: http:// rpmseek. com. also record a specific =`^li\)1K_\Zc\Xi$Zlkj\kk`e^jXe[jkXikd\el`ei\Zfi[$ screen area by select- [6] Source packages: http://sourceforge. net/ projects/ recordmydesktop. Dp;\jbkfg% ing the area with the

64 ISSUE 93 AUGUST 2008 To avoid drop-out or jerky In our lab, I recorded vid- D@JJ@E> images in the video, it makes eos with a resolution of sense to stop any programs 1600x1200 pixels at a frame running in the background – rate of 15 frames per second, C@ELOD8>8Q@E<6 and possibly any cron jobs and then at 1280x1024 pixels, scheduled to run in the next again at 15 frames per sec- few minutes – before starting ond. When I played the re- to record. cordings back, they were pleasingly smooth, without JkfgI\Zfi[`e^ drop-out or jerkiness, and During recording, record- the focus was sharp – even in MyDesktop displays a square full-screen mode. blue button in the system RecordMyDesktop returns tray; clicking on the button good results with interpo- stops the recording. When lated resolutions, even if you you click the button, the pro- change the screen resolution gram stops recording current while the recording is in screen activity and immedi- progress. ately starts encoding the raw This kind of premium- data (see Figure 3). quality video is demanding Whatever you do, avoid on storage capacity: 50MB clicking Cancel to interrupt per minute are required for this process; doing so will the raw data. Splitting the re- destroy the raw data. cording into several sessions If you have recorded a lon- makes sense, especially for

nnn%c`elo$dX^Xq`e\%Zfd&Aljk8jb