/AWS1/CL_MDCCMAFENCSETTINGS¶
Settings for CMAF encryption
CONSTRUCTOR¶
IMPORTING¶
Optional arguments:¶
iv_clearlead TYPE /AWS1/MDCHLSCLEARLEAD /AWS1/MDCHLSCLEARLEAD¶
Enable Clear Lead DRM to reduce video startup latency by leaving the first segment unencrypted while DRM license retrieval occurs in parallel. This optimization allows immediate playback startup while maintaining content protection for the remainder of the stream. When enabled, the first output segment remains fully unencrypted, and encryption begins at the start of the second segment. The HLS manifest will omit #EXT-X-KEY tags during the clear segment and insert the first #EXT-X-KEY immediately before the first encrypted fragment. This feature is supported exclusively for CMAF HLS (fMP4) outputs and is compatible with all existing key provider integrations (SPEKE v1, SPEKE v2, and Static Key encryption). Supported codecs: H.264, H.265, and AV1 video codecs, and AAC audio codec. Choose Enabled to activate Clear Lead DRM optimization. Choose Disabled to use standard encryption where all segments are encrypted from the beginning.
iv_constantinitializationv00 TYPE /AWS1/MDC__STRMIN32MAX32PAT000 /AWS1/MDC__STRMIN32MAX32PAT000¶
This is a 128-bit, 16-byte hex value represented by a 32-character text string. If this parameter is not set then the Initialization Vector will follow the segment number by default.
iv_encryptionmethod TYPE /AWS1/MDCCMAFENCRYPTIONTYPE /AWS1/MDCCMAFENCRYPTIONTYPE¶
Specify the encryption scheme that you want the service to use when encrypting your CMAF segments. Choose AES-CBC subsample or AES_CTR.
iv_initializationvectorinm00 TYPE /AWS1/MDCCMAFINITIALIZATIONV00 /AWS1/MDCCMAFINITIALIZATIONV00¶
When you use DRM with CMAF outputs, choose whether the service writes the 128-bit encryption initialization vector in the HLS and DASH manifests.
io_spekekeyprovider TYPE REF TO /AWS1/CL_MDCSPEKEKEYPVDRCMAF /AWS1/CL_MDCSPEKEKEYPVDRCMAF¶
If your output group type is CMAF, use these settings when doing DRM encryption with a SPEKE-compliant key provider. If your output group type is HLS, DASH, or Microsoft Smooth, use the SpekeKeyProvider settings instead.
io_statickeyprovider TYPE REF TO /AWS1/CL_MDCSTATICKEYPROVIDER /AWS1/CL_MDCSTATICKEYPROVIDER¶
Use these settings to set up encryption with a static key provider.
iv_type TYPE /AWS1/MDCCMAFKEYPROVIDERTYPE /AWS1/MDCCMAFKEYPROVIDERTYPE¶
Specify whether your DRM encryption key is static or from a key provider that follows the SPEKE standard. For more information about SPEKE, see https://docs.aws.amazon.com/speke/latest/documentation/what-is-speke.html.
Queryable Attributes¶
ClearLead¶
Enable Clear Lead DRM to reduce video startup latency by leaving the first segment unencrypted while DRM license retrieval occurs in parallel. This optimization allows immediate playback startup while maintaining content protection for the remainder of the stream. When enabled, the first output segment remains fully unencrypted, and encryption begins at the start of the second segment. The HLS manifest will omit #EXT-X-KEY tags during the clear segment and insert the first #EXT-X-KEY immediately before the first encrypted fragment. This feature is supported exclusively for CMAF HLS (fMP4) outputs and is compatible with all existing key provider integrations (SPEKE v1, SPEKE v2, and Static Key encryption). Supported codecs: H.264, H.265, and AV1 video codecs, and AAC audio codec. Choose Enabled to activate Clear Lead DRM optimization. Choose Disabled to use standard encryption where all segments are encrypted from the beginning.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_CLEARLEAD() |
Getter for CLEARLEAD, with configurable default |
ASK_CLEARLEAD() |
Getter for CLEARLEAD w/ exceptions if field has no value |
HAS_CLEARLEAD() |
Determine if CLEARLEAD has a value |
ConstantInitializationVector¶
This is a 128-bit, 16-byte hex value represented by a 32-character text string. If this parameter is not set then the Initialization Vector will follow the segment number by default.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_CONSTANTINITIALIZATION00() |
Getter for CONSTANTINITIALIZATIONVECTOR, with configurable d |
ASK_CONSTANTINITIALIZATION00() |
Getter for CONSTANTINITIALIZATIONVECTOR w/ exceptions if fie |
HAS_CONSTANTINITIALIZATION00() |
Determine if CONSTANTINITIALIZATIONVECTOR has a value |
EncryptionMethod¶
Specify the encryption scheme that you want the service to use when encrypting your CMAF segments. Choose AES-CBC subsample or AES_CTR.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ENCRYPTIONMETHOD() |
Getter for ENCRYPTIONMETHOD, with configurable default |
ASK_ENCRYPTIONMETHOD() |
Getter for ENCRYPTIONMETHOD w/ exceptions if field has no va |
HAS_ENCRYPTIONMETHOD() |
Determine if ENCRYPTIONMETHOD has a value |
InitializationVectorInManifest¶
When you use DRM with CMAF outputs, choose whether the service writes the 128-bit encryption initialization vector in the HLS and DASH manifests.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_INITIALIZATIONVECTORIN00() |
Getter for INITIALIZATIONVECTORINMANI00, with configurable d |
ASK_INITIALIZATIONVECTORIN00() |
Getter for INITIALIZATIONVECTORINMANI00 w/ exceptions if fie |
HAS_INITIALIZATIONVECTORIN00() |
Determine if INITIALIZATIONVECTORINMANI00 has a value |
SpekeKeyProvider¶
If your output group type is CMAF, use these settings when doing DRM encryption with a SPEKE-compliant key provider. If your output group type is HLS, DASH, or Microsoft Smooth, use the SpekeKeyProvider settings instead.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_SPEKEKEYPROVIDER() |
Getter for SPEKEKEYPROVIDER |
StaticKeyProvider¶
Use these settings to set up encryption with a static key provider.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_STATICKEYPROVIDER() |
Getter for STATICKEYPROVIDER |
Type¶
Specify whether your DRM encryption key is static or from a key provider that follows the SPEKE standard. For more information about SPEKE, see https://docs.aws.amazon.com/speke/latest/documentation/what-is-speke.html.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_TYPE() |
Getter for TYPE, with configurable default |
ASK_TYPE() |
Getter for TYPE w/ exceptions if field has no value |
HAS_TYPE() |
Determine if TYPE has a value |