VMS/VSaaS Camera Integration Guide
This 16-page guide explains the fundamentals and challenges of integrating cameras with VMS/VSaaSes.
In this report, we examine the factors involved including:
- Single Vendor Versus Open System
- Many Features to Integrate
- RTSP URL Streaming
- ONVIF API
- Camera Manufacturer APIs
- VMS APIs
- API Support Life Cycle
- VSaaS Cloud Device Integration
- VSaaS Gateway/Bridge
- VSaaS Direct-to-Cloud Cameras
- Secure TLS Cloud Connections
- Port Forwarding
- P2P Connection Model
This is the first report detailing integration as part of our new VMS / VSaaS course starting in the fall.
Single ****** ** **** ****** ***********
**** ****** ****** *******, ** *** same ************ ***/***** *** *******, *********** is ******* *** *** **** **** features *** *** ********* ** ***.
**** ***** ******* ** *** ********** of *********** ******* **** *** ***** VMS/VSaaSes.
***** * ****** ********* ****** ***** 'open' ** '******' ** '***-**-***' *******, this ***** ******* ** *** ******* used **** ** *********** ******* **** manufacturers **** *** ********* **** *** recorder.
Many ******** ** *********
***** *** **** ***** ******* ** a ****** ** ** ****** *****, IP ******* ********* **** ******** ******** features **** ***** ****** ** ** integrated **** *** ********* ********* **** connect **. ******** ** ***** ******** include:
- *********** *** **********, ***** ****, ***********, etc. ** *** ***** ******.
- ******* *** ***** (*.*., *.***, *.***, MJPEG) ** *** ***** ******
- ******* *** ****** ***** ** *** stream *** ********* (**:*) ** *******/******** (9:16)
- ******* ******** ***** ****** ******** *** high/low *******, ***** ** ******, ***.
- ** ** ***** ***** ********, *.*., configuring *** ***** *****(*) **** *** light ****** ** ************* ****** **/***, manually **** **/***, ***.
- *** ******** ** **** ** ******* presets, *********** *****, ***.
- *****-****** *******, *.*., ***** **** ** connect ** *, *, ** * video ***** **** * ****** ****** IP *******
- ******** ***** *******, *.*., ***** **** to *** * ****** ***** **** from ******** *******
- ******* **** *********, *.*, ** ** virtual *** *******, ** ******* ******** views **** *** *******, ******* ***/*** FoV *** **** ** ******* *************, etc.
- ***** ********* *****, *******, ****/******, ******** or ******** ********** ** ******* ******, etc.
- **** ****** ** ******** ***** *** camera **** ******
- ******* *****, *.*., *********** **** ******, filter **** (*.*. ***** ****, **********), etc.
- ***** *** ****** ************* *.*. ** set ******** ****/****** ***** ** *** connected *****, ****** ** ******, ***.
- **-***** *******, *.*. *********** ********* **/***** storage, ******* * ******** ** *****-***** recording, ********/********** *****, ***.
- ********* ********* *** ********* ***** ****** profiles, ******/********* ***********, ********* ****** ******, etc.
- ********, *.*., ******** *** ***-**-**** ********, automatic/manual ******** *******
******* ******* ***** *********** ******* ****** varies ** ****** *********. ********** ********* often ****** ** ***** ****** ** many *******, **** ** ********** ************* required. *** *******, ********* ********* *** ******* ****** **** rules (***** ** *******), ***** **** ********* ** *** offer ****** ************** *** *** ************* captured ** *** ***/*****, *** **** basic/limited *******:
*******, **** ***** ******* *** ***/***** combinations, ***** *** **** ** ** manually ******* ** ******* ******* ** VMS ******. *** *******, ********* *** need ** ** ********** ***** ***** links ** ******* ************, *********, ** switch ***** *******.
*** **** ******** ** **** ******** is **** ***** **** ******** ********* analytic ***** ** ******* ******* ** even ****** *** *** *** ***** exists, ** ***** **** *** ******** in *****-** ************. *******, ***** ****** configurations *** ***** **** ************, ** users *** ********* ***** ***** **** specifically ******* ** ********* ***-******* *******, making ************* ******* *** *********.
******* ** ***** *********, ***** ****** consult **** ************(*) ** ********* ******* what ****** ******** *** ********** **** a ******** ***/*****.
RTSP *** *********
*** **** ********** *** ** ******* is ****************** ******* ** ** * ******** networking ********, *** **** *** ******* integration ** ***** ** ****** ************ APIs. *** *******, ** *** ** RTSP ****** ** * ***, *** URL, *****, *** ******** *** ******* when ****** * ******:
*******, ** *** **** ********, **** streaming *********** **** ***** ***** ********* and ** *** ***** ****** *************, multiple ****** ********* (*.*. **** *** low **********), *** ********, ***/******** ***** integration, ** ****** **********.
**** ***** ****** ********* ****** ***** or *********** ****, ***** ******** ** installer ** **** *** ** *******(**) of ******* ***** ********* ** *** use ** * ************-******** **********/********* ******** tool, ****** **********, *** ***** *** being **** ** **** *** ****** on *** *******.
********, **** ****** ************'* **** ********* URL ****** ** ********* *** **** be ******** ******* *** **** ********* camera. ** ** ******** ********* **:
****://****:****@:****/
******* ********** ** *** ****** ****** is ********, *** ***** *** ***** multiple ***** *********, ***** *** ******** for *** ****** ** ****** ** expected.
******* ** ***** ***********, **** ** typically *** **** ****** ** ********* cameras.
ONVIF ***
***** ***** **** **** ** ****** video **** ***/*******, *** *** ****** automatic ****** ********* *** ******* *** clients ************, ****** ** *********, ******* video *****, ***, ****, ****, **** events, ***.
***** ****** * ***** ************** ******* ** ****** *** *** API ** **** ** ********* ******* (such ** ** ******* *** ********) with ******* (*.*. ***/*******). ** ******* dozens ** ******* ******"****", "**** ******", *** "*******" **************. ******* *********** ******** *********************** ***** ********* *** *********** ****** of *****/****** **********.
***** ** **** ** **** *************, with ******,*** ********** *******, *** *** ************ ********* ***** new ****** ************* ***/** ****** ****** can ** ********** ** ***/*******.
********, ******* * ***** ****** ** cameras *** ***** **********, ***/******* *** choose ** ********* **** ***** ****** manufacturer ** ***** ****:
*******, **** ****** ************* ********* ***** own ****, ****** *****'* **** ********, and *** ***** **** ******* **** offer ****** *********** **** ******* *************. While * ****** ************ *** *** offer ******** ************* ********** *** *****, a *** *** **** ******* ***** on/off ******* ******* *****:
******* ******* ** **** ********** ** video *********, ***** *** ******* ******** calibration *** ************* *********, *** ******* even ** *** **** ****** ***** profiles ***** *********** ******** ***** *******.
*** ****'****** ***** ************ *********** **** *******.
Camera ************ ****
****** ************* ****** ***** *** **** so **** *** ******* **** ******** a ***/***** ** **** ** *********. These **** **** **** ***** ** hardware ******** *** ************ (*.*. *** camera, ***** *******, *****-*******, *****/** *****). Additionally, **** ************* **** ***** ******** that *** ********* ** *** ***** VMSes, ***** ******** **** ****** **** used **** ***** *** ***.
***** *** ****** ************'* *** ** integrate ** * ***/***** ********* ****** the ******* ****** ** ******** ***** streams, *** ************* ** ******/******** ********, receiving ******/***** ******* **** *** ******, health ****, *** ******** ********.
*******, **** ***** *** ***/***** ************ must ******* ******** ************ *** **** camera ************ ** ********. **** *** be **** ****-********* ** **** ************ uses *** *** *** *********. ********, a *** *** **** ********* *** cameras/camera ************* **** *** *** ******** is *******, ***** ********* ******* *-* times *** **** *** **** *****.
*** *******, ***** ** * *** camera *********** **** ** ******* **** cameras, ********* *** ***** ***** *** numbers *** *********** ** *** ***, audio ********, *** *** ****** ** video ******* *********:
** ******** ** ****** ************-******** ********, most ****** **** **** **** ******** APIs ** ***** ****** *** *** that *** ******** **** *** ******** to *** ****** *****. **** ** another ***** ** ********** *** ***/******* to **** ******* *** *** **** days ** ***** ** *** ******* for * ****** *** ****** *****, depending ** *** ********.
*** *******, *********'* ******** *** *** multiple *** ************ *** ***** ****** manufacturers, ***** ** *** **** ** camera (*.*. *********) ** *** ****** of ***** ********/*******:
** ******** ** *********** ************ ***/** camera-specific *** ************, ***** ** ******** option, **** ***** **** ******* ****-********** camera *******. **** ** ******* **** a ******** **** ****, ** *** example, ******* ****** * ****** ****** driver ******** ****** ** ******** * camera *********** ****:
VMS *** ***** ****** ***
***** ** *** ***** ******** ** ONVIF, * *** *** ************* ******* their *** **** ** ****** *************. This *** * *** ** *********** support *** *** *** **** ******** camera ************* *** **** *********** ** new *******/****** ****** *** *** ***. Milestone *** ******* **** *** **** VMSes ********* ***** ***-***** ****** ****.
********* *** ****** *******:
******* ******** *******:
*******, *** ****** ************* ******* *** party ***-******** ******* ******* ** ***** own ** ********** ***** *******. ************, camera ************* **** ***** ***** *** VMS/recorders, ** **** ********* ***** ***** own ****** **** ** ********* ***-**-*** systems.
********, **** ** *********** ********* ** the ****** ************, **** **** ******** to ***** *** ********** ********* ******** to ******** ******** **** ****** ********* VMSes, *** ******* ****** ******** ******* based ** *** ***** *** *** updates.
API ******* **** *****
******* ****** ******** ******* **** **** as *** ****** *** ********, **** are ************ ******* ** ******* *** features *** ************. *** *******, **** new ***** ****** (*.*. *.***, *.***) were ******* ** *******, *** **** were ********** ** ******* *** ********** video *******, ***** ********* ***** ********** legacy ******, ***** *** *****. **** H.266 ******* *** ********, ***/***** ************* will **** ** ****** ***** *** integrations *****.
*********, ** ****** ************* *** **-***** object ************** *** *********, ***/******* **** to ****** ***** *** ************ ** support ***** *** ************, *** ******** retain ******* *** ****** ***** ****** detection ** ***** *******.
** ***/******* ** *** ******** ******* for ****** ****** ********, **** **** breaking ******** ******* **** *** ***** previous *********** ** ********, ** **** IP ******* *** **** *** *+ years.
VSaaS ***** ****** ***********
******* ********* ******* ***** ******* *** or **** ******* ** ***** *** use * ******* ********* **** ******* cameras *** *****, ** ******** ** direct-to-cameras ** ******* ******** ***** ** supporting *********** ******-**-***** ********.
********, ******* ******** **** "*****-****" ************ in ***** ********, ********** *******, *** appliances ** ***** ******* ************* **** they *** ******* **** ** ******** connection.
Gateway/Bridge *********
* *******/****** ** *** ******** ****** to ******* *** ***** ******* ** the *****, ********* * ****** ********** for * ** **** *******, ******* opening ******** ***** ** ******* ** support ****** ****** ********:
**** **** * ****** ***** ** failure ******* *** ******* *** *** cloud *** ** ********* **** ******* to ********* **** ******-**-***** *******.
*******, *** ******* *** **** ******* on-premise **** ***** *******, ******* **** clients *** **** ******* **** * local ****** ***** **-******* *** **** video ******* *** ***** ***** ******.
Direct-To-Cloud ****** ********
**** ******* ***** ******-**-***** ****** ***********, with ***** *** ****** ************ ******* that ************* ******* **** * ****** tunnel ** *** ***** ******* **** plugged **** *** ********. **** *********** does *** ******* * *******/******.
** ** ****** *** ***** ******* to ******** ****** *** *****, *** *** *********** stops ******* ** ***** **** ****** for ***** *************. *******, ***** ********, some ******-**-***** ****** ************* **** ***** ONVIF *** ******* **** ** ******** firmware ******.
***** ******-**-***** *** ***** ****** ******* is *** ******, **** ******* ******** integrate **** ******* ******* ******* "***-*****" ***********, ** ***** ************* ***** ****** firmware. *** *******,******* ********** (******)******** **** *** * ******* ***** of *** ***** ******* **** ******* custom **********-********** ********, **** **** ******* from *******:
Secure ***** *** ***********
***** *********** *** ******* *** ******** are ******** **** *** * ********* (********* ***** ********, ** ********** protocol)******, *** ** *** ***** ***** steps (***** ** *** ***** *****):
- ********** ****** ***** * ***** ******* to ******* * **********.
- ****** ***** ***** ***** **** ********* ***********.
- * ********* ** ********* *** * secure ****** ** *** **.
- **** *** *** ****** ** ** place, **** **** ******* ** ** encrypted, **** ******** *** **** ********* obscured (***** **** ** "*********** ****" in *** ******* *****).
***** ** * ********* ***** *** an **** ****** ********** ** **** VSaaS ****:
****** ***** **** ** "*********** ****" above, **** *** ****** ** *** up, ******* ********* **** ** ****(*), RTSP,***, ***,***., *** **** *** ****** ******* and *********.
Port **********
**** ********** ** **** *** ******-**-***** integration ** *** ***** ******* ** some *******. **** ********** **** *** private ** ******* ** *** ** camera ** *** ****** ** ******* of * ****'* ****** ** **** it *** ** ******** **********. ***** so ******** ****** ************* *******, ***** are *********** ****** **** **** ********** novices **** ******** ** ** ** correctly. ************, ** ******* ******* *** use ** **** ********** *** ** the ************* **** ** ******** ******** network ***** ** *** ********, ****** it **** *** ******* ****** *** world ** ****** ***** *******/*******.
*********** ******** ******** ***** ** (****), and *** (**** ***** *********) ** be ******. **** ******* ******* ********** ports ** ** ****** *** *************, control, ** **************, ** ****. *** example, **** ***** ***** *** *** ports ******** *** * ********* ****** to * *** ***** *****:
**** **** ** ******** ******* *** to ** ****** *** *** ********, different ******** ***** **** ** ****** to ***** ******** *****, ** ********** the **** **** ** *** ******* results ** ******.
*** *******, ** *** ** ******* are ** ** ********** ******** ***** IP ******* ***.**.***.**, *** **** *** port **, ******** *** **** **** this:
- ****** *: ***.**.***.**:**** ---> ***.***.*.*:**
- ****** *: ***.**.***.**:**** ---> ***.***.*.*:**
P2P ****** ************
*** ** * ************* *****-**-***** ************* model **** ** ******** **** ** low-cost ******* ** ******** ******* ******* to ******* (*** ****), ******* ******** the ********** ******* * *********** ******. While *** *** ******* ******, ********* connections, ** ******** ** ** ******** configured ********** **** ****** ** **** ***** ** millions ** *******.
***** ****** ** *** ** *** more ****** **** **** **********, *** requires ***** ** *** ******** ** the *** ********. ****,*********** ************ ******* ***********, ***** ********* ** service ******* **** *** ********* *** common.
*** **** ***** ***: *** ******** depends ******* **** *** ****** **************. If ***'** ***** ***** ** * modern *** *******, *** *** ******** if *** *********** ** ***. ** you're ***** *** ** * ***** app, ** *** ****** *** *** certificate ******* ****** ******** ** ***.
**** ** ********** **** ** *** security *****, ******* *** ************* **** to ******* *********** *** *** ** may *** **** *** ********* ********** to ******* * ******* **** *********** from ***'* *******. **'* ****** ** just ******** ****** *********** ******** **** to ***** ******** ** ***** ******* ignorant ***********.
*** ****** ** **** ** *** proxy **** ***** ******* ********* **** Telerik *******without ********** *** **** ***********, you may realize that those apps aren't as secure as you thought they were.