Skip to main content
EdgeVis streaming performance guidance

This article outlines how you can expect your encoder to perform, given the different factors that effect performance.

Updated over a month ago

There are many factors that will effect the frame rate and resolution you can expect to achieve with the output video stream. These include

  • The complexity of the incoming video stream

  • The available bitrate across all your output video streams

  • The number of output video streams on your encoder (only for multi-streaming devices)

In the following sections, we go through each in turn to describe the effect on the streaming performance.

The effect of video complexity of the incoming video stream

Video compression uses multiple techniques to reduce the size of the video. Reusing the previously transmitted frame is the most efficient while building new detail is the worst.

  • When the video is mostly static the video compressor saves the most bandwidth. It knows that the new frame mostly consists of the previous frame - and it only has to transmit the detail for a small number of differences.

  • When the video is constantly changing the video compressor can't reuse much information from the previous frame, and has to send the detail for almost the entire frame.

To help you translate this into real-world scenarios we have chosen two video clips that are typical of the two main types of deployment scenarios:

  • A typical CCTV scene - where the background is mostly static, but objects move through it (i.e. people and/or vehicles).

  • A complex high-movement scene - where there is constant movement. Examples include vehicle or body worn mounted cameras.

We use the two example clips in the following sections to show how they affect the other variables.

The effect of bitrate on the output video stream

EdgeVis automatically scales the frame rate and resolution to try and maintain a minimum visual quality. If there is not enough available bitrate, then the encoder will start to reduce the frame rate and resolution to maintain quality.

The following table shows (for a single EV output stream set to โ€˜Autoโ€™) what frame rate/resolution you can achieve at a given bandwidth:

Output stream bitrate

Typical CCTV scene

Complex scene

250 kbit/s

1504 x 856 @ 12.5fps

1024 x 576 @ 8.33fps

500 kbit/s

1920 x 1080 @ 25fps

1280 x 720 @ 12.5fps

1000 kbit/s

1920 x 1080 @ 25fps

1728 x 972 @ 12.5fps

2000 kbit/s

1920 x 1080 @ 25fps

1920 x 1080 @ 25fps

4000 kbit/s

1920 x 1080 @ 25fps

1920 x 1080 @ 25fps

These figures are achievable on the EVVR range of products. Users of HD-IP470, HD-IP200 and MiniCam are limited to 1080p @ 10fps - but the same principles apply.

With low levels of movement, it is possible to achieve the maximum possible performance of 1080p @ 25fps with as little as 500 kbit/s. However high-movement scenes will require up to four times as much bandwidth to hit the full 1080p @ 25/30fps.

Output stream bitrate

Typical CCTV scene

Complex scene

250 kbit/s

1920 x 1080 @ 8.3fps

1024 x 576 @ 8.33fps

500 kbit/s

1920 x 1080 @ 25fps

1280 x 720 @ 12.5fps

1000 kbit/s

1920 x 1080 @ 25fps

1728 x 972 @ 12.5fps

2000 kbit/s

1920 x 1080 @ 25fps

1920 x 1080 @ 25fps

4000 kbit/s

1920 x 1080 @ 25fps

1920 x 1080 @ 25fps

Using Auto versus manual EdgeVis quality settings

The figures supplied assume the use of the default 'Auto' quality setting. This is the recommended setting and allows the encoder to drop the resolution and/or frame rate to maintain quality. This is especially important for mobile encoders where the available bandwidth may vary widely.

It is possible to set the desired resolution and frame rate manually. This stops the encoder auto-adjusting which can produce poor results if the available bandwidth were to dramatically drop - users are likely to observe blocky video as there isn't enough bandwidth to encode the video to an acceptable quality.

The effect of multi-streaming on the output video stream

Users of the EVVR4 and EVVR4RL products can transmit up to 8 output EdgeVis video streams. These devices have a certain level of CPU performance available which must be shared between all output video streams. To help users we specify the following performance levels in our spec sheets:

  • Core performance
    For 1-4 output video streams the encoder can achieve 1080p @ 25fps.

  • Extended performance
    For 5-8 output video streams the encoder will achieve at least 720p @ 12.5fps.

However, as you have observed above, the complexity of the input source video can have a large effect on the achievable resolution/frame rates. The following table provides more real-world guidance (using our two sample scenarios) on the effect the number of output video streams has on the output video stream performance:

Number of output streams

Typical CCTV scene

Complex scene

1-4 @ 1mbit/s

1920 x 1080 @ 25fps

1728 x 972 @ 12.5fps

5-6 @ 1mbit/s

1728 x 972 @ 15โ€“25fps

1728 x 972 @ 12.5fps

7 @ 1mbit/s

1728 x 972 @ 12.5โ€“15fps

1728 x 972 @ 12.5fps

8 @ 1mbit/s

1728 x 972 @ 12.5fps

1504 x 846 @ 12.5fps

It is also worth remembering that you must also scale up the maximum video bitrate to ensure that each output video stream receives the necessary bitrate to achieve these performance levels (i.e. outputting 8 video streams requires twice as much bandwidth as outputting 4!).

Recommendations

  • Make sure to review your use case to ensure you allow enough bandwidth to hit your performance requirements - higher movement scenes can require up to 4 times as much bandwidth!

  • If you are using multiple output streams on an EVVR4/4RL ensure you increase the maximum streaming bandwidth to allow each stream adequate bandwidth to hit the desired streaming performance.

Did this answer your question?