Search code examples
animated-gifscreencast

Is there a way to stop recording screen with Byzanz?


I use tool called byzanz to record my screen and create gif files.

This is the way I use it:

byzanz-record -d 55 --delay=2 -x 0 -y 0 -w 3940 -h 950 desktop-animation.gif

However, often I can't tell in advance how long the recording will be so it ends up with awkward moments at the end or prematurely ending the recording. Is there a way how to tell byzanz to stop its job, perhaps by sending a signal to it with kill or something?


Solution

  • There seems to be an option that could achieve that :

    http://manpages.ubuntu.com/manpages/zesty/man1/byzanz-record.1.html

    -e, --exec=COMMAND Instead of specifying the duration of the animation, execute the given COMMAND and record until the command exits. This is useful both for benchmarking and to use more complex ways to stop the recording, like writing scripts that listen on dbus.

    However, in my package manager with the latest byzanz (fedora), --exec doesn't exist.

    I think with that option, you could do :

    byzanz-record --exec 'sleep 1000000' --delay=2 -x 0 -y 0 -w 3940 -h 950 desktop-animation.gif
    

    and when you want to stop the recording, do : killall sleep

    Sidenote: I have opened an issue on redhat bugzilla tracker to update their byzanz-record version : https://bugzilla.redhat.com/show_bug.cgi?id=1531055