Amazon MediaConvert · JSON Structure

Mediaconvert Api Hls Encryption Settings Structure

Settings for HLS encryption

Type: object Properties: 7
BroadcastingMedia ProcessingMedia

HlsEncryptionSettings is a JSON Structure definition published by Amazon MediaConvert, describing 7 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

ConstantInitializationVector EncryptionMethod InitializationVectorInManifest OfflineEncrypted SpekeKeyProvider StaticKeyProvider Type

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-mediaconvert/refs/heads/main/json-structure/mediaconvert-api-hls-encryption-settings-structure.json",
  "name": "HlsEncryptionSettings",
  "type": "object",
  "description": "Settings for HLS encryption",
  "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."
        }
      ]
    }
  }
}