CreatingScreencasts

A Screencast is an animation or movie that shows some part of the desktop. They are great for showing off new features, and used correctly, they can but a good addition to documentation. For Ubuntu, screencasts should always be in a format that can viewed on a default install of Ubuntu, so this means GIF or OGG only.

Making a GIF screencast

GIFs, while still being midly patent encumbered, are great for making screencast for website and html documentation. They should only be used for short (less than 10 sec) pieces, which cover less than about 400x400. Here is what you need to do:

  1. Install byzanz, currently in Universe for Ubuntu 6.06
  2. Launch a terminal
  3. Launch byzanz-record --help

  4. Figure out your options. -l (to loop is recommended). Add what width, length, time you think you need, and then test.
  5. Tweak until you are happy

Example screencast

Here is the commands and output of tweaking a deskbar screencast

corey@coreylaptop:~$ byzanz-record --help
Usage:
  byzanz-record [OPTION...] record your current desktop session

Help Options:
  -?, --help               Show help options
  --help-all               Show all help options
  --help-gtk               Show GTK+ Options

Application Options:
  -d, --duration=SECS      Duration of animation (default: 10 seconds)
  --delay=SECS             Delay before start (default: 1 second)
  -l, --loop               Let the animation loop
  -c, --cursor             Record mouse cursor
  -x, --x=PIXEL            X coordinate of rectangle to record
  -y, --y=PIXEL            Y coordinate of rectangle to record
  -w, --width=PIXEL        Width of recording rectangle
  -h, --height=PIXEL       Height of recording rectangle
  -v, --verbose            Be verbose
  --display=DISPLAY        X display to use

corey@coreylaptop:~$ byzanz-record --duration=1 --x=500 --width=250 --height=100 test.gif
corey@coreylaptop:~$ firefox test.gif
corey@coreylaptop:~$ byzanz-record --duration=1 --x=550 --width=250 --height=200 test.gif
corey@coreylaptop:~$ byzanz-record --duration=5 --x=550 --width=250 --height=200 test.gif
corey@coreylaptop:~$ byzanz-record --duration=5 --x=550 --width=350 --height=200 test.gif
corey@coreylaptop:~$ byzanz-record --duration=5 --x=550 --width=450 --height=200 test.gif
corey@coreylaptop:~$ byzanz-record --duration=5 --x=550 --width=450 --height=250 test.gif
corey@coreylaptop:~$ byzanz-record --duration=5 --x=550 --width=450 --height=200 test.gif -l
corey@coreylaptop:~$ byzanz-record --duration=5 --x=550 --width=450 --height=200 test.gif -l
corey@coreylaptop:~$ byzanz-record --duration=7 --x=550 --width=450 --height=200 test.gif -l
corey@coreylaptop:~$ byzanz-record --duration=7 --x=550 --width=450 --height=400 test.gif -l
corey@coreylaptop:~$ byzanz-record --duration=7 --x=550 --width=450 --height=400 test.gif -l

And the output: test.gif

Make a GIF screencast of a single window

Check out byzanz_window.py - download and run the script.

Creating an .ogg screencast

See ScreenCasts

CategoryDocteam