From 2f6e8a407e3b0e17d3f50f0d28ec08cea26778d9 Mon Sep 17 00:00:00 2001 From: Christian Franke Date: Tue, 21 Jan 2014 02:55:00 +0100 Subject: Initial commit --- server.js | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 server.js (limited to 'server.js') diff --git a/server.js b/server.js new file mode 100644 index 0000000..c887b1f --- /dev/null +++ b/server.js @@ -0,0 +1,39 @@ +var express = require('express'); +var fs = require('fs'); +var MjpegProxy = require('mjpeg-proxy').MjpegProxy; + +var app = express(); + +var cameras = [ + { + url: 'http://admin:123456@192.168.0.117/videostream.cgi?rate=1' + }, + { + url: 'http://admin:123456@192.168.0.178/videostream.cgi?rate=1' + } +]; + +var still_frames = [ + fs.readFileSync(__dirname + '/noise.jpg'), + fs.readFileSync(__dirname + '/noise2.jpg'), +]; + +for (var camera_idx in cameras) { + var camera = cameras[camera_idx]; + camera.proxy = new MjpegProxy(camera.url, still_frames) + app.get('/cam/' + camera_idx + '/stream.mjpeg', camera.proxy.proxyRequest); + app.use('/cam/' + camera_idx + '/browse', + express.static(__dirname + '/cam_public')); +} + +app.get('/blackout', function(req, res) { + for (var camera_idx in cameras) { + var camera = cameras[camera_idx]; + + camera.proxy.on_air = !camera.proxy.on_air; + } + res.send('OK'); +}); + + +app.listen(8080); -- cgit v1.2.1