This article covers a number of requirements when viewing video from cameras and video systems.
Ops only permits video encoded as H.264 to be streamed from cameras and video systems. This is because H.264 can be sent directly from the cameras through to any browser whereas other formats need to be transcoded to H264 causing quality loss, delays in receiving video, and large resource use.
NOTE: H.265 is supported by some newer cameras but at the time of writing the format is mostly ignored by the technology world (the only browser supporting it being Safari) as it has very high licensing costs compared to H.264 which has led to a consortium of large technology companies forming the Alliance for Open Media to create a free format called "AV1" (this is already supported by more browsers but not any security cameras unfortunately) - SureView are continuing to monitor this situation as it evolves.
Network Speed, Video Settings, and Streams
The speed and quality of the networks from the security center all the way to the camera are very important, as poor networks can very badly affect the video you receive with a number of issues listed below.
To account for different network speeds, cameras have a number of settings including:
- Video Settings (Resolution and Quality): where the higher they are the more data that is sent by the camera, so the faster the network needs to be to cope.
- Streams (or "Profiles"): where you can set different Resolution and Quality values for different use cases, for example you may have...
- a "Local Viewing" stream (often called the "Main" stream) set to very high quality for people who are on the same network as the camera where the network can cope with the high data rates.
- a "Remote Viewing" stream (often called the "Sub" stream) set to lower quality for people who are connecting over the internet, accounting for the slower speeds of the internet.
If your video settings are too high for what the network can cope with you may experience the following issues:
- Connection delays: a long time between starting to connect to the camera to seeing video
- Connection failures: failure to connect to cameras outright
- Video lag: the video getting further and further behind real time so the video you are watching is no longer "what is happening now"
- Video corruption/tearing: the video becoming "garbled" so you can no longer see the image clearly
- Video buffering/stops: the video pausing or stopping altogether
- Fewer concurrent cameras: being able to view less cameras than you would like before some or all of these issues listed begin to happen.
If you are experiencing these issues, you should:
- Use lower Resolution and Quality values on the camera, via the Sub/Remote stream if the camera supports it.
- Try starting with something around 640x480 resolution at Medium quality which is a good value that most internet connections can support then work upwards.