UNMETERED.Cam by UNMETERED.IO
Welcome to UNMETERED.Cam

Cloud Hosting for Cameras

Network Video Recording Made Easy

UNMETERED.Cam is built on Shinobi, A modern open source CCTV solution. Shinobi can record videos, get notifications on motion, and more. All running on high performance servers located around the globe.

Cloud Digital Video Recorders

Built on Shinobi

Penguin


Per Month

  • 5 Cameras
  • 2GB RAM
  • 50GB Storage Space
  • Unmetered 200Mbit/s
  • x2 Core Processor (x86 x64)
  • Business License from Shinobi
  • Tiny Support from Shinobi
  • Learn More

Husky


Per Month

  • 8 Cameras
  • 4GB RAM
  • 100GB Storage Space
  • Unmetered 200Mbit/s
  • x4 Core Processor (x86 x64)
  • Business License from Shinobi
  • Micro Support from Shinobi
  • Learn More

Lion


Per Month

  • 20 Cameras
  • 30GB RAM
  • 300GB Storage Space
  • Unmetered 1000Mbit/s
  • x4 Core Processor (x86 x64)
  • Business License from Shinobi
  • Enterprise Support from Shinobi
  • Learn More

Leopard


Per Month

  • 30 Cameras
  • 60GB RAM
  • 700GB Storage Space
  • Unmetered 1000Mbit/s
  • x10 Core Processor (x86 x64)
  • Seller License from Shinobi
  • Enterprise Support from Shinobi
  • Learn More

Falcon


Per Month

  • 64+ Cameras
  • 120GB RAM
  • 1000GB Storage Space
  • Unmetered 1000Mbit/s
  • x12 Core Processor (x86 x64)
  • Seller License from Shinobi
  • Enterprise Support from Shinobi
  • Learn More
UNMETERED.IO More Memory (RAM) is recommended for high bitrate and high resolution streams. Here is an embedded live stream running on a server in Amsterdam.
20fps Stream, x2 CPU Cores (x86 x64), 2GB RAM, 200Mbit/s Unmetered Bandwidth.
UNMETERED.Cam
Live Embedded Demo

Why Shinobi?

Here's Shinobi compared to the Leading Alternative

  Shinobi Alternative
Started In 2016 2003
Written in JavaScript C++, Perl and PHP
Maintained by Author -
Runs On Linux, macOS Linux
MJPEG Streams
JPEG Streams
HLS Streams (m3u8) -
Websocket Streams (Base64) -
Recording Method Video Files Each frame as a File
MP4 Recording (Modern) -
WebM Recording (Modern) -
JPEG Recording (Old Method) -
Records Audio -
Websocket Video Recording -
Stream Limit None with Base64 and JPEG Mode ~6, Depends on method used to view
Region Motion Detection
"No Motion" Detection -
Isolated Accounts -
Sub Accounts
Filters
Monitor Groups
RESTful API Access
Embeddable Streams (Natively) -
Stream Analyzer built-in -
Camera Scanner
Event Notification
Push Events via Websocket -
Video Compiler -
Processes per Camera 1 2 - 3 Minimum
Manual Snapshot from Stream -
External Triggering
PTZ Support
Automatic Backup
Web Interface
Mobile Ready -
Database MySQL / MariaDB MySQL / MariaDB

Frequently Asked Questions

Learn More About Our UnmeteredDSL Internet Connectivity Solution

Is there an API for it?

Sure. Head on over to the API Access page.

How do I update?

Please have a look a the Install page.

Does it record continuously?

yes, There is a cutoff at 15 minutes by default. You can change it in the monitor settings.

Where is conf.json?

There is conf.sample.json rename it to conf.json.

What type of Cameras are supported?

Supported Cameras page is what you want.

Where can I make feature requests?

In the #suggestions channel on Discord. If you are on a paid support package you may open a ticket in the client area. Either method will work, ticket made in the client area ensures priority for requests.

Can I run this on HTTPS instead of HTTP?

Yes. You can have it going through a proxy or through cloudflare with a domain, quick and painless. Websocket works excellent through cloudflare.

Would it work for a raspberry pi streaming RTSP h264 video?

If you can open the stream in VLC Media Player then ffmpeg should be able to get it too. ffmpeg is what Shinobi uses for encoding.

Does it timestamp the videos?

It does but for some wacky reason the time is off sometimes. I am trying to figure out why it does that. I am welcoming any input on this.

Is the video montage showing the actual stream or a reduced version?

Default resizes to 640x480 or 640x360. This can be changed in the monitor settngs.

Can I set the mode of my camera (Record, Watch, or Stop) from HTTP? (Trigger a Camera)

Sure. Head on over to the API Access page.

Why can’t I see anything in my camera window? There are no logs.

This might mean ffmpeg was unable to start. Please ensure your machine is capable of installing ffmpeg. by running the following commands. Ubuntu’s package manager will inform whether or not there is a build available for your flavour of Ubuntu.

I can’t record to WebM or MP4, but I can see the stream.

For WebM you need libvpx installed and for MP4 you require libx264 (and libx265 if you want it). Then compile FFMPEG. Otherwise with Ubuntu 16.04 Server you should get all the needed libraries with apt-get install libav-tools.

I can’t open some events, the time or URL is incorrect.

Please check your conf.json. The timezone may be incorrect. Option utcOffset should be set to one of the following:

  • the system’s timezone, Example : America/Vancouver would be -0800.
  • the timezone that your SQL database is using (normally the system timezone)
  • null (defaults to system timezone)
  • Remove the option from conf.json. This is the same as setting to null.

I keep getting "undefined function" errors, why?

Your version of Node.js is too old. You must have 7.2.0(+). Upgrade to the latest with the following commands.

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

npm install canvas does not work

Install the following libraries.

sudo apt-get install libgif-dev

I see strange artifacts, smeering, streaking, melting, and maybe ice cream

Set your Analyzation Duration in the Input Section to 1000. Also by default FFMPEG tries UDP first. You can change this by using this flag in the Custom Section’s Input Flags box.

-rtsp_transport tcp

After disconnecting SSH my Shinobi stops working correctly.

It seems that if you run PM2 as a regular user and disconnect from SSH it will not maintain this daemon. Please run as root if you would like to daemonize with PM2. Otherwise I suggest trying forever instead of PM2.

npm install forever -g