Animated slideshows with PhotoFilmStrip

Frame by Frame

Article from Issue 186/2016

Easy-to-use PhotoFilmStrip produces high-quality videos and offers plenty of useful features.

Evening slideshows were often highly technical operations in the glory days of analog photography. Along with crossfades using two projectors or one projector with two lenses, it was also possible to provide both the soundtrack and the control signals for the picture change using a multitrack tape recorder. The results were pretty impressive and far superior to tediously skimming through an album.

But, no matter how you looked at it, the slideshow as such remained a static image. Now, however, you can not only compile slideshows and play movies using software, you can also create the illusion of a real video by panning and zooming in on images. This is much more than just a gimmick; it can be used specifically to draw the viewer's attention to certain parts of an image that might otherwise go unnoticed. Whereas it only used to be possible to create such effects using professional rostrum cameras [1] – which are placed above the subject to facilitate zooming and panning – today, the software takes care of both processing the frames and rendering playable movies.

PhotoFilmStrip [2] is one such program that breathes new life into your photos with the help of the Ken Burns effect. The name comes from American filmmaker, Ken Burns [3], who, although he might not have invented the technique, he perfected it and earned numerous awards for his use of it.

After starting the program for the first time, you can create the basic framework for a new filmstrip via the File | New Project menu or directly by pressing the large plus icon on the home screen. The default settings of a 16:9 widescreen format and a total length of 30 seconds are just right for your first attempt (Figure 1). (See the "Installation" box for details.)


Sufficiently up-to-date packages for PhotoFilmStrip are only available for a few distributions. Debian users will find it in the Multimedia repository; openSUSE and Fedora have RPMs in the openSUSE Build Service. The Debian package can also be used in Ubuntu, but a real Ubuntu version is no longer maintained.

The dependency list for installation from source is pleasantly short. Because it's a Python program and nothing needs to be compiled, version 2.7 (not 3!) of Python will usually be enough together with the associated developer files, usually found under the name python-dev or -devel. You can use the python build command to create the file structure, which you then perpetuate in the system with

sudo python install

At run time, PhotoFilmStrip still depends on other software. The MEncoder from the MPlayer portfolio is required for rendering the video. On top of that, version 2.8.12 or newer of wxGTK is also required – the newer versions based on GTK3 also work.

One of the Python modules PIL (python-imaging) or Pillow (python-pillow) take on various image-processing functions, depending on the defaults in the respective distribution. Version 3.0.0 of Pillow is currently useless. It wasn't possible to save newly created projects on Fedora 23 after adding pictures. Debian and its derivatives are still using the "real," but no longer actively supported Python Imaging Library – that's why this problem didn't come up in the test with Ubuntu 15.10.

Figure 1: Lay the foundations for your new slideshow in the Project properties dialog.

The new project is empty to start. The Import Pictures item is hidden in the Tools menu, but you have a corresponding icon in the toolbar as well. Simply select multiple images (or even just one) in the selection dialog, and PhotoFilmStrip will present an overview, as in Figure 2, with the first image to be processed in the top section.

Figure 2: The main window appears tidy and clean after importing the image.

You can now adjust the motion by panning and zooming the frame superimposed by two image views. No matter where you position the mouse pointer on the frame, the image's aspect ratio is maintained and prevents the video from showing black bars later. However, even if you don't do anything and just export the filmstrip to the target format, the result will still be impressive. Miraculously enough, PhotoFilmStrip seems to detect which parts of an image are acceptable and which parts shouldn't be used in the video.

An instant export also gives you a good impression of the preset fade speed. You can start rendering the video via Tools | Render filmstrip or by using the corresponding button in the toolbar. Various disk formats are available in the settings window (Figure 3) beside Format, ranging from the ancient video CD up to the no longer state-of-the-art DVD.

Figure 3: PhotoFilmStrip has no lack of formats.

There are also high-definition videos: You can set one of the MPEG4 variants as the format and then choose between HD, with 720 image lines, and Full-HD, with 1080 image lines, from the Profile field, which should no longer be grayed out. To make fine adjustments, click the button to the right of the Format field, where you can change the bit rate and other parameters.

Off the Cuff

The shortcut buttons that lie between the two image views are very handy. The top button produces a Random motion; in principle, this is what PhotoFilmStrip does anyway when reloading images. The next two buttons down copy the left selection to the right and vice versa. This means that the optimal segment found is kept; the image remains static and isn't panned or zoomed. If the fourth button is pressed, PhotoFilmStrip exchanges the two selections.

The penultimate button opens a settings window for pixel-perfect adjustment of the motion paths (Figure 4). The Location specification relates to the upper left corner of the selection frame, and Size relates to the horizontal width. If you can't select precisely enough using the mouse, you can winkle out the very last grain of accuracy here. The lock icon at the bottom of the vertical button bar ultimately expands the operating range of the selection frame beyond the physical boundaries of the image. However, this creates black areas, which are usually more of a hindrance, but create additional leeway in certain cases.

Figure 4: Effects can be implemented even more precisely, thanks to fine adjustments.

Zooming and panning are far from the only possible options in PhotoFilmStrip. A few buttons under the output image offer ways to help get your image into shape. The arrow buttons should be pretty self-explanatory – they help put a misaligned image into the correct position. No other truly breathtaking image effects are hiding in the Effect drop-down, except options to convert to a black-and-white image or to a yellowed sepia image.

The Movement and Transition drop-downs to the right affect the transition between two images and the type of panning and zooming itself. The preset styles Accelerated and Fade already deliver attractive results. If necessary, you can change the values here or scale back the effect to the level of a conventional analog slideshow. Note, however, that the settings are only valid for the respective frame and can't be semi-automatically or fully automatically adopted for other images.

The filmstrip at the bottom of the window sorts your photos like a file manager when images are imported – usually alphabetically by file name. You can rearrange them if you want by simply dragging and dropping them using the mouse. It is easy to click the image to be edited, or you can toggle it in the filmstrip using the arrow keys on the right.


Presuming you're not wanting a high-resolution silent movie, you can add an audio file (File | Properties) when rendering. The length of the finished video is determined by the length of the audio file. By playing around with the length of the file and the number of images, you can influence the duration of the frame without having to intervene directly in the Fade parameters.

Although it isn't possible to record a comment directly into an audio file, you can use a little trick: First, render the video without sound. Then, when playing it, launch an audio recording program and record your comments to an audio file of any format. Next, render the video again, indicating the audio file. The comments and image will then always run in sync.

Image Captions

An input field labeled Subtitles is available under the view of the target image on the right. Don't expect too much from it, however; the entries might be placed correctly in the appropriate image, but they are too small. It certainly isn't a replacement for proper subtitling software. There are no configuration options other than the text input itself. Color adjustments would be helpful but are not available. With the use of programs such as Gnome Subtitles or even a simple text editor to change the font color or formatting (bold, italic, underline), you can edit the subtitle file, which has a .srt suffix and is found in the same folder as the video after rendering.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • DIY Lenticular Camera

    You can take lenticular images with a homemade camera to re-create the "wiggle" pictures of your childhood.

  • menyoki

    Short snippets using animated GIFs are often sufficient to show what's happening on your desktop. With menyoki, you can create these animations from the command line.

  • Q-DVD-Author

    Authoring video DVDs with Linux was a problem for a long time, but a few useful tools are closing the gap. And Q-DVD-Author gives you a handy front-end for controlling the process.

  • KDE Image Menu (Kim)

    With a Konqueror-integrated service menu called Kim, you can modify and manipulate image files through a handy context menu.

  • Album Shaper

    Digicams almost completely replaced legacy cameras, and now Album Shaper offers a replacement for photo albums.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More