You can use the VNC set of tools to grab a screen as a movie, to create canned demos of your application. The following commands worked for me:
vncserver - this runs a
"headless" X server. the first time you use it, you will be prompted to
supply a password. The X server ID should be different from your normal
one. So if your normal screen is cvplws86:0, the new one might be
cvplws86:1, i.e.:
vncserver :1 -geometry 1280x800
vncviewer - this runs the
"virtual" screen that connects to the headless server, in which you run
your application in the normal way:
vncviewer :1 &You will be prompted for the password set above.
vncrec - use this to:
vncrec -record <file>Kill it to stop (unless there is a better way).
vncrec -play <file> &
setenv VNCREC_MOVIE_CMD "xpmtoppm | pnmtopng -force > img_%05d.png"
vncrec -movie <file>
N.B. The -force option is sometimes needed to get
mencoder to work properly.
mencoder "mf://img_*.png" -mf fps=10:type=png -ovc lavc -lavcopts vcodec=msmpeg4v2:vqscale=1:vhq -o abc.avi
vncrec -help for quick help; tar file if no executable.
vncserver -kill :1
See man pages and look on the web for more ideas.