How can I tether a camera to my computer and issue it commands? What is the cheapest camera I could buy that would allow me this functionality? Is it possible to use java and/or a batch file to do so?

I want to tether a camera to my computer as part of making a 3d scanner. I need to be able to issue commands to the camera from my computer to start and stop recording, and then retrieve the saved footage and put it onto my computer. Ideally I would be able to integrate this into a program using java and batch.

  • While it isn't an exact duplicate due to wanting to be able to do it programatically. It is a duplicate when we add the detail that many of the vendors (including Canon and I believe Nikon) do support pulling information from the camera directly. How to use that functionality is more of a programing question than a photography one though.
    – AJ Henderson
    Jun 19 '13 at 13:57

A lot of cameras can be controlled from a computer. Not sure if every camera out there can, but at least in my experience, every camera I used did.

I'm sure about DSLRs: all the DSLR cameras from Nikon, Canon and Pentax have such features. I also know for sure that Canon DSLRs are sold with EOS Utility, that allows you to control the camera from your computer.

Most of them use a protocol called PTP to talk to the pc, so you just need something on your pc that talks ptp to your camera (or more recently MTP). Looking at this page you can see that there are several projects and libraries to talk PTP (anyway most of them seems obsolete, anyway).

You may try gphoto. I've got very good experiences with it. It gives you some libraries to make your pc talk to a lot of cameras, and even a command line utility to test it out that you can use even in shell scripts. I always happily used it with unix systems, and it's included in any linux distro (don't if it works with Widnows).

If you need to buy a camera, and like to use gphoto, you may look at gphoto's list of supported cameras, so you can get something that works fine with it.

Not the answer you're looking for? Browse other questions tagged or ask your own question.