Introduction
Users with a EVVR-4 and EVVR-4RL device can stream up to:
four simultaneous video streams (at full 'core' performance level).
oreight simultaneous streams (at an 'extended' performance level).
What is core and extended performance?
What is core and extended performance?
Core performance
The core streaming performance of your EVVR4 is unchanged and your encoder will still be able to achieve the same streaming performance when used with up to four video streams (given enough bandwidth) - you will still be able to hit the maximum frame rate and resolution provided by the camera.Extended performance
Once you use more than four output video streams there is a small performance hit on the video streaming performance if you are utilising all features (e.g. SafeZone-2D enabled on all channels).
Please refer to the EdgeVis 8.6 Release Notes for further information.
This article will explain the extra steps required to enable this feature.
These encoders can:
Support up to eight incoming IP streams, each of which can be recorded
Perform SafeZone-2D alerting on all eight cameras (with appropriate licence extension)
Stream four core or eight extended video streams to EdgeVis Server. Each stream can transmit any of the eight cameras, and it is also possible to transmit up to two quad views each containing four cameras.
Given enough bandwidth the encoder, if using:
4 core streams
can produce 1080p at 25/30fps on all four streams
8 extended streams
can produce 720p at 12.5/15fps on all eight streams.
Please see the later guidance on bandwidth usage for important information.
Configuring an encoder for multiple streams
By default, an encoder is configured as a single EdgeVis output device. You must perform additional steps to create the additional EdgeVis output video streams.
Is your encoder properly setup yet?
These steps assume your encoder is already configured to connect to your server, with all cameras added. If you haven't yet, please visit the EdgeVis encoder quick start guide.
Step 1: Enable additional EdgeVis streams in EdgeVis Server
Log into EdgeVis Server and go to the encoder’s configuration page:
(In this example the encoder account is called EVVR4).
The configuration page is almost identical to any EdgeVis encoder (with a few exceptions noted below) and you can use this page to configure any of the standard encoder settings (e.g. firmware updates, licence management).
The Video inputs section should list all the cameras and video layouts you added during your encoder's installation and setup.
The Streaming output section has been extended to support multi-streaming.
This page now allows you to:
Create/manage output video streams
Rename the output video streams
Set the overall stream bandwidth
Set the streaming parameters of each video stream
Initially, it will only show one stream, and its name is the same as the encoder account (this can be renamed later).
Step 2: Add the additional output video streams
To begin adding more streams hit the Add new stream button in the Streaming output section, where you will be asked to enter a new stream name.
Note: The stream name will appear to end-users using EdgeVis Client / VMS Gateway. If all four core / eight extended streams are given new unique names then the end-user may not see the name of the encoder within EdgeVis Client.
Enter a name for your new stream – this must be unique across all encoder and stream names on the server:
This will then take you to the Manage output streams page (this page can also be accessed by clicking on any of the streams listed in the Streaming output section).
Each output video stream is listed as a column in this table. Each input IP camera is listed as a row in this table.
Within this table you can:
Rename the output video stream
Click on the column heading to edit the name of the stream. This must be unique across all encoder and stream names on the server. Even the original stream can be renamed.
Select cameras on a per-stream basis
The tick boxes in the table signify which video inputs are assigned to which output video stream. By default, all cameras are available on every stream, however it is possible to limit some cameras to only be available on certain streams.
Delete an output video stream
Simply select Delete from the bottom of the stream’s column
Add a new output video stream
If there is still space available on your device, an "Add one now?" link will be present at the top of the page which can be used to add additional streams.
Once you have added all your desired streams, your new streams will immediately be available to EdgeVis Client and VMS Gateway users.
Go back up a level to the encoder configuration page to complete the next step.
Step 3: Configure your encoder bandwidth
This step is the same as all EdgeVis encoders, with one caveat – additional video streams need more bandwidth. Use the Device Bandwidth Limits button to edit the bandwidth settings for your encoder:
This page will list each communications method (Cellular, Wi-Fi, LAN) that is configured as a comms bearer. As with all EdgeVis encoders; The Bandwidth cap is the admin level cost control to set a maximum limit that users are allowed to use, the maximum bandwidth is the current value the encoder is allowed to use up to, and the minimum bandwidth is the level that an encoder will drop its bandwidth to, to support a viewing client with a poor connection (30% recommended).
However, a four-channel encoder needs four times the bandwidth to maintain the same quality level as a single-channel encoder. 2-4 Mbits per second is recommended for streaming 4 x 1080p video streams.
Step 4: Set your preferred streaming quality settings
From the main encoder configuration page, select Manage streaming output quality from the Streaming output section.
This page is split into four:
Select an output stream
Select which output stream you wish to configure the streaming quality settings for.
Bandwidth sharing ratio
For each stream choose between Higher, Average, Lower to either increase or decrease each video stream’s share of the bandwidth. The blue bar underneath provides an indication of how much each stream will receive. If all four are set to the same value, then they each receive 25% of the available bandwidth.
Streaming quality
There are five main settings:Automatic (recommended) tries to maintain the best balance of video resolution and frame-rate given the available bandwidth
Best frame rate will ask the encoder to try hit 25/30fps first, before raising the resolution
Best resolution will ask the encoder to try hit 1080p first, before raising the frame-rate
Economy will cap the encoder to around 288p at 3-5fps
Custom allows the user to set fixed settings (please see warning in next section)
Audio
You can set audio as Off / Mono / Stereo for each stream independently, and for enabled streams set a Low / Medium / High quality setting.
Clicking the Show advanced configuration options link will display the Reserve idle stream bandwidth option. Encoders that use firmware version 8.6 and above (including those upgraded from an earlier version) have this setting enabled by default.
⚠️ Important information regarding Codec modes in EdgeVis v8.6+
The option to switch to Legacy video codec mode has been removed for encoders running firmware version 8.6 and above. This was a setting introduced with v8.0 to allow users time to upgrade their clients, VMS and SDK applications to support the new Enhanced codec mode.
Version 8.5 set this setting to Enhanced by default, and now version 8.6 removes Legacy mode entirely.
Any device that is upgraded to version 8.6 will now use Enhanced codec mode automatically.
Please refer to the EdgeVis 8.6 Release Notes for further information.
Why do I sometimes see grey video?
When you use the Custom stream quality setting the encoder will no longer attempt to dynamically adjust the video resolution or framerate. If there is not enough bandwidth available to encode compressed video at the requested settings, then the video codec may fail to produce useful video – this can happen on one or more of the video streams depending on the video content.
In the image above the encoder was configured for 1080p @ 25fps with only 125kbps (500kbps shared between four).
For 1080p / 25fps+ it is recommended to allocate 500-1000 kbps per video stream (2-4 mbps per encoder)
For 720p / 25fps+ it is recommended to allocate 250-500 kbps per video stream (1-2 mbps per encoder)
Reducing the framerate to 12.5/15fps can reduce the above suggested values by 40%.
How will end-users see a multi-stream encoder in EdgeVis Client?
Traditionally EdgeVis Client will list encoder names when listing available videos to view. With a multi-stream encoder this is subtly different - only the output video streams are listed, using the stream names supplied. In this example the actual encoder account (named NUC3422) is not displayed when viewed in client – only the four different stream names are shown:
The user is then able to open any (or all) of those output video streams independently:
How do multi-stream video streams behave differently in EdgeVis Client?
While each video stream can be thought of as totally independent, there are a few differences that a user should be aware of.
When using PTZ features, the current user still locks out PTZ access to other users of the same video stream. However, if the same camera is added to multiple output video streams it is possible for multiple users to be steering the same camera at the same time if each user is accessing the camera through a different video stream.
Only one of the output video streams can review the recordings stored on the encoder at a time – if one user is currently reviewing the archived video then no other users can, even if they are attempting to review the recordings using a different output video stream or different input camera feed.
The stored static location is shared between all output video streams – changing the location on one will also affect the other output video streams.
Using the ‘Configure encoder’ menu option will take the user to the same page (to allow configuration of the underlying encoder) regardless of which video stream is currently open.
Using the ‘Bandwidth settings’ option will allow the user to edit the bandwidth for the encoder – as described earlier this is shared between all video streams. Changing the value here will affect the streaming output of all configured output video streams.
Most other features (full-res retrieval, analytics configuration, PTZ Tours) operate as they would on a single stream encoder.