captor
v0.3.0
Published
Desktop screen capture for nodejs
Downloads
3
Readme
Captor
ffmpeg screen capture utility for nodejs.
npm install --save captor
const Captor = require('captor')
const captor = new Captor()
// get a list of available capture devices
captor.listDevices().then(deviceList => {
// match a device name
var deviceIndex = -1
Object.keys(deviceList).forEach(index => {
if(deviceList[index] === 'Capture screen 0'){
deviceIndex = index
}
})
return new Promise((resolve, reject) => {
if(deviceIndex !== -1){
resolve(deviceIndex)
}else{
reject(`${videoDeviceName} not found in deviceList: ${JSON.stringify(deviceList)}`)
}
})
}).then(deviceIndex => {
// run screen capture for 10s, capturing 6 frames per second
var imagesPath = `./tmp/image_${Date.now()}_%04d.jpg`
return captor.startCapture({
videoDevice: deviceIndex,
output: imagesPath,
duration: 10,
fps: 6
})
}).then(imagesPath => {
// pass the frames onto the video encoder
return captor.encodeVideo({
input: imagesPath,
output: `out_${Date.now()}.mp4`
})
}).then(videoPath => {
console.log('RECORDING COMPLETE!!', videoPath)
}).catch(e => { console.error('ERROR CODE:', e) })