Skip to content

dash:encrypt2

dash:encrypt2

castLabs DASHencrypt - DASH with optional encryption, and optional DRMtoday support

The latest commercial release of the open source project castLabs DASHencrypt with additional features

Open Source Version: DASHencrypt

Example with DRMtoday supported key registration and PRESTOplay thumbnail support PRESTOplay:

{
  "tool": "dash:encrypt2",
  "parameters": {
    "environment": "STAGING",
    "generate_single_key": "true",
    "merchant": "{merchant}",
    "password": "{password}",
    "user": "{api:user}",
    "register": true,
    "input": [
      {
        "file": "video/tos_10s_1080p_1152x480_1500.mp4"
      },
        "file": "audio/tos_10s_1080p_audio_ita.mp4",
        "langOut": "it"
      },
      {
        "file": "audio/tos_10s_1080p_audio_eng.mp4",
        "langOut": "en-US"
      },
      {
        "file": "subtitles/tos_eng.dfxp",
        "langOut": "en"
      }
      {
        "file": "thumbnails/*.jpg",
        "vtiles": 8,
        "htiles": 8,
        "thduration": 5
      }
    ],
    "outputdir": "encrypt2_test/",
    "asset_id": "{drmtoday_asset_id}"
  }
},
Parameter Properties Default Type Choice Description
input required [list value] dict Input specifier:
{
   "file" : "path/to/sourcefile",
   "typeSelector" : "audio" / "video" (optional) only select tracks of specified type from sourcefile
   "langSelector" : "eng"/"ger"/"fra" (optional) only select tracks of specified language from sourcefile (ISO-639 code as in MP4))
   "trackSelector" : "1/2/3" (optional) select track with specified trackID from sourcefile
   "langOut" : "pt-PT" / "de-DE" / "pt-BR" (optional) specify track language in DASH Manifest (defaults to MP4 language)
   "roleOut" : "captions" / "subtitle" / "main" / "alternate" / "supplementary" / "commentary" / "dub" (optional) specify tracks role (default: None)
}
outputdir optional output directory - if no output directory is given the current working directory is used.
register optional false bool Registers key at DRMtoday (mandates merchant, user, password, environment.)
ma optional 15 int Minimum Audio Segment Duration.
mv optional 4 int Minimum Video Segment Duration.
clearlead optional 0 int Clear Lead in seconds
force_key_overwrite optional false bool If set ingest will overwrite existing keys (default: false)
asset_id optional The DRMtoday Asset-ID
environment optional 'TEST', 'STAGING', 'PROD' The DRMtoday Environment
merchant optional The DRMtoday Merchant
password optional The DRMtoday CAS password
user optional The DRMtoday CAS User
variant_id optional The DRMtoday Variant-ID
generate_single_key optional false bool Generate a common key for audio and video.
generate_separate_key optional false bool Generate separate keys for audio and video
generate_separate_key_per_res_no_audio optional false bool Generate separate keys each resolution family and audio remains clear
generate_separate_key_per_res optional false bool Generate separate keys for audio and each resolution family
video_key_id optional Set standard video key ID (will be used for audio as if no separate audio key ID is set). E.g. 550e8400-e29b-11d4-a716-446655440000
video_key optional Set the video key (will be used for audio as if no separate audio key is set). E.g. 00000000000000000000000000000000
hd_key_id optional Set HD video key ID. E.g. 550e8400-e29b-11d4-a716-446655440000
hd_key optional Set the video key. E.g. 00000000000000000000000000000000
uhd_key_id optional Set standard video key ID. E.g. 550e8400-e29b-11d4-a716-446655440000
uhd_key optional Set the video key. E.g. 00000000000000000000000000000000
audio_key_id optional Set audio key ID (requires video key ID to be set). E.g. 550e8400-e29b-11d4-a716-446655440000
audio_key optional Set the audio key (requires video key to be set). E.g. 00000000000000000000000000000000
key_seed optional Key seed for key derivation according to PlayReady specs.