Skip to content

Cobianet NVR, fast and simple Webcam monitoring and recording

Notifications You must be signed in to change notification settings

sourcode/cobia-nvr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cobia-nvr is an open source Network Video Recorder for streaming and recording live IP cams.

Check out the live demo: http://nvrdemo.cobianet.com:8888

Known Working Cameras

  • UBNT Aircam - stream urls
  1280X720 -- rtsp://camera-ip-address:554/live/ch00_0
  640X480 -- rtsp://camera-ip-address:554/live/ch01_0
  320X240 -- rtsp://camera-ip-address:554/live/ch02_0
  160X112 -- rtsp://camera-ip-address:554/live/ch03_0

Requirements

  • node.js
  • vlc
  • ffmpeg
  • x264
  • Linux (any flavor)

Installation

Ubuntu 12.04

ubuntu-cobia-nvr-install.sh should install everything for you on Ubuntu from a fresh install.

This script will take a long time to run, it downloads and builds all of the above requirements from source.

Simply run this command on a Ubuntu box and wait for everything to finish building:

wget https://raw.github.com/cobianet/cobia-nvr/master/ubuntu-cobia-nvr-install.sh
chmod +x ubuntu-cobia-nvr-install.sh
./ubuntu-cobia-nvr-install.sh

Then you just need to edit config.js and run node app.js to start the server.

Other Linux

Build node, vlc, ffmpeg and x264 from source.

Clone cobia-nvr from Github.

Then you just need to edit config.js and run node app.js to start the server.

Configuration

Sample config.js :

var config = {}

// config.externalAddress - IP or DNS
config.externalAddress = 'nvrdemo.cobianet.com';

// config.cams - configure each camera here
// name : string - name of camera, uniquely identifies camera
// stream : string - stream url for camera
// streamWidth : int - image width of live MJPEG stream you will view
// streamHeight : int - image height of live MJPEG stream you will view
// streamFps : int - image FPS of live MJPEG stream you will view
// streamVb : int - image VB of live MJPEG stream you will view
// record : boolean - should this camera record h264 true/false
// recordScale : float - what scale should we record at
// recordFps : int - what FPS should we record at
// recordVb : int - what VB should we record at
// recordLimit : int - number of chunks to record, 1 chunk = 1 hour, 24 chunks = 1 day, 168 chunks = 1 week

config.cams = [
{'name':'server_room','stream':'rtsp://192.168.80.4:554/live/ch01_0','streamWidth':640,'streamHeight':480,'streamFps':1,'streamVb':192,'record':true,'recordScale':1,'recordFps':.5,'recordVb':64,'recordLimit':10},
{'name':'main_room','stream':'rtsp://192.168.80.82:554/live/ch01_0','streamWidth':640,'streamHeight':480,'streamFps':1,'streamVb':192,'record':false,'recordScale':1,'recordFps':.5,'recordVb':64,'recordLimit':10},
{'name':'tech_room','stream':'rtsp://192.168.80.83:554/live/ch01_0','streamWidth':640,'streamHeight':480,'streamFps':1,'streamVb':192,'record':false,'recordScale':1,'recordFps':.5,'recordVb':64,'recordLimit':10},
];

// config.title - NVR title
config.title = 'Cobianet Cams NVR';

// config.headAppend - append this string/html to the end of 
config.headAppend = '';

// config.bodyAppend - append this string/html to the end of 
config.bodyAppend = '';

module.exports = config;

// VB data usage estimates
// 128 Vb for 24 hours = ~1.4gb
// 128 Vb for 30 days = ~42gb

About

Cobianet NVR, fast and simple Webcam monitoring and recording

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published