{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-mediaconvert/refs/heads/main/json-schema/mediaconvert-api-hls-encryption-settings-schema.json", "title": "HlsEncryptionSettings", "description": "Settings for HLS encryption", "type": "object", "properties": { "ConstantInitializationVector": { "allOf": [ { "$ref": "#/components/schemas/__stringMin32Max32Pattern09aFAF32" }, { "xml": { "name": "constantInitializationVector" }, "description": "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." } ] }, "EncryptionMethod": { "allOf": [ { "$ref": "#/components/schemas/HlsEncryptionType" }, { "xml": { "name": "encryptionMethod" }, "description": "Encrypts the segments with the given encryption scheme. Leave blank to disable. Selecting 'Disabled' in the web interface also disables encryption." } ] }, "InitializationVectorInManifest": { "allOf": [ { "$ref": "#/components/schemas/HlsInitializationVectorInManifest" }, { "xml": { "name": "initializationVectorInManifest" }, "description": "The Initialization Vector is a 128-bit number used in conjunction with the key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed in the manifest. Otherwise Initialization Vector is not in the manifest." } ] }, "OfflineEncrypted": { "allOf": [ { "$ref": "#/components/schemas/HlsOfflineEncrypted" }, { "xml": { "name": "offlineEncrypted" }, "description": "Enable this setting to insert the EXT-X-SESSION-KEY element into the master playlist. This allows for offline Apple HLS FairPlay content protection." } ] }, "SpekeKeyProvider": { "allOf": [ { "$ref": "#/components/schemas/SpekeKeyProvider" }, { "xml": { "name": "spekeKeyProvider" }, "description": "If your output group type is HLS, DASH, or Microsoft Smooth, use these settings when doing DRM encryption with a SPEKE-compliant key provider. If your output group type is CMAF, use the SpekeKeyProviderCmaf settings instead." } ] }, "StaticKeyProvider": { "allOf": [ { "$ref": "#/components/schemas/StaticKeyProvider" }, { "xml": { "name": "staticKeyProvider" }, "description": "Use these settings to set up encryption with a static key provider." } ] }, "Type": { "allOf": [ { "$ref": "#/components/schemas/HlsKeyProviderType" }, { "xml": { "name": "type" }, "description": "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." } ] } } }