nodejs binding for firefly 2 camera
Introduction: This is a wrapper for the FlyCapture2 Api from Point Grey research, http://www.ptgrey.com/support/downloads/documents/Doxygen/html/annotated.html.
Windows and Linux are supported (more or less). Macintosh is not. Point Grey Research does not support an SDK for mac. If someone can find a version it would be a big help
It compiled once for me on Windows 7, but I would like to learn how to ship with a binary
get nodejs and npm, from nodejs.org
Install node-gyp from https://github.com/TooTallNate/node-gyp. Use his installation instructions, they are good.
Download and install Point grey SDK from http://www.ptgrey.com/support/downloads/downloads_admin/Index.aspx;
npm install node-firefly2
var addon = require('node-firefly2'); var fs = require('fs'); var sys = require('sys'); var Png = require('png').Png;//note doesn't work on windows. use png-sync instead // var cam = new addon(); console.log( 'num cameras' , cam.getNumCameras()) console.log("start Camera 0 ", cam.startCamera()) // //set some default parameters. cam.autoGain(true); cam.autoExposure(true); cam.autoWhiteBalance(true); cam.triggerOff(false);//True uses the cable. Note don't use true unless you have a cable. It will wait forever. // //take a few just to get it warmed up. might help? cam.takePhoto();cam.takePhoto();cam.takePhoto();cam.takePhoto() var pic = cam.takePhoto();//actually take the picture var png2 = new Png(pic,640,480,'rgb') var png_image = png2.encodeSync(); fs.writeFileSync('../pics/png_test.png', png_image.toString('binary'), 'binary');