Behind the GNOME 3.22 Release Video

Every six months GNOME 3.22 releases and for the past six releases I’ve produced a release video to accompany our release notes.

Click to watch the release video on youtubeClick the image to watch on youtube. Also available as download (Ogg Theora).

Schedule-wise a number of things were different for producing the video. I started later than usual this release. The voice-over was also produced later in the production phase than usual. In total I spent 18 days working on the video.


This is less than usual. The time saving mostly stems from spending less time recording for the release video. At first thought you might think recording would be a breeze but it can be one of the most frustrating aspects of making the videos. Each cycle the GNOME community lands improvement a wide set of GNOME’s applications. So before each release I have to find some way to run a dozen of applications from master. I do this either by:

  1. Running the application in Fedora Rawhide with a NoDebug kernel.
  2. Attempting to build the application with JHBuild.
  3. See if a nightly flatpak exists of the application and attempt to run that.

Even then, I might run into boring problems. The rawhide packages may not be up to date or the application might not build or run. In these situations I usually attempt to get in touch with maintainers/developers but in this particular cycle I had little time on my hands to handle these issues. This unfortunately means that I had to skip including some awesome applications in this video such as properly showing GNOME Games, GNOME Builder’s profiler support and the revamped keyboard settings. Which is frustrating of course! If things went smoother with recording, I could maximize my spending time better on editing and with much more energy to do so too. In the past I have asked maintainers to record new features. This might be a nice time-saving approach since maintainers usually have their applications built and know how to showcase the new improvements. On the other hand I also know that maintainers can be just as time constrained as myself at this point in the release cycle. If you are maintainer, let me know: If I gave you a tarball with everything you need, would you be willing to spend time recording the new features you developed if I asked you?

The voice-over finished two days before release which had some interesting side-effects. By then I had already finished most of the video material and so it allowed the manuscript to be tested and modified extensively. Some sections of the release video now goes into more detail about the changes than in previous videos. The changes are also covered at slower pace and more in-depth. A big downside is that a late voiceover delays the subtitles translations tremendously due to the way the translation tools work. After submitting subtitles it’s not possible for me to change the timing, so subtitles would have to be made at a point where I can freeze the timing of the voiceover. This is unfortunately one of the last steps in the editing stage. However, thanks to the hard work of our translation teams who translated exceptionally quick this cycle, making the video available in 16 different languages 48 hours after release.

New developments in this video

Even on a tight schedule I had room to experiment with a few new things. I had some fun working on Jakub Steiner’s wallpapers in an attempt to animate them. You probably barely notice it in the video (that’s on purpose), so here’s some separate videos showing them (click the thumbnails below).

Adwaita-morning animated, click to watch on youtube
Adwaita- morning Overexposed, click to watch on youtube
Adwaita-day, click to watch on youtube

In one case I needed to change the same settings across 20 strips which blender usually can do using a “Copy to Selected” operation. This particular case was on changing a property inside a noise modifier inside a keyframe on an F-Curve for a strip – which Blender didn’t seem to support, hmm. Fortunately blender makes scripting some python easy and with the help of the internet I did so. Yes, very specific use case but very convenient if you work with noise modifiers and dont feel like manually editing 20 noise modifiers.

screenshot-from-2016-09-26-10-51-36The top left is the python script, top right is the preview, bottom right are the overlayed image sequences and bottom left shows the opacity F-curves with noise modifiers applied to them to change color randomly over time.

This cycle I put more of the work into the VSE instead of the 3D view which both saved me some time and cost me some time. One one hand it means less in-between render steps and this saves time if what I want to do is something simple animation-wise anyway. On the other hand it prolongs the final render time which can be cumbersome if you just want to render a preview of the video. The key probably is to find a balance here.

img_20160921_004700Rendering the release video (CC-BY-SA 4.0)

Thanks to Karen and Mike for working on the amazing voiceover, the GNOME Design Team for providing graphical assets, the translation team for translations, the engagement team for feedback and Jonathan Yamoty for the background music. And thanks to everyone who contributed improvements to GNOME this cycle! For me, making the release video and is not only about promoting the new version but also about celebrating the awesome contributions by the community. This is my contribution to help giving everyone renewed energy and make next release even better.