Niagara 4 CCTV Integration
by Paul
Posted on 2020-11-03 10:00:00
A lot of modern cameras allow you to view streams via rtsp (real-time streaming protocol) or mjpeg URLs. Usually in a format like: http://192.168.0.29/media/?action=stream, http://192.168.0.26/mjpg/video.mjpg, rtsp://admin:[email protected]:554/rtsp_live etc. See your camera's documentation on setup.
These type of camera feeds can easily be viewed in the browser. However, security has changed for specific browsers over the last few years. You can no longer pass credentials through the url like http://admin:[email protected].... this is no longer allowed in Chrome and other browsers will soon have this restriction. In Chrome you will get a warning:
[Deprecation] Subresource requests whose URLs contain embedded credentials (e.g. `https://user:pass@host/`) are blocked. See https://www.chromestatus.com/feature/5669008342777856 for more details.
https://www.chromestatus.com/feature/5669008342777856
For a new px, you won't be prompted to resue the view. When creating any views on Niagara components after this step you will
get a dialog box asking if you want to re-use the view. Click Reuse.
You can still do this in other browsers like Firefox. But I imagine they too will block url credentials.
For the example above you can still use the url's, but the browser must already have the credentials installed, or the pop up must be accepted. You can actually automate this process, because all a URL credential does is add a basic authorization header to the GET request, but that is beyond the extent of this article. Storing the credentials in the browsers mechanism is a safe way for now.
In View Builder™© you can either create camera icons on a floor plan type image. When clicked, the camera feed will show up in a popup. Or you could create a video wall bringing in multiple feeds in a grid-style layout. Examples:
Floor Plan:
Video Wall::
Real-Time Example:
Future versions will include PTZ functionality, recording, and playback.
Are you looking for a cost effective way to manage and visualize data for all your customers? Why not have a look at View Builder?
Used by some of the largest companies in the world