Skip to main content

 

Cisco Meraki Documentation

Video Streaming

Overview

This article explains the methods used to stream video from Meraki MV cameras to the Dashboard for seamless viewing.

HTTP live streaming

Meraki MV cameras use HTTP Live Streaming (HLS) as the delivery mechanism for video. HTTP Live Streaming (HLS) is a protocol originally developed by Apple for streaming media. It works by creating a continuous collection of small files which are downloaded by the web browser and played back seamlessly. Video delivered this way is simple for a browser to interpret and removes the need for special software or browser plugins that can show the video.

The following are the workflow steps for streaming live video to the Dashboard using HLS.

  1. The camera generates a playlist file named .m3u8, which contains a list of all the current .ts segment files on the camera. The length of these .ts segments may vary depending on the camera model.

  2. The Dashboard establishes a secure connection to the camera and requests the playlist file. After retrieving the .m3u8 playlist file, the Dashboard reads it to identify the current .ts segments on the camera.

  3. The Dashboard will send requests for each .ts segment on the camera.

  4. Video is streamed to the Dashboard.

Stream delay

Starting with camera firmware version 4.8, we introduced low-latency HLS (LL-HLS) on all second generation MV cameras. With LL-HLS, latency for direct LAN video streaming has been reduced from over 5 seconds to just over 2 seconds. For cloud-proxy streaming, the latency will be higher, as the delay depends on the path the video stream takes over the WAN.

The Meraki Display App for Apple TV currently does not support Low Latency HLS (LL-HLS) streaming. As a result, certain network configurations may experience latency exceeding 10 seconds.

Adaptive bitrate streaming

In large video wall deployments or when viewing a single camera stream, the camera’s video tile may be less than 540 pixels in height. When this occurs, a low-bitrate HLS stream is initiated for these cameras. This significantly reduces bandwidth consumption and lowers workstation hardware requirements for large video wall deployments. The low-bitrate stream is set to 540p at 400 Kbps and cannot be configured. Due to the resolution of the video tile, there is no loss in image quality.

On the Vision portal, when a video tile is enlarged to exceed 540 pixels in height (e.g., when a single node is selected from a video wall), the video stream will switch back to the high-quality HLS stream.

Adaptive bitrate streaming indicators

When the normal HLS live stream is enabled, you will see the following "High bitrate stream" indicator at the bottom left of the video.

This image shows the 'High bitrate stream' indicator displayed at the bottom left of the video, which appears when the normal HLS live stream is enabled.

When adaptive bitrate streaming changes to low bitrate, you will see the following "Low bitrate stream" indicator at the bottom left of the video.

This image shows the 'Low bitrate stream' indicator displayed at the bottom left of the video, which appears when adaptive bitrate streaming changes to low bitrate.

 

Adaptive bitrate streaming can also occur with Safari and iOS when the Dashboard detects a potential bandwidth constraint.

The quality of recorded video is not affected by adaptive bitrate streaming, and historical footage will always stream at the quality and bitrate at which it was originally recorded.

Cloud proxy vs. direct streaming

There are architectural differences between streaming video directly from the camera and from the cloud, clients can stream video from anywhere in the world as long as they have internet connectivity.

This image illustrates the architectural differences between cloud proxy streaming and direct streaming, highlighting how video can be streamed from anywhere with internet connectivity.

Direct streaming

If the client has an IP route to the private IP address of the camera, a secure connection will be established between the two. This can occur when the client is either on the LAN, over site-to-site VPN or client VPN. In the LAN scenario, no WAN bandwidth is used for the video streaming. Direct streaming is indicated by a green checkmark in the bottom left corner of the video stream.

Cloud proxy streaming

If the client fails to have an IP route to the private IP address of the camera, it will failover to cloud proxy streaming. In this scenario, the client connection will be proxied by Dashboard to allow the video stream to establish. Cloud proxy streaming is indicated by a cloud symbol in the bottom left corner of the video stream.

Cloud proxy streaming server regions

When a Dashboard organization is created, a region is selected (North America, Europe, Asia, etc). MV security cameras will automatically choose the best cloud proxy streaming server based on the region selected.

Organization Data Region

Cloud Proxy Streaming Server Region

North America United States
South America United States
Europe France, Germany, Ireland
Asia Australia, Singapore

Avoiding cloud proxy on the LANThis image illustrates the importance of avoiding cloud proxy on the LAN.

 

It is important to ensure that Layer 3 firewall rules do not block interVLAN routing between the client and camera subnets. Blocking this routing can lead to unnecessary WAN bandwidth usage and delays due to cloud proxy failover.

The source port used for direct LAN streaming depends on the browser and operating system of the client device. This port, referred to as an ephemeral port, would be covered under a TCP Any rule. The destination port used for this purpose is TCP 443.

Disable SSL inspection upstream of a Meraki security camera to prevent blocking the creation of cloud proxy streams.