The complete guide to screencasting in Ubuntu 14.04 + Gnome Shell

For those developers of you wanting to do more than just develop under Linux, you’ll have realized that there are many things stopping you for doing proper video tutorials as easily as you would do it with some non-free (as in freedom) software.

Fear not, though, as this tutorial, written at a time between Ubuntu 14.04 and 14.10 with the Gnome Shell, will help you go through it and hopefully setup a perfect environment that you will be able to re-use anytime, anywhere (with your laptop).

YouTube requirements

In order to prepare a good video tutorial, the first thing you need is: standards! You need to get a clear list of what you will record, in which size, which quality and which destination.

A common destination for video tutorials is YouTube, and as explained by @JanetRichard in this article, and combined with what you have natively in Ubuntu, you might be deciding for these:

Video format/CODEC: MPEG-4

Aspect ratio: 16:9

Resolution: 1280 x 720 (16×9 HD)

Audio CODEC: MP3 or OGA (from OGG)

Audio bitrate: 44kHz

Channels: 2

With these basis, we can move on and start preparing tool.

Screen recorder

The first tool you will need is a simple, efficient screen recorder. For those who knew stuff like Kazam and other screen recorders, you might have had issues with their latest versions. SimpleScreenRecorder is a well-maintained little GTK application developed by Maarten Baert.

By clicking the link, you will get to the Github page that contains detailed (but simple) installation instructions. Note: for Ubuntu 14.10 and above, you might be better off following the instructions on Maarten Baert’s website: http://www.maartenbaert.be/simplescreenrecorder/#download

Sound quality

One of the most essential items of a good screencast (considering recording your screen will give you extremely good image quality anyway) is sound quality. If you are going to explain stuff to your public, you don’t want noise/echo/low volume issues anywhere near your screencast. Laptop microphones are usually good quality, but they are omnidirectional, which means they will catch your cat mauwing 6 meters from you, or the rain hitting on your window.

With this setup, you should get a crisp sound quality focused on your mouth. Oh, and this microphone doesn’t have a base, so I hacked and cut an old plastic CD tower for 50 CDs and screwed the microphone in there, which works just fine.

Embedding webcam

If you want to embed your webcam inside the screencast, you’ll have to use the command line a bit, because SimpleScreenRecorder doesn’t allow it directly, but it will focus its recording on the area you define, so you can just include a small webcam feed into this area and you’re done.

Check my article on how to do that. Shorthand: use mplayer with the command:

mplayer tv:// -tv driver=v4l2:width=640:height=480 -vo xv

Zooming in and out

Many times, you will want to zoom in and out, so that you can show things in more detail (on a 1024×720 video, sometimes text appears too small to read).

There is a script called gnome-shell-mousewheel-zoom which works (since a recent update) on Ubuntu 14.04 (and before that on 12.04). You’ll need to restart your desktop interface before it starts working (with the ALT key + the mousewheel).

Video edition

Once you’re done with the screencast, you might want to edit your video, for example to cut some scenes or to add a banner under some other scenes, or to put a logo at the beginning and at the end. OpenShot is a *very* easy to use video editor that can bring you all that, with smooth transitions between your logo and the video, the possibility to add music with fading effects in the right places.

Install under Ubuntu with sudo apt-get install openshot

The application sometimes crashes (it’s become less and less frequent over time) but it saves the latest status of your project so often that you generally just have to double click the project icon again to recover it where you last left it. Just make sure you save your project a first time as soon as you start.

Conclusion

Although there is no single tool at the moment that handles all this, a small combination of tools will easily enable your “videotutorial recording station”. The only missing feature now is the zooming part. Hopefully, someone will either fix an existing system or develop a GNOME extension at extension.gnome.org…

Search

Calendar

Popular articles

Recently I’ve had to fix a very strange cPanel installation of Chamilo. For some reason small files could be uploaded but not large files. Modifying the .htaccess file to add post_max_size and upload_max_filesize didn’t work. The problem was due to two things, really: the re-configuration of php settings could only be done through local php.ini […]

This guide is written specifically to cover a lack of quality documentation for the installation procedure of an OpenMeetings 2.2 server on a Debian Wheezy box. It will be based on the manual available already for this procedure (but relatively badly structured and written in a rather improvable English), by Alvaro Bustos with the help […]

There is a common problem appearing when installing a new Chamilo portal that I have seen a lot recently, so I thought I’d share the details here. The problem When installing Chamilo on a cPanel-kind-of-hosting, it might happen that you complete the installation, but when you want to enter a newly-created course, an ugly error […]