1
.TH "RECORDMYDESKTOP" 1 "13/7/2006" "Linux"
5
recordMyDesktop \- record desktop sessions to an Ogg\-Theora\-Vorbis file.
21
recordMyDesktop produces a file(default out.ogg) that contains a video and audio recording
23
of a linux desktop session. The default behavior of recording is to mark areas that have changed(through libxdamage)
25
and update the frame. This behavior can be changed (option
28
) to produce a more accurate result
30
or capture windows that do not generate events on change(windows with accelerated 3d context)
32
but this will notably increase the workload. In this case, enabling the
37
(by default this option is switched on or off at every frame, according to the size of the area to be aquired).
40
recordMyDesktop doesn't have a commandline interface.
42
After startup, it can be controled only through the following signals:
47
causes the program to pause if it's currently recording, and vice-versa.
51
causes normal termination of the recording.
55
also causes normal termination.
59
terminates the program and removes the specified output file.
63
A typical scenario of recording can be a command as simple as:
68
which will produce a fullscreen recording named out.ogg
73
~$ recordmydesktop foo.ogg
75
will write output to foo.ogg
78
Since version 0.3, encoding will happen right after the recording finishes.
80
While this behavior saves a lot of CPU, you can revert to the old one by entering the \-\-on\-the\-fly\-encoding switch.
83
To specify a region for recording you can type this:
86
~$ recordmydesktop -x X_pos -y Y_pos -width WIDTH -height HEIGHT -o foo.ogg
88
where X_pos and Y_pos specify the offset in pixels from the upper left
90
corner of your screen and WIDTH and HEIGHT the size of the window to be recorded(again in pixels).
92
If the area extends beyond your current resolution, you will be notified appropriately and nothing will happen.
94
Notice also, that if any option is entered you have to specify the output file with the \-o switch.
96
If you try to save under a filename that already exists, the name will be post-fixed with a number (incremented if that name exists already)
100
To normally end a recording you can press ctl-c.
108
For further manipulation of the end result look at the
121
Non-zero means an error occurred, which is printed in stderr.
124
The following error codes indicate the nature of the error:
126
1 Error while parsing the arguments.
128
2 Initializing the encoder failed(either vorbis or theora).
130
3 Could not open/configure sound card.
132
4 Xdamage extension not present.
134
5 Shared memory extension not present.
136
6 Xfixes extension not present.
138
7 XInitThreads failed.
140
8 No $DISPLAY environment variable and none specified as argument.
142
9 Cannot connect to Xserver.
144
10 Color depth is not 24bpp.
146
11 Improper window specification.
148
12 Cannot attach shared memory to proccess.
150
13 Cannot open file for writting.
161
Print help summary and exit.
166
Print program version and exit.
175
\-windowid id_of_window
176
id of window to be recorded.
181
Display to connect to.
186
Offset in x direction.
191
Offset in y direction.
196
Width of recorded window.
201
Height of recorded window.
209
\-dummy\-cursor color
210
Draw a dummy cursor, instead of the normal one.Value of color can be "black" or "white".
215
Disable drawing of the cursor.
220
Enable usage of MIT\-shared memory extension at all times.
225
Do not use the MIT\-shared memory extension when aquiring large areas.
229
\-shared\-threshold n
230
Threshold over which shared memory is used(default 75).
235
Take full screenshot at every frame(Not recomended!).
239
\-\-quick\-subsampling
240
Do subsampling of the chroma planes by discarding extra pixels.
245
A positive number denoting desired framerate.
254
\-channels N(number>0)
255
A positive number denoting desired sound channels in recording.
260
A positive number denoting desired sound frequency.
264
\-device SOUND_DEVICE
265
Sound device(default hw0:0).
279
\-\-on\-the\-fly\-encoding
280
Encode the audio-video data, while recording.
285
A number from 0 to 63 for desired encoded video quality(default 63).
290
A number from 45000 to 2000000 for desired encoded video bitrate(default 45000).
295
Allow theora encoder to drop frames(this can significantly lower proccessing times).
300
Desired audio quality(\-1 to 10).
310
When a 3d compositing window manager is detected the program will function as if the
311
\-\-full\-shots and \-\-with\-shared options have been specified. This option disables that
312
behavior alltogether.
316
\-\-zero\-compression
317
Image data are always cached uncompressed.
322
Location where a temporary directory will be created to hold project files(default $HOME).
327
Number of secs(default),minutes or hours before capture starts(number can be float).
332
If there is already a file with the same name, delete it.
333
Default action is to add a number postfix to the new file.
334
For example when not specifying a name, if out.ogg exists,
335
the new file will be out.ogg.1 and if that exists too, out.ogg.2
336
and so on (no ad-infinitum though, more like ad-short-integer...)
341
Name of recorded video(default out.ogg).
347
If no other option is specified, filename can be given without the \-o switch.
354
[\-h| \-\-help| \-\-version| \-delay n[H|h|M|m]| \-windowid id_of_window|
356
\-display DISPLAY| \-x X| \-y Y|\-width N| \-height N| \-fps N(number>0)| \-\-on\-the\-fly\-encoding|
358
\-v_quality n| \-s_quality n| \-v_bitrate n| \-\-no\-framedrop| \-dummy\-cursor color|
360
\-\-no\-cursor| \-freq N(number>0)| \-channels N(number>0)| \-device SOUND_DEVICE|
362
\-\-no\-sound| \-\-with\-shared| \-\-no\-cond\-shared| \-shared\-threshold n| \-\-full\-shots|
364
\-\-quick\-subsampling| \-workdir DIR| \-\-zero\-compression| \-\-no\-wm\-check| \-\-overwrite| \-o filename]^filename
374
Display environment variable, specifying X server to connect to.
378
Recording a window using the \-windowid option, doesn't track the window itself, but the region that it covers.
380
Also when using that option the \-x,\-y,\-width and \-height options are relative to the specified window area.
382
An easy way to find out the id of a window, is by using the
387
Running a command like :
390
xwininfo |grep "Window id:"|sed \-e "s/xwininfo\\:\\ Window id:\\ // ;s/\\ \.*//"
392
will give you only the id of the window(which should look like this: 0x4800005)
394
More conviniently you can put all that in the command that launches recordMyDesktop like this:
397
~$recordmydesktop -windowid $(xwininfo |grep "Window id:"|sed \-e "s/xwininfo\\:\\ Window id:\\ // ;s/\\ \.*//" )
400
Also, the lower quality you select on a video recording (
403
option), the highest CPU-power that you will need.
407
if you are doing the encoding on the fly
408
,it's better to start with default values and manipulate
409
the end\-result with another program.
411
An excellent converter is
414
, which despite its name is also a theora to theora converter.
416
Changing the quality of a recordng with it,can be as simple as :
419
ffmpeg2theora infile.ogg \-v 3 \-a 4 \-o outfile.ogg
421
It can even perform resizing on the size of the recording, or change the overall duration.
425
Does not record 3d windows, if \-\-full\-shots isn't specified.
427
Saving 65536 files with the same name, will result in upredictable behavior,
429
which might manifest as an endless loop, or a segmentation fault.
432
John Varouhakis(johnvarouhakis@gmail.com)
b'\\ No newline at end of file'