Raspberry Pi 4 - Photo Viewing

Raspberry Pi 4: Chronicling the Desktop Experience – Viewing Photos – Week 23

This is a weekly blog about the Raspberry Pi 4 (“RPI4”), the latest product in the popular Raspberry Pi range of computers.

This week, I’m examining photo viewer software on the RPI4. The first thing to point out is that there’s lots of open source photo viewer software available for Linux. I’m not going to attempt any sort of wholesale survey from an RPI4 perspective. And I’ve not looked at the many open source photo managers even if they double as a photo viewer; I’ll cover them in a future edition of the blog.

Most of the images I work with use PNG and JPEG formats, although I’m also heavily dependent on WebP. PNG offers lossless compression. It supports alpha transparency, palette-based images, grayscale images, and full-color non-palette-based RGB or RGBA images. JPEG is another extremely popular image compression standard in the world, and the most widely used digital image format. Unlike PNG, JPEG uses lossy compression. WebP covers both bases, employing both lossy and lossless compression, and it’s a relatively modern format compared to JPEG and PNG. In a large scale study of 900,000 web images, WebP images were 39.8% smaller than JPEG images of similar quality.


GPicView

RPI4 - GPicView
Click for full size image

Raspbian’s default image viewer is GPicView (which is named “Image Viewer” in the Graphics section of the menu system).

GPicView offers the virtue of minimal library dependency, with only pure GTK+ being used. While you get the latest version (0.2.5) the program hasn’t seen any development for 4 years.

GPicView works well on the RPI4 for general usage. My main issues with GPicView are that it doesn’t support WebP, its customisation options are very limited, and it doesn’t support human-friendly “natural sorting”. Natural sort order is an ordering of strings in alphabetical order, except that multi-digit numbers are treated atomically, i.e., as if they were a single character. For example, z2.png is listed before z12.png. Given that the project is essentially abandoned, there seems little prospect of these limitations being resolved.

As GPicView doesn’t meet my requirements, I turned to our Group Test for Photo Viewers. The recommended free and open source image viewers are feh, gThumb and QuickViewer. As time is limited this week, I’ve focused my investigations on these 3 programs. Let’s start with gThumb.


gThumb

Raspberry Pi 4 - gThumb
Click for full size image

gThumb is an advanced image viewer and browser. It’s much more than an image viewer.

Unlike GPicView, gThumb supports WebP, human-friendly natural sorting, it’s under active development, and offers tons more functionality. It has many useful features, such as filesystem browsing, slide show, image catalogs, web album creation, camera import, image CD burning, batch file operations and quick image editing features like transformation and color manipulation. There’s lots of extensions that add even more functionality.

There’s a package in Raspbian. You get version 3.6.2, which was published back in September 2018. At the time of writing this blog, the latest version is 3.9.1. We’re missing out on a lot of development with the Raspbian package.

There’s a few steps needed to install the latest release, so I’ve set them out on a separate page.

How’s the performance of gThumb? Overall, I’m really impressed. The software runs really well on the RPI4. Even with a huge image collection, it’s very fast at navigating images.

It’s hard to make any memory comparisons with GPicView. But I can say that with a very small collection of 56 images, gThumb’s memory usage (version 3.6.2) was reported by ps_mem to be around 130MB of RAM. With version 3.9.1 the same test procedure reduced that memory usage to around 82MB of RAM.


feh

feh is notable for the highest score from the LinuxLinks Group Test. It’s text-based software, so if you’re hoping for a whizzy graphical interface, you’re going to be disappointed. Go with gThumb if a GUI is essential. But don’t dismiss command line software without giving it a try first.

feh is a very powerful and flexible image viewer. Like gThumb it supports a wide range of image formats, human-friendly natural sorting, and offers even more customization options. From my tests, it’s much quicker at navigating through huge image collections, and has a significantly lower memory footprint than gThumb. This will be important consideration when running the software on the 1GB or 2GB RAM models.

The Raspbian repositories host version 3.1.3 of feh which was released in February 2019. That’s a fairly recent release, but feh is under active development, with version 3.3 released in December 2019. I’ve detailed the steps you need to follow to compile the latest version separate page.


QuickViewer

QuickViewer is a highly regarded image viewer. It’s notable for drawing the imported image data on the screen with OpenGL.

Despite my best efforts, I wasn’t able to compile QuickViewer for the RPI4. And there isn’t a package in the Raspbian repositories. If you’re managed to compile QuickViewer, please explain how you were successful in the Comments box below. Your help would be very much appreciated. I’m certainly no expert at compiling, so you might have had better luck. As an aside, I also need to investigate the position regarding OpenGL on the RPI4 in more detail.


Summary

The default image viewer, GPicView, leaves a lot to be desired, missing key functionality. I strongly recommend you install gThumb and/or feh on your system. Both are excellent open source tools, gThumb will be your choice if you insist on a graphical user interface. But overall, the command-line feh offers everything I need, it’s lightning fast, and leaner.

Next page: Page 2 – Compiling gThumb

Pages in this article:
Page 1 – Main page
Page 2 – Compiling gThumb
Page 3 – Compiling feh


Read all my blog posts about the RPI4.

Raspberry Pi 4 Blog
Week 36Manage your personal collections on the RPI4
Week 35Survey of terminal emulators
Week 34Search the desktop with the latest version of Recoll
Week 33Personal Information Managers on the RPI4
Week 32Keep a diary with the RPI4
Week 31Process complex mathematical functions, plot 2D and 3D graphs with calculators
Week 30Internet radio on this tiny computer. A detailed survey of open source software
Week 29Professionally manage your photo collection with digiKam
Week 28Typeset beautifully with LyX
Week 27Software that teaches young people how to learn basic computing skills and beyond
Week 26Firefox revisited - Raspbian now offers a real alternative to Chromium
Week 25Turn the Raspberry Pi 4 into a low power writing machine
Week 24Keep the kids learning and having fun
Week 23Lots of choices to view images
Week 22Listening to podcasts on the RPI4
Week 21File management on the RPI4
Week 20Open Broadcaster Software (OBS Studio) on the RPI4
Week 19Keep up-to-date with these news aggregators
Week 18Web Browsers Again: Firefox
Week 17Retro gaming on the RPI4
Week 16Screen capturing with the RPI4
Week 15Emulate the Amiga, ZX Spectrum, and the Atari ST on the RPI4
Week 14Choose the right model of the RPI4 for your desktop needs
Week 13Using the RPI4 as a screencaster
Week 12Have fun reading comics on the RPI4 with YACReader, MComix, and more
Week 11Turn the RPI4 into a complete home theater
Week 10Watching locally stored video with VLC, OMXPlayer, and others
Week 9PDF viewing on the RPI4
Week 8Access the RPI4 remotely running GUI apps
Week 7e-book tools are put under the microscope
Week 6The office suite is the archetypal business software. LibreOffice is tested
Week 5Managing your email box with the RPI4
Week 4Web surfing on the RPI4 looking at Chromium, Vivaldi, Firefox, and Midori
Week 3Video streaming with Chromium & omxplayerGUI as well as streamlink
Week 2A survey of open source music players on the RPI4 including Tauon Music Box
Week 1An introduction to the world of the RPI4 looking at musikcube and PiPackages

This blog is written on the RPI4.

Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.