CameraControllerApi
The CameraControlerApi is an attempt to control a DSLR via REST functionality. At the moment is it possible to change the camera settings (ISO, aperture, time), take pictures and stream the live view of the camera (only tested with a Nikon D90).
Web-Interface
http://device_ip:port/webif/Demonstration
How to use
You will get all valid data for a command from the “list” action.
Settings
List the configuration with validate values
http://device_ip:port/settings?action=listISO
http://device_ip:port/settings?action=iso&value=200Aperture
http://device_ip:port/settings?action=aperture&value=f/22Shutter Speed
http://device_ip:port/settings?action=speed&value=1/1000Whitebalance
http://device_ip:port/settings?action=whitebalance&value=CloudyCapture
take a picture
http://device_ip:port/capture?action=shotautofocus
http://device_ip:port/capture?action=autofocusFile system
list of the available images on camera
http://device_ip:port/fs?action=listget an image
http://device_ip:port/fs?action=get&value=filename.jpg&path=/path/to/fileEach method will response with a JSON file. If you want a XML response you have to put the command “&type=xml” on the end of the upper commands
Live View
live view will be generated as mjpeg-stream. you can easy implement this stream in html inside an image tag e.g:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Live View</title> </head> <body> <img src="https://localhost:8888/liveview" /> </body> </html>Dependencies
apt-get install libboost-dev libboost-system-dev libmicrohttpd-dev libgphoto2-dev libexiv2-dev
- libgphoto
- libboost
- libboost-system
- libmicrohttpd
- libexiv2
GitHub – scheckmedia/CameraControllerApi
GitHub – scheckmedia/CameraControllerApi was last modified: July 13th, 2017 by
