Streaming

Troubleshooting Guide for streaming related issues

1. Introduction

This troubleshooting Guide is targeting Axis customers to be used as a self-help. The guide should help our customers to find possible mitigations to common issues they might encounter.  The guide as well covers the data that is needed to be collected and provided when opening a support case. This should help the Axis Support Team to quickly assist them with the issue they are facing by providing them the correct and needed information.

NOTE

Axis cameras will operate as intended if installed as specified by the Installation Guide. Generally, the dome of the device should be facing the ground when operating or testing the devices.

Please note that Axis does not take any responsibility for how the modification of the configuration described in this guide may affect your system. If the modification fails or if you get other unexpected results, you may have to restore the settings to default.

2. Factors affecting streaming

2.1 Streaming Parameters

The streaming parameters available in each device model can differ. Before requesting a stream with a certain set of parameters, verify that the streaming parameters are available or supported for the camera model.

The Axis video devices existing streaming parameters can be found in our streaming API library.

Pic 2.1 Error streaming parameters: stream requested from a device that only supports a 720p max resolution

2.2 Multiple streams

2.2.1 Encoded streams

The devices may not be able to handle a multitude of unique streams requested simultaneously depending on the devices performance capabilities (processor). This is common with multisensory devices and megapixel resolution devices.

Pic 2.2.1 Too many viewers: Multitude of unique streams requested simultaneously on device with an Ambarella S2L Chip

Possible mitigation

  • Verify the number of unique streams requested from the device simultaneously

2.3 Latency

When talking about latency, we are referring to end-to-end latency. We define end-to-end latency as the delay from when an image is captured by a camera until it is visible on a video display. It is divided into 3 major steps impacting the total system latency.

2.3.1 Camera Latency

Factors: Stream (Resolution, Image settings, Audio, Compression)
Capture frequency (sensor), Multiple Streams, Image processing…

2.3.2 Network Latency

Factors:  The network infrastructure, Data amount, Transmission Protocol (UDP / TCP)

Possible mitigation

Network Infrastructure and management

In most cases, a limited network is the largest contributor to jerky| choppy| lagging videos. If the bandwidth is limited, the device will have to compensate the quality of the stream (reduce bitrate) to match the available network infrastructure bandwidth.  It will do by lowering the image quality or the framerate. This can result in a choppy video stream.

  • Using the Axis Site Designer tool, you can estimate the needed bandwidth depending on the Axis camera model.
    https://www.youtube.com/watch?v=gPju7m8TB_0
     
  • A good network infrastructure that is well managed (QoS, enough bandwidth, Network hops well planned) will highly contribute to a smoother video stream.

2.3.3 Client latency (decoding/render)

Factors: Media player rendering the video (unpack, reorder and decode), buffers, display refresh rate, decompression.

Possible mitigation

Poor Hardware and software from the client side

  • Computer’s setup such as CPU, GPU, Memory card etc other involving graphic processing parts will also have a great impact on image fluency.
     
  • Hardware acceleration is a feature in modern VMS/Clients.  It moves all graphics and text rendering from the CPU to the Graphics Processing Unit (GPU).
     
  • If you have a high-performance graphics card, hardware decoding is a good way to improve performance and reduce CPU usage, especially when streaming high-resolution video.

Pic 2.3.3 Hardware Decoding ACS

Pic 2.4.1 Framerate

2.4 Axis device settings 

2.4.1 Framerate

In the GUI of Axis Cameras, settings are allowing you to limit the framerate to a wanted value. A higher frame rate gives you a smoother motion fluid video especially if monitoring moving objects. This will ensure that quick movements fast-moving objects are captured in detail.

Pic 2.4.2 Bitrate

2.4.2 Bitrate

In the GUI of Axis Cameras, there are settings allowing you to limit the bitrate to a wanted value.  However, as the bit rate would usually need to increase for increased image activity but cannot due to the set limit value when CBR is selected, the frame rate and image quality will both be affected negatively.

2.4.3 Shutter Speed - Motion blur

The shutter speed is the length of time a camera’s shutter is open. This controls the amount of light reaching the sensor. In low light situations, the shutter needs to stay open longer for the sensor to receive enough light. A possible side effect of this is motion blur if monitoring moving objects. The moving objects become blurred.

Below is an application that can be used to see the effect of video if modifying the shutter speed

Possible mitigations

  • The Axis devices Default settings are a sort of sweet spot where the settings image and stream settings are optimdescriized and balanced to provide a fluid video stream in most of the common scenes and scenarios. Any modification of the settings may impact the video fluidity negatively as already bed above.

3. Opening a support case

It might happen that the above factors and mitigations do nott help identify and solve the image quality issue.  You are welcome to open a support case and provide the below needed information and data.
 

NOTE: It is always important to test the devices on the latest firmware on an LTS track or Active Track if possible.

 

3.1 Data and Information Needed 

NOTE: Please do not forget to add the Server Report of the device!
 

Support tip: How to download a Server Report

  • We rely on recordings for a latency | lagging troubleshooting.  In some scenarios the behavior cannot be noticed in the System logs. Please attach them to the support case.
     
  • To troubleshoot we recommend testing the latency in the WEB GUI first to exclude any latency potentially introduced by a Video management system: The best way to do it is test with the device connected directly to the midspan and PC (laptop) <-> midspan <-> Computer using a good network cable.  However, we understand that this is not always possible if the devices are already in operation.
     
  • Use recommended Browser – Camera default settings + add the statistics and time in overlays in ms (%T:%f) FPS: #R Bitrate: #B Mbit/s Coordinates: #x #y #Z ms (%T:%f)

Pic 3.1-1 Overlay

Pic 3.1-1 live statistics

  • Make sure you use a computer with a good graphic card. Dedicated video memory more than 1 GB.
     
  • Test with the device not moving at first (PTZ) with a moving object and then moving.
     
  • Additionally, a network trace taken from the camera can be used as well to showcase the delays and response time.
     
  • A network trace taken from the camera can be used as well to showcase the delays and response time. The below command is 60 seconds capture of a network trace from the camera with an IP address of 192.168.0.90: 
    http://192.168.0.90/axis-cgi/debug/debug.tgz?cmd=pcapdump&duration=60

[Please contact technical support with all questions answered and files attached]

Considerations and limitations

The guide does not cover all possible issues but rather the most seen through the support cases. As an Axis Customer you are always welcome to contact Axis Support regardless if the issue is the  type of issue is listed or not in this troubleshooting guide.