Digital Photography in the GNOME environment

Hubert Figuière <hfiguiere@teaser.fr>

Digital photography in GNOME

Acquiring

Managing

GNOME Integration

Acquiring

Digital Cameras

Scanners

Getting the images from digital cameras

USB Mass Storage devices

Mount as filesystem. Just copy

# mount -t vfat /dev/sda1 /camera

$ cp -R /camera/dcim/*/*.jpg ~/Photos/

Other devices

Need a driver: gphoto2

gphoto2

Support more than 400 hundred cameras

Over USB or serial

This does not count Mass Storage devices

Has only 37 different driver families

Thank you OEMs...

... but still a lot of reverse engineering

Just a library

Free Software

gphoto2 architecture

gphoto2 architecture (continued)

Modular

Can plug new drivers independently

Abstract communication layer

Desktop unaware

No GUI at all

Separate front-ends: gtkam and gphoto2

Also a frontend for KDE: digikam

Scanners

3 different solutions:

SANE

EPSON-Kowa Image Scan !

VueScan

SANE

SANE = Scanner Access Now Easy

Since 1996

Lot of devices supported (47 scanner families)...

... but like gphoto2, a lot of reverse engineering

Free Software

Several front-end

SANE Architecture

Just a library: libsane

Hardware access layer (sanei)

Does not care about UI

Front-ends are just applications to provide UI

Allow using a scanner remotely

Image Scan!

Made by EPSON-Kowa to support most Epson scanners

Thank you Epson

Almost Free Software

Some parts are proprietary and are provided as *.o binaries

Image processing

Some OEM drivers

Better result with negatives.

Linux/Intel only

Exchanged driver code with SANE

VueScan

Support some scanners that SANE do not

Better result when scanning negatives than with XSane

Proprietary

Cost money (starts at $59.95 !)

Linux/Intel, Windows and MacOS only

Managing pictures

gThumb

F-Spot

The Gimp

Nautilus

GNOME Integration

Using libhal for device detection.

Interact with gnome-volume-manager when a digicam is plugged in (see project Utopia).

Copying the images to a predefined folder

Start an application (gThumb, gtkam)

Acquire image API for GNOME.

Why an API for GNOME?

provide a standard GUI for scanning and/or image capture

Use SANE and a front-end like XSane.

provide a simple API to acquire a picture from an application

Typical use: send a snail-mail via e-mail using a flatbed scanner. You'd only need to add "Scan..." to the mail application.

Conclusion

Still more general work

Still more devices to support

Real GNOME integration

Questions ?

Talk will be available at http://www.figuiere.net/hub/talks/guadec5/