camcorder.el icon indicating copy to clipboard operation
camcorder.el copied to clipboard

Tool for capturing screencasts directly from Emacs.

#+OPTIONS: toc:nil num:nil #+STARTUP: content

  • camcorder.el

Tool for capturing screencasts directly from Emacs.

  1. To use it, simply call =M-x camcorder-record=.
  2. A new smaller frame will popup and recording starts.
  3. When you're finished, hit =F12=.

View screencasts are generated in ogv format, and you can even pause the recording with =F11=! You can also convert the ~.ogv~ file to a gif by issuing the command =M-x camcorder-convert-to-gif=.

If you want to record without a popup frame, use =M-x camcorder-mode=.

** Dependencies

=camcorder.el= uses the [[https://github.com/Bruce-Connor/names/][Names]] and the =cl-lib= packages, so if you're installing manually you need to install those too.

For the recording, =camcorder.el= uses the following linux utility:

  • recordmydesktop.

For the conversion to gif, you will either one of the following two options:

  • ffmpeg, or
  • mplayer and imagemagick.

If you have these, it should work out of the box. If you use something else, you should still be able to get =camcorder.el= work by configuring ~camcorder-recording-command~ and ~camcorder-gif-conversion-commands~.

** Troubleshooting

If camcorder.el seems to pick an incorrect window id (differing from the one that =wminfo= returns), you can change =camcorder-window-id-offset= from its default value of 0.

If you the recording ends and the emacs window seems to have frozen try pressing C-g, this maybe caused by your shell if your using fish for example. You can use the below to make emacs use bash which should fix this issue.

#+BEGIN_SRC emacs-lisp (setq shell-file-name "/bin/bash") #+END_SRC