Akamai MSL4 Live Outputs
Overview
Bitmovin can not only run in Akamai Connected Cloud, deploying the Live Encoder to a range of regions, but it can also output to Akamai Media Services Live (MSL) as an ingest point for distribution over the Akamai CDN.
Configuring Akamai MSL4
You will need to have an account with Akamai and be able to access the Akamai Control Center.
Prerequisites
When creating a new stream in MSL4 you'll want to consider what type of streaming formats and containers you wish to distribute to your users via the CDN.
Akamai MSL4 can support a range of input formats however they are not all compatible with Bitmovin, and where they are may require a particular muxing type.
Stream Format | Supported by Bitmovin | Muxing Required |
---|---|---|
HLS for Apple HTTP Live Streaming | ✅ | TS |
HDS for Adobe HTTP Dynamic Streaming | ❌ | - |
DASH for Dynamic Adaptive Streaming over HTTP | ✅ | fmp4 |
CMAF for Common Media Application Format* | ✅ | fmp4 |
*CMAF MSL4 streams can receive HLS and DASH outputs from Bitmovin and must use fmp4 muxing.
Create you MSL Stream in Akamai
You will need to use an existing MSL4 stream or create a new one. Akamai provides instructions on how to do this in their MSL4 documentation.
Collect the Stream ID
Once created take note of the Stream ID
which is required when configuring the live output in Bitmovin. This can be found in the Stream Name (Stream ID) column, the stream ID of your stream is the number in parenthesis, e.g. 9021090.
Configuring Bitmovin Live Encoding Outputs
Using the Bitmovin Dashboard
In the Dashboard navigate to Live Encoding in the left side panel, and then select Outputs.
Remember you will need to know the Stream ID and Stream Format for the MSL4 stream, from your Akamai Control Center or Administrator.
Press + Create
and select Akamai MSL4 to see the correct form.
Provide a Name
this is a free form name that will be used as a label in the Bitmovin Dashboard, and a useful description to help other Bitmovin users and administrators.
- The
Stream ID
that you have taken from your MSL4 stream in the Akamai Control Center - Set the
Stream Format
that correlates with the MSL4 settings.
Users can choose an arbitrary name for your Event Name
, the requirements are that it should be one word with letters and numbers but without special characters. E.g. "bitmovin123".
When you are finished press Create
and the output will be saved.
Using the Bitmovin API
We provide the following API endpoints to configure MSL4 Live Outputs
Create Akamai MSL Output to create new outputs.
List Akamai MSL Outputs to get a list of configured outputs including their output_id
(UUID returned as id
)
Akamai MSL Output Details to get information about a specific MSL4 Live Output using the output_id
Delete Akamai MSL Output to delete specific MSL4 Live Outputs using the output_id
Using the Live Output
The output will appear in the Outputs list, and in the Wizard under Akamai MSL.
You can confirm the output is created in the API by using List Akamai MSL Outputs
Remember to select the correct muxing format, that is compatible with your MSL4 stream format.
Manifest and Segment Names
Be aware of the following naming conditions:
- The template for the segments must not contain underscores ( ). E.g, if your template is segment%number%.m4s , change it to segment-%number%.m4s
- The output path for the manifest, if not empty, must contain leading and trailing slashes (/).
- The segment name must be in the format '[prefix]-{randchars[:number]}-%number%.[extension]'
_e.g. : segment-{rand_chars:10}-%number%.m4s
This naming pattern will be set automatically when using the Live Dashboard but must be set correctly if using the API.
Previewing Outputs
It is not possible to automatically preview the outputs in the Live Encodings status in the Bitmovin Dashboard. However, it is possible to use the Test your stream page under the Player menu in the Dashboard to view the output and validate the stream if the CDN path is known.
To construct the preview URL you must retrieve your amd-property-hostname
which is the published and playable DNS name for your CDN endpoint. This can be found in the Akamai Control Center, as explain in the Akamai documentation.
Once this is known you can apply it to the following naming pattern:
https://<amd-property-hostname>
/<stream-format>
/live/<stream-id>
/<event-name>
/<manifest>
Example MSL4 Manifest URLs
If you are using the Dashboard wizard to create the outputs, default manifest names would be applied. If using the API the manifest name would need to be set and may differ.
Below there are examples with the default manifest names for different formats, where:
- stream-id = 9021090
- event-name = bitmovin123
- amd-property-hostname = streamtime.bitmovin.net
MSL4 Stream Format | Bitmovin Output | Bitmovin Preview |
---|---|---|
HLS | HLS | http://streamtime.bitmovin.net/hls/live/9021090/bitmovin123/manifest.m3u8 |
DASH | DASH | http://streamtime.bitmovin.net/dash/live/9021090/bitmovin123/manifest.mpd |
CMAF | HLS | http://streamtime.bitmovin.net/cmaf/live/9021090/bitmovin123/manifest.m3u8 |
CMAF | DASH | http://streamtime.bitmovin.net/cmaf/live/9021090/bitmovin123/manifest.mpd |
Updated 9 months ago