# Interface a high-quality camera to a computer in real time?

I have a project that requires high-quality video and stills to be acquired (almost) live with computer controls. By "almost" live, I mean that a five second delay is acceptable, but five minutes isn't. (And by "acquired", I mean a computer readable file, JPG, H.264 or otherwise.)

So far, I'm using a Sanyo VDC HD 3500 camera, that gives me 4M stills and 1920x1080 30 fps video through an IP camera. However, 4M is low resolution for stills, and the optics (for both stills and videos) leaves much to be desired. The HD3500 costs ~US$900. Canon's EOS 550D/Rebel T2i has ridiculously good optics, can do 18 MP stills, and 1080p that is way better than the Sanyo... And costs US$700 - US$800. A GoPro HERO HD Camera can do wide-angle 1080p with better optics than the Sanyo... For US$260.

And there are others that optically and sensorly fit the bill much better than the Sanyo. However, neither the Canon nor the GoPro seem to yield to computer control and/or live video streaming - they both write their respective streams to an SD card from which you have to read stuff later, when the camera is not taking pictures.

How do I modify a GoPro, T2i or any other cheap point&shoot / DSLR to provide the interface I need? Alternatively, is it possible to construct an SD card which is not actually a card, but rather a computer posing as a card so I can get the streams as they are being written?

• I'm assuming you've tried the USB/HDMI/HDTV interfaces already present on these cameras? I've never put any effort into getting data from these ports while taking pictures, but they offer a faster interface than SD card removal; you can probably take a picture while the camera is still connected... – Kevin Vermeer Mar 25 '11 at 19:07
• @reemrevnivek - The HDMI/HDTV interfaces give you a picture you can display on a screen, but I need a picture I can process with a computer; I'll update the question to make that clear. At least on the face of it, neither the T2i nor the GoPro let you read the stream video or stills while "tethered". – user3591 Mar 25 '11 at 20:58
• Sounds like part of a cool project. So is this part of some sort of robot computer vision thing? – davidcary Mar 26 '11 at 1:52

Several DSLRs lets you control them from a computer. Check out Choosing Tethered Shooting Software for Nikon DSLR Cameras for an example on how this can be done with a Nikon DSLR.

• thanks, I will look into the Nikons. Do you have experience with tethered video shoots on the Nikons? – user3591 Mar 25 '11 at 21:01
• I have got a D700 which only stake stills, so no video. – trondd Mar 27 '11 at 6:11

CHDK is an enhanced, free software replacement firmware for many Canon digital cameras; I see at least a couple of those cameras are 10 Mpix. There is a CHDK wiki. Apparently you can write software in C, Lua, or uBasic that runs directly on the camera. It might be easy to re-program to do exactly what you want it to do.

You could try libgphoto2 remote control feature. It seems to support the EOS 550D you mentioned.

There is also Eye-fi which is an SD card that automatically sends all photos to a PC over WiFi.

"The HDMI/HDTV interfaces give you a picture you can display on a screen" or capture to a PC.

PEXHDCAP & ECHDCAP StarTech | AVERMEDIA Game Broadcaster