gphoto2(1)


NAME

   gphoto2 - command-line gphoto2 client

SYNOPSIS

   gphoto2 [--debug] [--debug-logfile FILENAME] [--debug-loglevel LEVEL]
           [[-q] | [--quiet]] [[-v] | [--verbose]] [[-h] | [--help]]
           [--usage]
           [--hook-script FILENAME]
           [--list-cameras] [--list-ports] [--stdout] [--stdout-size]
           [--auto-detect] [--port PATH] [--speed SPEED] [--camera MODEL]
           [--filename FILENAME]
           [--usbid USBIDS]
           [[-a] | [--abilities]]
           [[--folder FOLDER] | [-f FOLDER]] [[[-R] | [--recurse]] |
           [--no-recurse]]
           [[-l] | [--list-folders]]
           [[-L] | [--list-files]] [[-m NAME] | [--mkdir NAME]]
           [[-r NAME] | [--rmdir NAME]] [[-n] | [--num-files]]
           [[-p RANGE or NAME] | [--get-file RANGE or NAME]] [[-P] |
           [--get-all-files]]
           [[-t RANGE or NAME] | [--get-thumbnail RANGE or NAME]]
           [[-T] | [--get-all-thumbnails]]
           [--get-raw-data RANGE or NAME] [--get-all-raw-data]
           [--get-audio-data RANGE or NAME] [--get-all-audio-data]
           [--get-meta-data RANGE or NAME] [--get-all-meta-data]
           [--upload-meta-data FILENAME]
           [--force-overwrite]
           [--new]
           [[-d RANGE or NAME] | [--delete-file RANGE or NAME]] [[-D] |
           [--delete-all-files]]
           [[-u FILENAME] | [--upload-file FILENAME]] [--config]
           [--list-config] [--list-all-config]
           [--get-config CONFIGENTRY]
           [--set-config CONFIGENTRY=CONFIGVALUE]
           [--set-config-index CONFIGENTRY=CONFIGINDEX]
           [--set-config-value CONFIGENTRY=CONFIGVALUE] [--reset]
           [--capture-preview] [--show-preview]
           [[-F COUNT] | [--frames COUNT]] [[-I SECONDS] |
           [--interval SECONDS]]
           [--reset-interval]
           [--capture-image] [--trigger-capture]
           [--capture-movie SECONDS or COUNT] [--capture-sound]
           [--capture-tethered SECONDS, COUNT or STRING]
           [--wait-event SECONDS, COUNT or STRING]
           [--wait-event-and-download SECONDS, COUNT or STRING]
           [--keep] [--no-keep]
           [--show-info RANGE or NAME]
           [--show-exif RANGE or NAME]
           [--storage-info]
           [--summary]
           [--manual]
           [--about]
           [--shell]

DESCRIPTION

   libgphoto2(3) is a cross-platform digital camera library, and
   gphoto2(1) is a command-line client for it.

   Where an option takes a RANGE of files, thumbnails, or other data, they
   are numbered beginning at 1. A range is a comma-separated list of
   numbers or spans ("first-last"). Ranges are XOR (exclusive or), so that
   "1-5,3,7" is equivalent to "1,2,4,5,7".

   --debug
       Turn on debugging output. Debugging output is written to stderr by
       default, or to the filename given to the --debug-logfile option.

   --debug-logfile FILENAME (since 2.3.0)
       The logfile to write the debugging info to, if --debug is given.

   --debug-loglevel LEVEL (since 2.5.5)
       The verbosity of debug logging. Possible values with incrementing
       verbosity are: error, debug, data, all. Default is all.

   --hook-script FILENAME (new after 2.3.0)
       Execute the hook script FILENAME every time a certain event happens
       within gphoto2. The hook script reads the environment variable
       ACTION. It must ignore ACTION values unknown to it.

       ACTION=init
           gphoto2 has just been initialized. If the hook script returns
           with a non-zero exit code now, gphoto2 will abort.

       ACTION=start
           gphoto2 has just finished parsing the command line and is about
           to start executing the commands given on the command line.

       ACTION=download
           gphoto2 has just downloaded a file to the computer, storing it
           in the file indicated by the environment variable ARGUMENT.

       ACTION=stop
           gphoto2 is about to finish. Do your final cleanups here.

       All other environment variables are passed to the hook script
       unchanged. You can make use of that to pass data to the hook
       script.

       Hook script may be specified in the ~/.gphoto/settings file as
       gphoto2=hook-script=filename.

   -q, --quiet
       Quiet output (default=verbose).

   -v, --version
       Display version and exit.

   -h, --help
       Display options and short description.

   --usage
       Display a short usage message.

   --list-cameras
       List supported camera models.

   --list-ports
       List supported port devices.

   --stdout
       Send file to stdout.

   --stdout-size
       Print filesize before data.

   --auto-detect
       List auto-detected cameras and the ports to which they are
       connected.

   --port PATH
       Specify port device. The --list-ports prints a list of valid,
       usable ports. In case of multiple USB cameras, the --auto-detect
       shows you the specific port each camera is connected to.

   --speed SPEED
       Specify serial transfer speed.

   --camera MODEL
       Specify camera model. The --list-cameras option prints a list of
       all explicitly supported cameras.

       Most model names contain spaces: remember to enclose the name in
       quotes so that the shell knows it is one parameter. For example:
       --camera "Kodak DC240".

       Note that if you specify --camera, you must also specify --port.
       Otherwise the --camera option will be silently ignored.

   --filename FILENAME
       When downloading files from the camera, specify the file name or
       file name pattern to use when storing the downloaded file on the
       local disk. When uploading a file to the camera, specify the
       filename to store the uploaded file as on the camera.

       The --filename option accepts %a, %A, %b, %B, %d, %H, %k, %I, %l,
       %j, %m, %M, %S, %y, %%, (see date(1)) and, in addition, %n for the
       number, %C for the filename suffix, %f for the filename without
       suffix, %F for the foldername, %: for the complete filename in
       lowercase.

       Note that %: is still in alpha stage, and the actual character or
       syntax may still be changed. E.g. it might be possible to use %#f
       and %#C for lower case versions, and %^f and %^C for upper case
       versions.

       %n is the only conversion specifier to accept a padding character
       and width: %03n will pad with zeros to width 3 (e.g. print the
       number 7 as "007"). Leaving out the padding character (e.g. %3n)
       will use an implementation specific default padding character which
       may or may not be suitable for use in file names.

       Default value for this option can be specified in the
       ~/.gphoto/settings file as gphoto2=filename=value.

   --usbid USBIDS
       (Expert only) Override USB IDs.
        USBIDS must be of the form
        DetectedVendorID:DetectedProductID=
       TreatAsVendorID:TreatAsProductID to treat any USB device detected
       as DetectedVendorID:DetectedProductID as
       TreatAsVendorID:TreatAsProductID instead. All the VendorIDs and
       ProductIDs should be hexadecimal numbers beginning in C notation,
       i.e. beginning with '0x'.

       Example: --usbid 0x4a9:0x306b=0x4a9:0x306c

   -a, --abilities
       Display the camera and driver abilities specified in the libgphoto2
       driver. This all does not query the camera, it uses data provided
       by the library. Use --summary to query an overview of the camera.

   -f, --folder FOLDER
       Specify camera folder (default="/").

   -R, --recurse
       Recursion (default for download).

   --no-recurse
       No recursion (default for deletion).

   -l, --list-folders
       List folders in folder.

   -L, --list-files
       List files in folder.

   -m, --mkdir NAME
       Create a directory.

   -r, --rmdir NAME
       Remove a directory.

   -n, --num-files
       Display number of files.

   -p, --get-file RANGE
       Get files given in range.

   -P, --get-all-files
       Get all files from folder.

   -t, --get-thumbnail RANGE
       Get thumbnails given in range.

   -T, --get-all-thumbnails
       Get all thumbnails from folder.

   --get-raw-data RANGE
       Get raw data given in range.

   --get-all-raw-data
       Get all raw data from folder.

   --get-audio-data RANGE
       Get audio data given in range.

   --get-all-audio-data
       Get all audio data from folder.

   --upload-meta-data FILENAME
       Upload meta data for the specific file, taken from a file prefix
       with meta_ .

   --get-meta-data RANGE
       Get meta data given in range.

   --get-all-meta-data
       Get all meta data from folder.

   --force-overwrite
       Overwrite files without asking.

   --skip-existing
       Skip files if they exist already on the local directory.

   --new
       Only get not already downloaded files. This option depends on
       camera support of flagging already downloaded images and is not
       available for all drivers.

   -d, --delete-file RANGE
       Delete files given in range.

   -D, --delete-all-files
       Delete all files in folder (defaults to --no-recurse).

   -u, --upload-file FILENAME
       Upload a file to camera.

   --capture-preview
       Capture a quick preview.

   --show-preview
       Capture a quick preview and displays it in the terminal using Ascii
       Art (if aalib was used during build).

   -F COUNT, --frames COUNT
       Number of frames to capture in one run. Default is infinite number
       of frames.

   -I SECONDS, --interval SECONDS
       Time between capture of multiple frames.

       (Since 2.4) If SIGUSR1 signal is received, a picture is taken
       immediately without waiting for the end of the current interval
       period (see the section called "SIGNALS"). A value of -1 will let
       gphoto2 wait forever, i.e. until a signal arrives. See also
       --reset-interval.

   --reset-interval
       Setting this option will reset the time interval to the value given
       by the -I|--interval option when a SIGUSR1 signal is received in
       time-lapse mode.

   --capture-image
       Capture an image and keep it on the camera.

   --capture-image-and-download
       Capture an image and download it immediately to the computer.

   --trigger-capture
       Triggers the capture an image and return. If you want to get the
       image downloaded, see --wait-event-and-download.

       This feature is only available for some camera brands and drivers.

   --keep
       When doing --capture-image-and-download or interval capture, this
       option will keep the images on the memory card of the camera.

   --no-keep
       When doing --capture-image-and-download or interval capture, this
       option will not keep the images on the memory card of the camera
       after downloading them during capture. (default)

   --keep-raw
       When doing --capture-image-and-download or interval capture, this
       option will keep the RAW images on the memory card of the camera,
       but still download the JPEG images. This is useful when doing dual
       mode capture and you want to review the JPEGs already during
       capture.

   --capture-movie SECONDS
       Capture a movie. If the camera supports previews, this will capture
       a stream of previews (motion-jpeg) as fast as the camera can.

       If not argument is specified, it will capture preview frames until
       you press Ctrl-C. Arguments that can be specified are either
       seconds of capture or number of preview frames.

   --capture-sound
       Capture an audio clip. No driver supports this at this time.

   --capture-tethered SECONDS, MILLISECONDS, COUNT or MATCHSTRING
       Lets gphoto2 wait for notifications from the camera that an object
       was added. This is useful for tethered capture, where pressing the
       shutter on the camera immediately transfer the image to the machine
       for processing.

       Together with the --hook-script to immediately postprocess or
       display the images this can help a studio workflow.

       This option requires support in the driver and by the camera,
       currently newer Canon EOS and Nikon DLSR work.

   --wait-event SECONDS, MILLISECONDS, COUNT or MATCHSTRING,
   --wait-event-and-download SECONDS, MILLISECONDS, COUNT or MATCHSTRING
       Lets gphoto2 wait for notifications from the camera for various
       events. This is useful for seeing what the camera does and waiting
       for objects to be added. The objects are kept on camera in the
       "--wait-event" version, with "--wait-event-and-download" they are
       downloaded.

       --wait-event-and-download is equivalent to --capture-tethered.

       The time to wait can be either specified as full seconds with a "s"
       suffix, a number of milliseconds with a "ms" suffix, as a number of
       events (just a number), or a sub-string to match. If nothing
       happens, a timeout is generated after 1 second, so a "wait-event=5"
       will take at most 5 seconds. A "--wait-event=5s" will take exactly
       5 second.

       If no argument is given, the wait time is 1 million events
       (basically forever).

       In the download variant this can be used together with the
       --hook-script to immediately postprocess or display the images this
       can help a studio workflow.

       This option requires support in the driver and by the camera,
       currently newer Canon EOS and Nikon DSC are known to work.

   --show-info RANGE
       Show information for a single or multiple images, like width,
       height, size and/or the capture time

   --config
       Starts a ncurses based text configuration menu. gphoto2 needs to
       built against CDK for this feature.

   --list-config
       List all configuration entries.

   --list-all-config
       List all configuration entries and their values and choices.

       This command is a combination of --list-config and calling
       --get-config on all the entries.

   --get-config CONFIGENTRY
       Get the specified configuration entry.

       This command will list the type, the current value and also the
       available options of this configuration value.

   --set-config CONFIGENTRY=CONFIGVALUE
       Set the specified configuration entry. For lists of choices of
       values this setting first looks up CONFIGVALUE as value and then as
       index into the choice list. Since this is not fully clear, you can
       use --set-config-index or --set-config-value to be more clear what
       is searched for.

       Look at the output of --get-config to see what values are possible
       to set here.

   --set-config-index CONFIGENTRY=CONFIGINDEX
       Set the specified configuration entry by specifying the index into
       the list of choices for the configuration value. This of course
       only works for configuration settings that offer list of choices.

       Look at the output of --get-config to see what indices are possible
       to set here.

   --set-config-value CONFIGENTRY=CONFIGVALUE
       Set the specified configuration entry by specifying its new value.
       For lists of choices the value is looked up and set.

       Look at the output of --get-config to see what values are possible
       to set here.

   --reset
       Resets the specified (or autodetected) USB port.

       This command resets the USB port of either the first auto-detected
       camera, or the port specified with --port usb:XXX,YYY. This option
       is useful if somehow the protocol talking to the camera locked up
       and simulates plugging out and in the camera.

   --storage-info
       Display information about the camera's storage media.

   --summary
       Summary of camera status.

   --manual
       Camera driver manual.

   --about
       About the camera driver.

   --shell
       Start the gphoto2 shell, an interactive environment. See SHELL
       MODEfor a detailed description.

SHELL MODE

   The following commands are available:

   cd DIRECTORY
       Change to the specified directory on the camera.

   ls
       List the contents of the current directory on the camera.

   lcd DIRECTORY
       Change to the specified directory on the local machine.

   get FILENAME
       Download the specified file to the current directory.

   put FILENAME
       Upload the specified file from the current system directory to the
       cameras current directory.

   get-thumbnail FILENAME
       Download the specified thumbnail to the current directory.

   get-raw FILENAME
       Download the specified raw data to the current directory.

   show-info FILENAME
       Show information of the specified file.

   delete FILENAME
       Delete the specified file or directory.

   mkdir DIRECTORY
       Creates a directory named "DIRECTORY".

   rmdir DIRECTORY
       Removes a directory named "DIRECTORY".

   show-exif FILENAME
       Show EXIF information (only if compiled with EXIF support).

   capture-image
       Captures a single image and keeps it on the camera.

   capture-image-and-download
       Captures a single image and downloads it from the camera.

   capture-preview
       Captures a preview image and downloads it from the camera.

   list-config
       Lists all configuration values.

   get-config NAME
       Gets the configuration specified by "NAME".

   set-config NAME=VALUE
       Sets the configuration specified by "NAME" to "VALUE".

   set-config-value NAME=VALUE
       Sets the configuration specified by "NAME" to "VALUE".

   set-config-index NAME=VALUE
       Sets the configuration specified by "NAME" to the "INDEX" into the
       list of choices. Works only for Menu or Radio button entries.

   wait-event COUNT or SECONDS
       Waits for events from the camera for the specified time in SECONDS
       (if suffixed with s) or the COUNT of events from the camera, where
       every seconds a timeout event happens. Newly added images are kept
       on the camera.

       Default is 1 event.

   wait-event-and-download COUNT or SECONDS, capture-tethered COUNT or
   SECONDS
       Waits for events from the camera for the specified time in SECONDS
       (if suffixed with s) or the COUNT of events from the camera, where
       every seconds a timeout event happens. Newly added images are
       downloaded from the camera.

       Default is 1 event.

   help, ?
       Displays command usage.

   exit, quit, q
       Exit the gphoto2 shell.

ENVIRONMENT VARIABLES

   CAMLIBS
       If set, defines the directory where the libgphoto2 library looks
       for its camera drivers (camlibs). You only need to set this on OS/2
       systems and broken/test installations.

   IOLIBS
       If set, defines the directory where the libgphoto2_port library
       looks for its I/O drivers (iolibs). You only need to set this on
       OS/2 systems and broken/test installations.

   LD_DEBUG
       Set this to all to receive lots of debug information regarding
       library loading on ld based systems.

   USB_DEBUG
       If set, defines the numeric debug level with which the libusb
       library will print messages. In order to get some debug output, set
       it to 1.

SIGNALS

   SIGUSR1 (since 2.4)
       In time-lapse capture mode, receiving a SIGUSR1 signal makes
       gphoto2 take a picture immediately.

       If the --reset-interval option is given, the time counter is reset
       to the value given by the -I|--interval option. Note that the
       camera will need some time (from 50ms to a few seconds) to actually
       capture the image.

SEE ALSO

   libgphoto2(3), The gPhoto2 Manual[1], The gphoto.org website[2],
   Digital Camera Support for UNIX, Linux and BSD[3]

EXAMPLES

   gphoto2 --list-ports
       Shows what kinds of ports (USB and serial) you have.

   gphoto2 --auto-detect
       Shows what camera(s) you have connected.

   gphoto2 --list-files
       List files on camera.

   gphoto2 --get-file 7-13
       Get files number 7 through 13 from the list output by gphoto2
       --list-files.

   gphoto2 --capture-image --interval 60 --hook-script
   /usr/share/doc/gphoto2/test-hook.sh
       Capture one image every 60 seconds from now to eternity. The
       example hook script will be called after each captured image has
       been stored on the computer.

   To track down errors, you can add the --debug parameter to the gphoto2
   command line and, if dealing with USB problems, setting the environment
   variable USB_DEBUG=1.

AUTHORS

   Tim Waugh
       Author.

   Hans Ulrich Niedermann, current maintainer <gp@n-dimensional.de>
       Author.

   Michael J. Rensing
       Author.

   Marcus Meissner <marcus@jet.franken.de>
       Author.

   Miscellanous Contributors.

   The gPhoto2 Team
       Author.

   Tim Waugh <twaugh@redhat.com>
       Original man page author.

   Hans Ulrich Niedermann <gp@n-dimensional.de>
       Current man page editor.

NOTES

    1. The gPhoto2 Manual
       http://www.gphoto.org/doc/manual/

    2. The gphoto.org website
       http://www.gphoto.org/

    3. Digital Camera Support for UNIX, Linux and BSD
       http://www.teaser.fr/~hfiguiere/linux/digicam.html

[FIXME: source]    <pubdate>2009-08-09</pubdate>August 2006         GPHOTO2(1)





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.