Support This Project

Capture Images from the Command Line

Download v0.2.5 (44k)

ImageSnap is a Public Domain command-line tool that lets you capture still images from an iSight or other video source. You might remember Axel Bauer's original isightcapture tool (that is no longer supported but still works on most systems). With ImageSnap I hope we'll be able to move forward and add features, adapt to the ever-changing Apple architectures, etc.

Follow the file release RSS feed...


Copy the imagesnap file to someplace on your path like /usr/local/bin, or leave it in a "current directory," and call it with ./imagesnap instead.



To capture an image simply run the program from the command line.

$ imagesnap
Capturing image from device "iSight"..................snapshot.jpg

To specify a filename, make that your last argument:

$ imagesnap icu.jpg
Capturing image from device "iSight"..................icu.jpg

If you have multiple video devices attached to your computer, use the -l ("el") flag to list them:

$ imagesnap -l
Video Devices:

To select a specific video device use the -d device flag:

$ imagesnap -d DV
Capturing image from device "DV"..................snapshot.jpg

To output a jpeg representation to standard out (stdout), use a dash for the filename:

$ ssh johndoe@somewhere.com /usr/local/bin/imagesnap - > snapshot.jpg
$ open snapshot.jpg

Thanks to Bas Zoetekouw for adding timelapse capability. Freebie: if you want to convert the fielnames, which have dates embedded in them, to a simple serial number for use with QuickTimer Player 7, try this:

for f in *.jpg; do mv $f ${f:0:14}.jpg; done

All commands:

 USAGE: imagesnap [options] [filename]
Version: 0.2.5
Captures an image from a video device and saves it in a file.
If no device is specified, the system default will be used.
If no filename is specfied, snapshot.jpg will be used.
Supported image types: JPEG, TIFF, PNG, GIF, BMP
  -h          This help message
  -v          Verbose mode
  -l          List available video devices
  -t x.xx     Take a picture every x.xx seconds
  -q          Quiet mode. Do not output any text
  -w x.xx     Warmup. Delay snapshot x.xx seconds after turning on camera
  -d device   Use named video device

Clever Scripts

MacOSXHints.com has had a number of useful hints over time on what to do with command line capturing from an iSight camera (using the original isightcapture tool). The ideas apply the same to ImageSnap. Here are some of the hints out there:

You could also make a sneaky Automator workflow that takes a picture discreetly, if you don't want to use the Apple "Take Video Snapshot" action which presents a preview window. Use the Run Shell Script action, and echo the filename to the next component:

Image Formats

The following image formats are supported and are determined by the filename extension:


A Note About Public Domain

I have released this software into the Public Domain. That means you can do whatever you want with it. Really. You don't have to match it up with any other open source license—just use it. You can rename the files, do whatever you want. If your lawyers say you have to have a license, contact me, and I'll make a special release to you under whatever reasonable license you desire: MIT, BSD, GPL, whatever.

blog comments powered by Disqus