This article provides best-practice guidance for running low-latency live events on Ravnur Media Services (RMS).
It explains LL-HLS support, recommended encoder/output profiles, and the CDN behaviors that help maintain low end-to-end latency.
Low latency mode provides:
Target latency: 9–12 seconds (with recommended encoder, player, and CDN setup).
Delivery format: LL-HLS via CMAF.
Recording: DVR (in-stream rewind) is disabled, but the recording is available as VOD after the event ends.
In this article:
Configure low latency live events
Low latency considerations
Low latency mode optimizes the streaming pipeline for minimal delay. When enabled, certain features are restricted:
Low latency streaming is available only for passthrough live sources.
MPEG-TS cannot be used with low latency.
RTSP Push/Pull does not support low latency; see the full compatibility matrix.
DVR is disabled to minimize playback delay.
Low-latency streaming is not supported for the MPEG-DASH delivery format.
Latency depends on many factors, including the viewer’s geographic location and internet connection speed. However, with Ravnur’s optimized player configuration and CDN delivery, it is possible to achieve a target latency in the range of 9-12 seconds under the recommended setup below.
Configure low latency live events
The steps below highlight the low latency-specific configuration.
1. Create the live event, asset, and live output.
When creating the live event, configure it for low latency. Asset and live output creation follows the standard workflow - see Live streaming quickstart for those API calls.
Set
encodingTypetoPassthroughStandard.Set
streamOptionstoLowLatency. See the example below.
API call
PUT https://{{api-endpoint}}/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaservices/{accountName}/liveEvents/{liveEventName}?api-version={api-version}
Request body
{
"location": "West Europe",
"properties": {
"description": "",
"input": {
"streamingProtocol": "RTMP",
"keyFrameIntervalDuration": "PT2S",
"accessControl": {
"ip": {
"allow": [
{
"name": "AllowAll",
"address": "0.0.0.0",
"subnetPrefixLength": 0
}
]
}
}
},
"encoding": {
"encodingType": "PassthroughStandard"
},
"streamOptions": [
"LowLatency"
]
}
}
API reference with full parameter details: Live events - Create.
Alternatively, RMS Console allows you to create a live event via the interface:
Select Standard passthrough as the live event type.
Enable the Low Latency toggle (appears after selecting passthrough).
2. Start the live event.
Call the Start operation and wait for the event to reach Running state. RMS returns the ingest URLs in the response.
3. Connect your encoder and send the feed.
Configure your encoder as recommended below with the ingest URL and stream key returned in step 2.
4. Create a streaming locator and retrieve its paths.
Create a streaming locator for the live output's asset, then call List Paths to get the HLS manifest path.
5. Retrieve the streaming endpoint hostname and compose the playback URL.
The format=m3u8-cmaf parameter indicates HLS delivery using CMAF segments:
https://{playback-endpoint}/{locator-id}/{manifest-name}.ism/manifest(format=m3u8-cmaf).m3u8
6. When streaming is complete, stop the live event.
Contribution encoder
You control the source encoder settings before the stream reaches Media Services. Here are some recommendations for the settings that would give you the lowest possible latency:
Use a consistent fragment size.
We recommend a Keyframe interval (GOP) size of 2 seconds. The default on some encoders, such as OBS, is 8 seconds. Make sure that you change this setting.-
Use a hardware (GPU) encoder if your encoding software supports it. Hardware encoding reduces encode delay and produces more consistent frame timing than software encoding. Software encoders like x264 can add latency under CPU pressure. In OBS, this corresponds to the Video encoder setting:
NVIDIA NVENC H.264 for Windows
Apple VT H264 Hardware Encoder for MacOS
Use an encoding profile that is optimized for low latency while still maintaining good visual quality.
For example, with OBS Studio, if you use the P4: Medium (Medium Quality) preset.Send content that is no higher in resolution than what you plan to stream.
For example, if you're using 720p standard encoding for live events, send a stream that is already at 720p.Keep your framerate at 30 fps or lower unless using passthrough live events.
While RMS supports outputs above 60 fps, higher frame rates can reduce low latency performance. Keep the output at 30 fps or lower for the most stable results.-
Rate control is a balance between quality and bandwidth efficiency. Select the corresponding option:
CRF (Constant Rate Factor) – for macOS
VBR (Variable Bitrate) – for Windows
Set Multipass Mode to Single Pass for faster encoding and lower latency.
Player optimizations
When choosing and configuring a video player, make sure you use settings that are optimized for lower latency.
When using the LowLatency stream option, find a player that supports Low Latency HLS (LL-HLS). Depending on the implementation, buffering decisions impact the latency a viewer observes. Poor network conditions or default algorithms that favor quality and stability of playback could cause players to decide to buffer more content upfront to prevent interruptions during playback. These buffers, before and during the playback sessions, would add to the end-to-end latency.
If you prefer a ready-to-use option that integrates cleanly with RMS, Ravnur Media Player is available as well. It wraps HLS.js and allows you to pass custom low-latency settings, see Configuring Ravnur Player for low latency live streaming.
CDN choice and optimizations
Streaming endpoints are the origin servers that deliver the live and VOD streaming content to the CDN or to the customer directly. It is best to use a Content Delivery Network (CDN) with a shielded origin to ensure that traffic for your media content is delivered efficiently.
By default, we are using Azure Front Door Standard CDN, which provides global edge delivery, built-in load balancing, TLS termination, routing optimizations, and edge caching. This tier is optimized for dynamic media content and offers strong origin protection, health probing, and support for modern protocols such as HTTP/2 that RMS uses.
You can also bring your own CDN. If you use a custom CDN instead of the default Azure Front Door Standard tier, ensure that the CDN is configured to protect the RMS streaming origin from excessive or unoptimized traffic.
You can also improve performance by tuning CDN-level caching and routing rules. These optimizations vary between CDN providers, so review the configuration options available in your chosen service.