mirror of http://git.sublab.org/mjpegplexer/
40 lines
911 B
JavaScript
40 lines
911 B
JavaScript
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);
|