Shooting a photo and the imediately seeing it on a large monitor is a feature I’ve always wished. I don’t say live view on a display but instant copy and display would suffice. And actually, as I found out, it’s quite easy to achieve on Ubuntu Linux (10.04) with a Canon D450.

Required software

Make sure gphoto2 and geeqie (former gqview) is installed. An apt will do the trick:

sudo apt-get install gphoto2 geeqie

Scripts

I’ve written 2 scripts. The first one does the tethered capture and the second does the display of the image using geeqie

capture.sh:

#!/bin/bash
#capture.sh script

#the capture-tethered only works if a capture-image has been issued first
#so capture an image first
gphoto2 --capture-image 

#do the actual capture-tethered
gphoto2 --capture-tethered --hook-script $(dirname $0)/capture1.sh

capture1.sh:

#!/bin/bash
#capture1.sh script

if [ "x$ACTION" = "xdownload" ]; then
 geeqie --remote $ARGUMENT &
fi

You just need to create these 2 files in a folder of your choice and then make them executable

chmod u+x capture.sh capture1.sh

Usage

  1. Plug the camera in
  2. It will be detected and mounted automatically by ubuntu. Unmount it to allow gphoto2 to lock it.
  3. start the script capture.sh It will save files in the form capture0001.jpg in the working directory each time you shoot a photo then display them in geeqie. Note: the photos will be downloaded and deleted from the camera.
  4. press Ctrl+C to stop the process