Shinobi is the Open Source CCTV platform written in Node.JS. Designed with multiple account system, Streams by WebSocket, and Save to WebM. Shinobi can record IP Cameras and Local Cameras.
- Defeats stream limit imposed by browsers
- With Base64 (Stream Type) and JPEG Mode (Option)
- Records IP Cameras and Local Cameras
- Streams by WebSocket, HLS (includes audio), and MJPEG
- Save to WebM and MP4
- Can save Audio
- Push Events - When a video is finished it will appear in the dashboard without a refresh
- Region Motion Detection (Similar to ZoneMinder Zone Detection)
- Represented by a Motion Guage on each monitor
- "No Motion" Notifications
- 1 Process for Each Camera to do both, Recording and Streaming
- Timeline for viewing Motion Events and Videos
- Sub-Accounts with permissions
- Monitor Viewing
- Monitor Editing
- Video Deleting
- Separate API keys for sub account
- Cron Filters can be set based on master account
- Stream Analyzer built-in (FFprobe GUI)
- Monitor Groups
- Can snapshot images from stream directly
- Lower Bandwith Mode (JPEG Mode)
- Snapshot (cgi-bin) must be enabled in Monitor Settings
- Control Cameras from Interface
- API
- Get videos
- Get monitors
- Change monitor modes : Disabled, Watch, Record
- Embedding streams
- Dashboard Framework made with Google Material Design Lite, jQuery, and Bootstrap
As much as Shinobi is free, development and research is not. Please consider supporting Shinobi.
Paid Support / Donation : from @moeiscool, The Lead Developer
https://github.com/moeiscool/Shinobi/wiki
https://github.com/moeiscool/Shinobi/wiki/Supported-Cameras
https://github.com/moeiscool/Shinobi/wiki/Supported-Systems
Moe Alam
Follow me on Twitter https://twitter.com/moe_alam
Paid license required only if you choose to bill your users for the use of Shinobi. Personal and Educational purposes do not require a license. Educational Institutions, such as high schools and universities, do not require the purchase of a license.