Фотография с вебкамеры MacBook в Node.js

Существует модуль imagesnap.js, который включает вебкамеру MacBook, делает с неё фотографию и сохраняет её в файл. Он является враппером над imagesnap, и конечно работает только в OSX. Использование очень простое:

var imagesnapjs = require('imagesnapjs'), fs = require('fs');

var filename = '/Users/catethysis/webcam/webcam.jpg';

fs.exists(filename, function (exists) {
if(exists)
fs.unlinkSync(filename);

imagesnapjs.capture(filename, { cliflags: '-w 2'}, function(err) {
console.log(err ? err : 'Success!');
});
});

Он не перезаписывает существующий файл, поэтому я сначала проверяю наличие файла, и если он есть — удаляю его.

К недостаткам модуля можно отнести скудную документацию, и возможность съёмки только фотографий, но это ограничение самой утилиты imagesnap. Для видео вам скорее всего понадобится http://github.com/wearefractal/camera.