Low-Latency DASH and HLS streaming
OvenMediaEngine supports HTTP based streaming protocols such as HLS, MPEG-DASH(Hereafter DASH), and Low-Latency MPEG-DASH with CMAF(Hereafter LLDASH).
Title | Functions |
Delivery | HTTP for HLS and DASH HTTP 1.1 chunked transfer for LLDash |
Security | TLS (HTTPS) |
Format | TS for HLS ISOBMFF for DASH CMAF for LLDASH |
Codec | H.264, AAC |
OvenMediaEngine will support Low-Latency HLS in the near future. We are always keeping an eye on the decision from Apple inc.
Configuration
To use HLS, Dash and LLDash, you need to add the <HLS>
and<DASH>
elements to the <Publishers>
in the configuration as shown in the following example.
Element | Decscription |
Bind | Set the HTTP port to provide HLS and DASH. LLDASH and DASH are provided on the same port, and DASH and HLS can be set to the same port. |
SegmentDuration | Set the length of the segment in seconds. The shorter the |
SegmentCount | Set the number of segments to be exposed to It doesn't need to set SegmentCount for LLDASH because LLDASH only has one segment on OvenMediaEngine. |
CrossDomains | Control the domain in which the player works through |
CrossDomain
Most browsers and players prohibit accessing other domain resources in the currently running domain. You can control this situation through Cross-Origin Resource Sharing (CORS) or Cross-Domain (CrossDomain). You can set CORS and Cross-Domain as <CrossDomains>
element.
You can set it using the <Url>
element as shown above, and you can use the following values:
Url Value | Description |
* | Allows requests from all Domains |
domain | Allows both HTTP and HTTPS requests from the specified Domain |
http://domain | Allows HTTP requests from the specified Domain |
https://domain | Allows HTTPS requests from the specified Domain |
Streaming
LLDASH, DASH, and HLS Streaming are ready when a live source is inputted and a stream is created. Viewers can stream using OvenPlayer or other players.
Also, you need to set H.264 and AAC in the Transcoding profile because MPEG-DASH and HLS use these codecs.
When you create a stream, as shown above, you can play LLDASH, DASH, and HLS through OvenPlayer with the following URL:
Protocol | URL format |
LLDASH |
|
Secure LLDASH |
|
DASH |
|
Secure DASH |
|
HLS |
|
Secure HLS |
|
If you use the default configuration, you can start streaming with the following URL:
https://[OvenMediaEngine IP]:443/app/<stream name>_o/playlist.m3u8
http://[OvenMediaEngine IP]:80/app/<stream name>_o/playlist.m3u8
https://[OvenMediaEngine IP]:443/app/<stream name>_o/manifest.mpd
http://[OvenMediaEngine IP]:80/app/<stream name>_o/manifest.mpd
https://[OvenMediaEngine IP]:443/app/<stream name>_o/manifest_ll.mpd
http://[OvenMediaEngine IP]:80/app/<stream name>_o/manifest_ll.mpd
We have prepared a test player that you can quickly see if OvenMediaEngine is working. Please refer to the Test Player for more information.
Last updated