gPhoto is a set of software applications and libraries for use in digital photography. gPhoto supports not just retrieving of images from camera devices, but also upload and remote controlled configuration and capture, depending on whether the camera supports those features.
|Operating system||Linux, BSD, Unix-like|
gPhoto has support for the Picture Transfer Protocol (PTP) and will also connect to devices that use the Media Transfer Protocol (MTP). Many cameras are not supported by gPhoto, but have support for the USB mass storage device class, which is well-supported under Linux.
gPhoto supports camera tethering control, preview, viewfinder in PTP or camera specific protocols on numerous cameras.
gPhoto provides a library, libgphoto2, to allow for other frontends to be written for it, and a command-line interface. gtkam is the official GUI client for gPhoto. Other clients are the KDE program digiKam and the GNOME program Shotwell. GVfs uses libgphoto2 to expose on-camera photos to GNOME applications via a virtual filesystem.
DigiKam, gtkam and Entangle (software) support tethering capture and viewfinder for supported cameras.