Denizcan Arslan

How to reduce CCTV video streaming bandwidth usage

June 13, 2024
Table of contents

CCTV systems and video streaming are everywhere.

Video streaming and CCTV systems play essential roles in our day-to-day lives, providing us with entertainment, education, and security, especially in manufacturing facilities, warehouses, retail stores, and homes. However, streaming video data from CCTV systems to the cloud for storage, augmented AI analysis, or computer vision systems can consume a lot of bandwidth. This can result in slower internet speeds and increased costs for internet services. In this blog post, we explore some ways to decrease bandwidth consumption on video streaming and CCTV systems by adjusting the video quality settings.

Intenseye's technical solution team, consisting of video streaming professionals, helps customers minimize bandwidth consumption while optimizing the streamed video quality of CCTV cameras. This enables high-accuracy AI analysis even with low-quality videos.

There are various settings that we can adjust to find the sweet spot

Thanks to advancements in camera technology, processors, software, and AI, there are numerous settings on cameras and video recorders that provide a balance between video quality and bandwidth consumption.

1. Resolution

Resolution refers to the number of pixels on a screen. The higher the resolution, the clearer the image, but it also means larger file sizes and more bandwidth consumption. By reducing the resolution from 1080p to 720p or 480p, you can significantly cut down on bandwidth usage.

By reducing Full HD resolution (1920x1080) to HD resolution (1280x720) with the same codec and FPS settings, the total bandwidth consumption for streaming and storage is decreased by 60%.

Full HD (1920x1080)
Number of cameras1
Resolution1920x1080
FPS25
CodecH264 Main
Bandwith~2,5 Mbps

HD (1280x720)
Number of cameras1
Resolution1280x720
FPS25
CodecH264 Main
Bandwith~1,1 Mbps

Intenseye AI can detect small objects such as gloves, protective glasses, and hardhats, even from low-resolution frames. It is mostly trained using 480 to 720p images collected from its customers' CCTV systems. Despite this, Intenseye does not sacrifice the accuracy of its AI.

2. FPS

FPS (Frames per second) refers to the number of frames displayed on the screen per second. Higher FPS results in smoother video playback, but also requires more bandwidth. To reduce bandwidth consumption, consider reducing the FPS from 25 to 15 or 10, as the FPS is directly proportional to bandwidth usage.

For example, if the FPS is decreased from 25 to 8 while keeping the same resolution and codec settings, the total bandwidth and storage consumption will decrease by 70%.

25 FPS
Number of cameras1
Resolution1920x1080
FPS25
CodecH264 Main
Bandwith~2,5 Mbps

8 FPS
Number of cameras1
Resolution1920x1080
FPS8
CodecH264 Main
Bandwith~0,8 Mbps

Intenseye AI is capable of tracking high-speed vehicles such as forklifts and trucks in manufacturing facilities and warehouses, with a frame rate of 6-8 FPS. This tracking feature uses a prediction algorithm developed by Intenseye's deep learning research engineers, specifically designed for health and safety use cases.

3. Codec

Codec refers to the software used to compress and decompress video files. Different codecs have different compression ratios, and some codecs require more bandwidth than others. Choosing an efficient codec can significantly reduce the bandwidth consumption.

Almost all IP cameras on the market support the H264 codec, while many manufacturers also include H265 (HEVC - High Efficiency Video Coding) in their camera software. While H264 has different codec profiles - baseline, medium, and high - H265 has a single configuration that enables 40% better compression than H264-Main.

H264 Main
Number of cameras1
Resolution1920x1080
FPS25
CodecH264 Main
Bandwith~2,5 Mbps

H265 (HEVC)
Number of cameras1
Resolution1920x1080
FPS25
CodecH265 (HEVC)
Bandwith~1,4 Mbps

Intenseye supports both H264 and H265 codecs, but recommends that customers use H265 for more efficient bandwidth consumption when streaming data to the Intenseye cloud. This also reduces the required storage space when saving CCTV footage internally.

4. Key frame interval

Key frame interval refers to the frequency of keyframes in a video stream. Keyframes contain all the information needed to display a frame, while non-keyframes only contain the information that has changed since the last keyframe. Increasing the keyframe interval can help to reduce bandwidth consumption.

When comparing the package sizes of key and non-key frames, you can monitor the significant difference in the amount of transmitted data through the network. This difference in size also varies according to the motion in the intermediate frames. If there is a lot of motion in the camera view, then the key-frame interval should be set lower to keep the video streaming smoothly without any data losses or corruptions during decoding.

Intenseye sets the optimal value for each camera to maintain a balance between stream quality and bandwidth consumption.

5. Video quality

The video quality setting is independent of the resolution of the frames. You can have two separate video streams with the same resolution, yet very different qualities. Video quality refers to the overall clarity and visual appeal of the video. Lowering the video quality can help reduce bandwidth consumption. However, it's important to find a balance between quality and bandwidth consumption.

The difference between H264-Main High Quality and Low Quality is about 70% in terms of bandwidth consumption, assuming all other parameters are the same. It is sufficient to keep the video quality on Medium for Intenseye to provide high accuracy object detection, such as hearing muffs, sleeves, and face masks.

6. Bitrate type

Bitrate type refers to the encoding method used to compress video files. There are two types of bitrate: Constant Bitrate (CBR) and Variable Bitrate (VBR). CBR maintains a consistent bit rate, while VBR adapts to the complexity of the scene. Choosing the appropriate bitrate type can help to reduce the bandwidth consumption.

Intenseye always recommends using variable bitrate for cameras that support maximum bitrate settings. This is because the camera can adjust the bandwidth consumption according to the motion in the camera's view, thereby preventing high bandwidth consumption. VBR adjusts the optimum bitrate needed to stream video frames.

7. Maximum bitrate

Maximum bitrate refers to the maximum amount of data that can be transmitted per second. Setting a lower maximum bitrate can help reduce bandwidth consumption. However, finding the sweet spot between the other settings and the maximum bitrate is crucial. If the maximum bitrate is not high enough to stream the video with high resolution and FPS, it can lead to data losses and other issues in the streamed video, such as corruptions and frozen frames during decoding.

Intenseye's internally-built bitrate calculator helps its customers find the sweet spot between other settings and the maximum bitrate to be set. This maximum bitrate setting is crucial to ensure that excessive bandwidth consumption stemming from streaming CCTV data to the Intenseye cloud does not affect other systems.

8. Stream Profile (Codec)

The Stream Profile refers to the type of stream used in the H264 codec. There are three types of streams: Baseline, Main, and High. Baseline is the most efficient stream type, while High is the least efficient in terms of power and CPU consumption. However, the High stream profile compresses video data in higher ratios than medium and baseline. There is a trade-off between the stream profiles provided by H264 in compression and resource consumption; better compression requires higher resource consumption.

H264 Baseline
Number of cameras1
Resolution1920x1080
FPS25
CodecH264 Main
Bandwith~3,5 Mbps

H264 High
Number of cameras1
Resolution1920x1080
FPS25
CodecH264 High
Bandwith~1,9 Mbps

Choosing the appropriate stream profile can help reduce bandwidth consumption. If cameras or video recorders have sufficient resources such as CPU and memory, Intenseye always recommends setting the highest compression for customers, as long as the devices can support it.

Calculating bandwidth consumption is easy

There are many online tools that can help you determine the required bandwidth for streaming video at different qualities. To find these tools, simply search for "CCTV Bandwidth Calculator" on Google.

Now, let's compare the bandwidth consumption of a regular CCTV video system to the bandwidth requirements for Intenseye's EHS video analytics system, which streams 50 cameras to the cloud.

Regular settings
Number of cameras50
Resolution1920x1080
FPS25
CodecH264 Main
Bandwith~123 Mbps

Intenseye settings
Number of cameras50
Resolution1280x720
FPS8
CodecH265
Bandwith~10 Mbps

As shown in the tables above, changing only the codec, resolution, and FPS to even numbers can reduce total bandwidth consumption by approximately 92%. Intenseye collaborates with its customers' network and security teams to apply optimized settings for the lowest possible bandwidth consumption while maintaining maximum AI accuracy.

In conclusion, adjusting the video quality settings can significantly reduce the amount of bandwidth consumed by video streaming and CCTV systems. By adjusting the resolution, FPS, codec, key frame interval, video quality, bitrate type, maximum bitrate, and stream profile, you can reduce the impact on your internet connection while maintaining a high-quality video streaming and CCTV experience. However, it is important to keep in mind that video streaming is like a river flowing down from snowy mountains; you can estimate the flow based on the weather over time, but it will always vary according to the total precipitation on the mountains, just like the motion in video frames.

Similar articles
No items found.