All Projects → timelapseplus → node-sony-camera

timelapseplus / node-sony-camera

Licence: MIT License
NodeJS module for Sony camera wifi control

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to node-sony-camera

timelapse
Shell scripts for capturing and compiling timelapse photography
Stars: ✭ 27 (-22.86%)
Mutual labels:  photography
tabtrekker
Explore the world one tab at a time (Firefox addon).
Stars: ✭ 42 (+20%)
Mutual labels:  photography
moul
The minimalist publishing tool for photographers
Stars: ✭ 147 (+320%)
Mutual labels:  photography
OpenSkyStacker
Multi-platform stacker for deep-sky astrophotography.
Stars: ✭ 80 (+128.57%)
Mutual labels:  photography
Photo-Sphere-Viewer
A JavaScript library to display Photo Sphere panoramas.
Stars: ✭ 1,198 (+3322.86%)
Mutual labels:  photography
photo-stream
Self-hosted, super simple photo stream
Stars: ✭ 184 (+425.71%)
Mutual labels:  photography
camera.zero
Combining Camera Zero with an Arducam 12MP camera, a Raspberry Pi Zero WH, a PiMoRoNi trackball breakout, and an Adafruit 16-LED NeoPixel ring will result in a neat little screenless camera that can be controlled with your thumb.
Stars: ✭ 26 (-25.71%)
Mutual labels:  photography
FocusBracket
Proof-of-concept app for focus bracketing on Sony Alpha cameras.
Stars: ✭ 60 (+71.43%)
Mutual labels:  sony-alpha-cameras
Monotone
An Unsplash Application for iOS.
Stars: ✭ 181 (+417.14%)
Mutual labels:  photography
Photini
An easy to use digital photograph metadata (Exif, IPTC, XMP) editing application.
Stars: ✭ 113 (+222.86%)
Mutual labels:  photography
libopenraw
libopenraw: RAW file parsing and processing library (mirror and WiP)
Stars: ✭ 42 (+20%)
Mutual labels:  photography
TransparentCameraBar
Set the opacity, hide or shrink the camera bars.
Stars: ✭ 15 (-57.14%)
Mutual labels:  photography
gatsby-themes
A collection of open source, well designed, highly customizable and 100% free Gatsby themes for blazing fast sites. We are working on the next version of the Flex theme. See https://github.com/reflexjs/reflexjs
Stars: ✭ 296 (+745.71%)
Mutual labels:  photography
gphoto2.cr
Crystal shard wrapping libgphoto2
Stars: ✭ 14 (-60%)
Mutual labels:  photography
picsort
Organize your photos by date in one click 👏
Stars: ✭ 22 (-37.14%)
Mutual labels:  photography
RethinkRAW
RethinkRAW is an unpretentious, free RAW photo editor.
Stars: ✭ 37 (+5.71%)
Mutual labels:  photography
Flutter-Photography-Application
Flutter Photography Application Design and Animation - day 22
Stars: ✭ 73 (+108.57%)
Mutual labels:  photography
Personalised-aesthetic-assessment-using-residual-adapters
Jupyter notebooks used as supporting material for an msc thesis about personalised aesthetic assessment using residual adapters.
Stars: ✭ 19 (-45.71%)
Mutual labels:  photography
hexo-theme-griddy
Hexo theme for artist & photographer showing their work that created with Bulma CSS Framework
Stars: ✭ 22 (-37.14%)
Mutual labels:  photography
cgallery
an easy to use, minimalistic image gallery script for your website
Stars: ✭ 17 (-51.43%)
Mutual labels:  photography

SonyCamera

Originally forked from https://github.com/eqot/RemoteCamera

Rebuilt as a library with event support.

Installation

npm install sony-camera

Or, for development and using the demo app:

git clone https://github.com/timelapseplus/node-sony-camera.git
cd node-sony-camera
npm install

Usage

var SonyCamera = require('sony-camera');

var cam = new SonyCamera();

cam.on('update', function(param, data) {
	console.log("updated: " + param  + " = " + data.current);
});

cam.connect(); // puts the camera in remote mode and starts monitoring events

Properties

cam.params

Contains a list of parameters available. Example:

cam.params: 
 { cameraFunction: { current: 'Remote Shooting', available: [Object] },
   postviewImageSize: { current: '2M', available: [Object] },
   shootMode: { current: 'still', available: [Object] },
   exposureMode: { current: 'Manual', available: [] },
   flashMode: { current: 'on', available: [] },
   focusMode: { current: 'MF', available: [Object] },
   isoSpeedRate: { current: '1250', available: [Object] },
   shutterSpeed: { current: '1/60', available: [Object] },
   fNumber: { current: '5.6', available: [Object] }
 }

Methods

cam.connect(callback)

Puts the camera in remote control mode and starts monitoring events. Required before calling any other methods.

cam.disconnect(callback)

Disables remote control mode and stops monitoring events. After disconnecting, cam.connect() will have to be called before any other methods.

cam.set(param, value, callback)

Sets a parameter. Check the cam.params property to find available options. The (optional) callback has an error argument.

// example
cam.set('fNumber', '5.6');

cam.capture([multipleCallback,] callback)

Takes a picture. If set, optional multipleCallback boolean argument, causes the callback to be called twice -- once when the capture is complete (includes image name), and again when the image is downloaded. If there is an error, the callback is not called again.

// example
cam.capture(true, function(err, name, imageData) {
	if(err) {
		console.log("error: ", err);
	}
	if(image) {
		console.log("received image buffer for " + name + " with a length of " + imageData.length + "bytes");
	} else if(name) {
		console.log("capture complete: " + name);
	}
});

cam.startViewfinder(callback)

Starts streaming liveview, firing the "liveviewJpeg" event repeatedly for each liveview frame until cam.stopViewfinder() is called.

cam.stopViewfinder(callback)

Stops streaming liveview, disabling the "liveviewJpeg" event.

Events

cam.on('update', function(param, data))

Fired whenever a parameter on the camera changes. The data object has two properties: data.current (the current value), and data.available, an array of possible options.

cam.on('liveviewJpeg', function(jpegBuffer))

Fired repeatedly when liveview is enabled. Returns a buffer with the jpeg data for the current frame.

Demo

alt text

The included demo is a lightweight app to show the basic features, allowing interaction with the camera in realtime with liveview and live-updating parameters.

1. Setup:

cd node-sony-camera/demo
npm install

2. Connect computer wifi to camera

On the camera, go to Menu->Appication->Smart Remote Control to enable remote wifi mode, then connect the computer to the wifi network shown on the camera screen.

3. Start demo app

node ./server.js

4. Open http://localhost:3000/

License

Copyright © 2013-2014 Ikuo Terado, 2017 Elijah Parker. Released under the MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].