Packaging

Packaging

bento4-mp4decrypt

{
  "tags": [
    "itest",
    "packaging",
    "bento4_mp4decrypt"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "utils:env",
      "parameters": {
        "encrypted_mp4": "h264_fragmented_encrypted/fragmented_encrypted.mp4",
        "key_id": "b2e17ba2-3a1b-4c2e-8540-696da16ba61f",
        "key_hex": "acb421454a9f9fe1dc86c47bd059194b",
        "seed_hex": "34f9549d74a4f796f78201d35169abb4ba403c6e4524a909be6e7c2c11be",
        "output_folder_1": "output_1",
        "output_folder_2": "output_2",
        "output_folder_3": "output_3",
        "output_folder_4": "output_4"
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/3min",
        "files": [
          "{encrypted_mp4}"
        ]
      }
    },
    {
      "tool": "bento:mp4decrypt",
      "parameters": {
        "output_dir": "{output_folder_1}",
        "keys": [
          {
            "key_id_hex": "{key_id}",
            "key_hex": "{key_hex}"
          }
        ],
        "inputs": [
          {
            "input_file": "{encrypted_mp4}",
            "output_file": "decrypted.mp4"
          }
        ]
      }
    },
    {
      "tool": "bento:mp4decrypt",
      "parameters": {
        "output_dir": "{output_folder_2}",
        "keys": [
          {
            "key_id_hex": "{key_id}",
            "seed_hex": "{seed_hex}"
          }
        ],
        "inputs": [
          {
            "input_file": "{encrypted_mp4}",
            "output_file": "decrypted.mp4"
          }
        ]
      }
    },
    {
      "tool": "bento:mp4decrypt",
      "parameters": {
        "output_dir": "{output_folder_3}",
        "keys": [
          {
            "track_id": "1",
            "key_hex": "{key_hex}"
          }
        ],
        "inputs": [
          {
            "input_file": "{encrypted_mp4}",
            "output_file": "decrypted.mp4"
          }
        ]
      }
    },
    {
      "tool": "bento:mp4decrypt",
      "parameters": {
        "output_dir": "{output_folder_4}",
        "input_patterns": ["h264_fragmented_encrypted/*.mp4"],
        "keys": [
          {
            "track_id": "1",
            "key_hex": "{key_hex}"
          }
        ],
        "inputs": [
          {
            "input_file": "none",
            "output_file": "decrypted.mp4"
          }
        ]
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-bento4-mp4decrypt_{job_id}",
        "files": [
          "{output_folder_1}/*",
          "{output_folder_2}/*",
          "{output_folder_3}/*",
          "{output_folder_4}/*"
        ]
      }
    }
  ]
}

bento4_mp42hls

{
  "tags": [
    "itest",
    "packaging",
    "bento4_mp42hls"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "audiovideo.mp4"
        ]
      }
    },
    {
      "tool": "bento:mp42hls",
      "parameters": {
        "segment_duration": 1,
        "output_single_file": false,
        "hls_version": 3,
        "encryption_mode": "AES-128",
        "segment_url_template": "packaging-bento4_mp42hls/%d.ts",
        "encryption_key_uri": "key.bin",
        "segment_duration_threshold": 50,
        "encryption_key_format": "identity",
        "encryption_key": "e057ca239d4db488e66659dc4830eae2ca699380c81301b296a536c932348c2f",
        "index_filename": "packaging-bento4_mp42hls/manifest.m3u8",
        "encryption_iv_mode": "fps",
        "verbose": true,
        "input": "audiovideo.mp4",
        "segment_filename_template": "packaging-bento4_mp42hls/%d.ts"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-bento4_mp42hls_{job_id}",
        "files": [
          "packaging-bento4_mp42hls/*"
        ]
      }
    }
  ]
}

bento4_mp42ts

{
  "tags": [
    "itest",
    "packaging",
    "bento4_mp42ts"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "audiovideo.mp4"
        ]
      }
    },
    {
      "tool": "bento:mp42ts",
      "parameters": {
        "input": "audiovideo.mp4",
        "output": "packaging-bento4_mp42ts/audiovideo.ts"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-bento4_mp42ts_{job_id}",
        "files": [
          "packaging-bento4_mp42ts/audiovideo.ts"
        ]
      }
    }
  ]
}

bento4_mp4hls-drmtoday

{
  "tags": [
    "itest",
    "packaging",
    "bento4_mp4hls-drmtoday"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos-deu.vtt",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ]
      }
    },
    {
      "parameters": {
        "merchant": "six",
        "user": "six::vtktest",
        "password": "{six--vtktest-password}",
        "environment": "STAGING",
        "asset_id": "vtk_integration_test_{job_id}",
        "variant_id": "{job_id}",
        "output_dir": "packaging-bento4_mp4hls-drmtoday",
        "master_playlist_name": "master.m3u8",
        "output_single_file": "true",
        "input": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4",
          "[+format=webvtt,+language=de,+language_name=castlabs.role.subtitle.default]tos-deu.vtt"
        ]
      },
      "tool": "bento:mp4hls-drmtoday"
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-bento4_mp4hls-drmtoday_{job_id}",
        "files": [
          "packaging-bento4_mp4hls-drmtoday/*"
        ]
      }
    }
  ]
}

bento4_mp4hls

{
  "tags": [
    "itest",
    "packaging",
    "bento4_mp4hls"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos-deu.vtt",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ]
      }
    },
    {
      "parameters": {
        "output_dir": "packaging-bento4_mp4hls",
        "master_playlist_name": "master.m3u8",
        "output_single_file": "true",
        "input": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4",
          "[+format=webvtt,+language=de,+language_name=castlabs.role.subtitle.default]tos-deu.vtt"
        ]
      },
      "tool": "bento:mp4hls"
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-bento4_mp4hls_{job_id}",
        "files": [
          "packaging-bento4_mp4hls/*"
        ]
      }
    }
  ]
}

bento4_mp4mux

{
  "tags": [
    "itest",
    "packaging",
    "bento4_mp4mux"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.h264",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.aac",
          "tos_5s_audio_44100Hz_64k_HE_2chan_ita.aac"
        ]
      }
    },
    {
      "tool": "bento:mp4mux",
      "parameters": {
        "output_file": "muxed.mp4",
        "tracks": [
          {
            "input": "tos_5s_video_1920x1080_2mbps.h264",
            "type": "h264"
          },
          {
            "input": "tos_5s_audio_44100Hz_64k_HE_2chan_eng.aac",
            "params": "language=eng",
            "type": "aac"
          },
          {
            "input": "tos_5s_audio_44100Hz_64k_HE_2chan_ita.aac",
            "params": "language=ita",
            "type": "aac"
          }
        ]
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-bento4_mp4mux_{job_id}",
        "files": [
          "muxed.mp4"
        ]
      }
    }
  ]
}

dashencrypt_dash

{
  "tags": [
    "itest",
    "packaging",
    "dashencrypt_dash"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos-deu.vtt",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ]
      }
    },
    {
      "tool": "dash:dash",
      "parameters": {
        "tracks": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ],
        "subtitles": [
          "tos-deu.vtt"
        ],
        "closed_captions": [
          "tos-deu.vtt"
        ],
        "mv": "5",
        "ma": "5",
        "smoothstreamingcompat": "true",
        "compresstimeline": "true",
        "timescale": "10000000",
        "outputdir": "packaging-dashencrypt_dash/"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-dashencrypt_dash_{job_id}",
        "files": [
          "packaging-dashencrypt_dash/*"
        ]
      }
    }
  ]
}

dashencrypt_drmtoday

{
  "tags": [
    "itest",
    "packaging",
    "dashencrypt_drmtoday"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos-deu.vtt",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ]
      }
    },
    {
      "tool": "dash:drmtoday",
      "parameters": {
        "tracks": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ],
        "subtitles": [
          "tos-deu.vtt[role=abc|def]"
        ],
        "closed_captions": [
          "tos-deu.vtt[role=abc|def]"
        ],
        "mv": "5",
        "ma": "5",
        "compresstimeline": "true",
        "timescale": "10000000",
        "license_acq_ui_url": "https://playready.com",
        "license_acq_url": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx",
        "widevine_provider": "castlabs",
        "clear_lead": "0",
        "generate_single_key": "true",
        "smoothstreamingcompat": "true",
        "environment": "STAGING",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "asset_id": "vtk_integration_test_dashencrypt_{job_id}",
        "outputdir": "packaging-dashencrypt_drmtoday/"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-dashencrypt_drmtoday_{job_id}",
        "files": [
          "packaging-dashencrypt_drmtoday/*"
        ]
      }
    }
  ]
}

dashencrypt_encrypt

{
  "tags": [
    "itest",
    "packaging",
    "dashencrypt_encrypt"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos-deu.vtt",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ]
      }
    },
    {
      "tool": "dash:encrypt",
      "parameters": {
        "video_uuid": "{cenc-key-id}",
        "keyseed": "{cenc-key-seed}",
        "widevine_provider": "castlabs",
        "license_acq_ui_url": "https://playready.com",
        "license_acq_url": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx",
        "clear_lead": "0",
        "tracks": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4"
        ],
        "subtitles": [
          "tos-deu.vtt"
        ],
        "closed_captions": [
          "tos-deu.vtt"
        ],
        "outputdir": "packaging-dashencrypt_encrypt/"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-dashencrypt_encrypt_{job_id}",
        "files": [
          "packaging-dashencrypt_encrypt/*"
        ]
      }
    }
  ]
}

dashencrypt_encrypt2

{
  "tags": [
    "itest",
    "packaging",
    "dashencrypt_encrypt2"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos-deu.vtt",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4",
          "tos_10s_deu.dfxp"
        ]
      }
    },
    {
      "tool": "dash:encrypt2",
      "parameters": {
        "environment": "STAGING",
        "generate_single_key": "true",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "register": true,
        "asset_id": "vtk_integration_test_encrypt2_{job_id}",
        "input": [
          {
            "file": "tos_5s_video_1920x1080_2mbps.mp4"
          },
          {
            "file": "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4",
            "langOut": "en"
          },
          {
            "file": "tos_10s_deu.dfxp",
            "langOut": "de"
          }
        ],
        "outputdir": "packaging-dashencrypt_encrypt2/"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-dashencrypt_encrypt2_{job_id}",
        "files": [
          "packaging-dashencrypt_encrypt2/*"
        ]
      }
    }
  ]
}

m3u8-create-edit

{
  "tags": [
    "itest",
    "encoding",
    "m3u8-create-edit"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos-deu.vtt",
          "master_no_subs.m3u8"
        ]
      }
    },
    {
      "tool": "m3u8_generate:subs_playlist",
      "parameters": {
        "input_vtt": "tos-deu.vtt",
        "playlist_filename": "tos-deu.vtt",
        "output_file": "subs-deu.m3u8"
      }
    },
    {
      "tool": "m3u8_edit:add_hdcp_level",
      "parameters": {
        "input_master_playlist": "master_no_subs.m3u8",
        "output_master_playlist": "master_no_subs_hdcp.m3u8",
        "hdcp_type_1_min_width": "1280",
        "hdcp_type_0_min_width": "0"
      }
    },
    {
      "tool": "m3u8_edit:add_subtitles",
      "parameters": {
        "input_master_playlist": "master_no_subs.m3u8",
        "output_master_playlist": "master_w_subs.m3u8",
        "inputs": [
          {
            "name": "deu",
            "group_id": "subtitles",
            "uri": "subs-deu.m3u8",
            "language": "deu",
            "autoselect": true,
            "default": true,
            "forced": false,
            "closed_captions": true,
            "characteristics": [
              "a.custom.uti.01"
            ]
          }
        ]
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/m3u8-create-edit_{job_id}",
        "files": [
          "master_w_subs.m3u8",
          "subs-deu.m3u8",
          "master_no_subs_hdcp.m3u8"
        ]
      }
    }
  ]
}

m3u8-edit-session-key

{
  "region": "aws:eu-west-1",
  "tags": [
    "itest",
    "m3u8-edit-session-key"
  ],
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/m3u8_ext_x_session_key",
        "files": [
          "master.m3u8",
          "aud.m3u8",
          "vid_sd1.m3u8",
          "vid_sd1_iframe.m3u8",
          "audio1.m3u8",
          "audio2.m3u8",
          "video1.m3u8",
          "video2.m3u8",
          "video3.m3u8",
          "video_tpf.m3u8",
          "master_2.m3u8"
        ]
      }
    },
    {
      "tool": "m3u8_edit:add_session_key",
      "parameters": {
        "input_media_playlists": [
          "vid_sd1.m3u8",
          "vid_sd1_iframe.m3u8",
          "aud.m3u8"
        ],
        "input_master_playlist": "master.m3u8",
        "output_master_playlist": "master_x_session_keys.m3u8"
      }
    },
    {
      "tool": "m3u8_edit:add_session_key",
      "parameters": {
        "input_media_playlists": [
          "audio1.m3u8",
          "audio2.m3u8",
          "video1.m3u8",
          "video2.m3u8",
          "video3.m3u8",
          "video_tpf.m3u8"
        ],
        "input_master_playlist": "master_2.m3u8",
        "output_master_playlist": "master_2_x_session_keys.m3u8"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/m3u8-edit-session-key_{job_id}",
        "files": [
          "*.m3u8"
        ]
      }
    }
  ]
}

mp2tsme_mux

{
  "tags": [
    "itest",
    "packaging",
    "mp2tsme",
    "mux"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/mp2tsme/",
        "files": [
          "tos_test_de_SUB.dvb",
          "tos_test_en_SUB.dvb",
          "tos_test_es_SUB.dvb",
          "tos_test_fr_SUB.dvb",
          "tos_test_it_SUB.dvb",
          "tos_test_nl_SUB.dvb",
          "tos_test_ru_SUB.dvb",
          "06696734-bba5-4c25-bb38-0d366c228101.aac",
          "a9cb4f18-7ff2-412b-9524-e46e53ef1930.aac",
          "c4d742e0-fcfc-4b26-91a4-e10236cb2af0.aac",
          "fb784652-f58e-47fd-bdf3-a4ef55515e79.aac",
          "79db4da6-5192-44d2-94e4-cecc7abb07ab.h264",
          "3cf2b8e9-cb7f-4876-8393-a4f995235d2c.mux"
        ]
      }
    },
    {
      "tool": "mp2tsme:mux",
      "parameters": {
        "config_file": "3cf2b8e9-cb7f-4876-8393-a4f995235d2c.mux"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp2tsme_mux_{job_id}",
        "files": [
          "tos_test.mpg"
        ]
      }
    }
  ]
}

mp2tsme_mux_mpeg2

{
    "tags": [
      "itest",
      "mp2tsme",
      "mux"
    ],
    "region": "aws:eu-west-1",
    "tasks": [
      {
        "tool": "storage:get",
        "parameters": {
          "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/mp2tsme-mux/",
          "files": [
            "config.mux",
            "in_video.m2v",
            "in_audio_eng.mp2",
            "in_audio_ita.mp2",
            "in_audio_ger.mp2"
          ]
        }
      },
      {
        "tool": "mp2tsme:mux",
        "parameters": {
          "config_file": "config.mux"
        }
      },
      {
        "tool": "storage:put",
        "parameters": {
          "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/mp2tsme-mux_{job_id}",
          "files": [
            "out_video.mpg"
          ]
        }
      }
    ]
  }

mp2tsme_scenarist_to_manzanita

{
  "tags": [
    "itest",
    "packaging",
    "mp2tsme",
    "scenarist_to_manzanita"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/mp2tsme/",
        "files": [
          "TOS-de-60s.srt",
          "TOS-en-60s.srt",
          "TOS-es-60s.srt",
          "TOS-fr-Goofy-60s.srt",
          "TOS-it-60s.srt",
          "TOS-nl-60s.srt",
          "TOS-ru-60s.srt"
        ]
      }
    },
    {
      "tool": "captions:convert",
      "parameters": {
        "inputfile": "TOS-en-60s.srt",
        "language": "en",
        "outputformat": "SST",
        "position": "source",
        "outputfile": "tos_test_en_SUB.zip",
        "scenarist_compat": true
      }
    },
    {
      "tool": "captions:convert",
      "parameters": {
        "inputfile": "TOS-de-60s.srt",
        "language": "de",
        "outputformat": "SST",
        "position": "source",
        "outputfile": "tos_test_de_SUB.zip",
        "scenarist_compat": true
      }
    },
    {
      "tool": "captions:convert",
      "parameters": {
        "inputfile": "TOS-es-60s.srt",
        "language": "es",
        "outputformat": "SST",
        "position": "source",
        "outputfile": "tos_test_es_SUB.zip",
        "scenarist_compat": true
      }
    },
    {
      "tool": "captions:convert",
      "parameters": {
        "inputfile": "TOS-fr-Goofy-60s.srt",
        "language": "fr",
        "outputformat": "SST",
        "position": "source",
        "outputfile": "tos_test_fr_SUB.zip",
        "scenarist_compat": true
      }
    },
    {
      "tool": "captions:convert",
      "parameters": {
        "inputfile": "TOS-it-60s.srt",
        "language": "it",
        "outputformat": "SST",
        "position": "source",
        "outputfile": "tos_test_it_SUB.zip",
        "scenarist_compat": true
      }
    },
    {
      "tool": "captions:convert",
      "parameters": {
        "inputfile": "TOS-nl-60s.srt",
        "language": "nl",
        "outputformat": "SST",
        "position": "source",
        "outputfile": "tos_test_nl_SUB.zip",
        "scenarist_compat": true
      }
    },
    {
      "tool": "captions:convert",
      "parameters": {
        "inputfile": "TOS-ru-60s.srt",
        "language": "ru",
        "outputformat": "SST",
        "position": "source",
        "outputfile": "tos_test_ru_SUB.zip",
        "scenarist_compat": true
      }
    },
    {
      "tool": "mp2tsme:scenarist_to_manzanita",
      "parameters": {
        "input_file": "tos_test_en_SUB.zip",
        "bits_per_pixel": 4,
        "specify_every_pixel": true,
        "color_palette": "000000,BEBEBE,FFFFFF,00FF00",
        "language": "en",
        "width": 720,
        "height": 480,
        "output_file": "tos_test_en_SUB.dvb",
        "ignore_errors": true
      }
    },
    {
      "tool": "mp2tsme:scenarist_to_manzanita",
      "parameters": {
        "input_file": "tos_test_de_SUB.zip",
        "bits_per_pixel": 4,
        "specify_every_pixel": true,
        "color_palette": "000000,BEBEBE,FFFFFF,00FF00",
        "language": "de",
        "width": 720,
        "height": 480,
        "output_file": "tos_test_de_SUB.dvb",
        "ignore_errors": true
      }
    },
    {
      "tool": "mp2tsme:scenarist_to_manzanita",
      "parameters": {
        "input_file": "tos_test_es_SUB.zip",
        "bits_per_pixel": 4,
        "specify_every_pixel": true,
        "color_palette": "000000,BEBEBE,FFFFFF,00FF00",
        "language": "es",
        "width": 720,
        "height": 480,
        "output_file": "tos_test_es_SUB.dvb",
        "ignore_errors": true
      }
    },
    {
      "tool": "mp2tsme:scenarist_to_manzanita",
      "parameters": {
        "input_file": "tos_test_fr_SUB.zip",
        "bits_per_pixel": 4,
        "specify_every_pixel": true,
        "color_palette": "000000,BEBEBE,FFFFFF,00FF00",
        "language": "fr",
        "width": 720,
        "height": 480,
        "output_file": "tos_test_fr_SUB.dvb",
        "ignore_errors": true
      }
    },
    {
      "tool": "mp2tsme:scenarist_to_manzanita",
      "parameters": {
        "input_file": "tos_test_it_SUB.zip",
        "bits_per_pixel": 4,
        "specify_every_pixel": true,
        "color_palette": "000000,BEBEBE,FFFFFF,00FF00",
        "language": "it",
        "width": 720,
        "height": 480,
        "output_file": "tos_test_it_SUB.dvb",
        "ignore_errors": true
      }
    },
    {
      "tool": "mp2tsme:scenarist_to_manzanita",
      "parameters": {
        "input_file": "tos_test_nl_SUB.zip",
        "bits_per_pixel": 4,
        "specify_every_pixel": true,
        "color_palette": "000000,BEBEBE,FFFFFF,00FF00",
        "language": "nl",
        "width": 720,
        "height": 480,
        "output_file": "tos_test_nl_SUB.dvb",
        "ignore_errors": true
      }
    },
    {
      "tool": "mp2tsme:scenarist_to_manzanita",
      "parameters": {
        "input_file": "tos_test_ru_SUB.zip",
        "bits_per_pixel": 4,
        "specify_every_pixel": true,
        "color_palette": "000000,BEBEBE,FFFFFF,00FF00",
        "language": "ru",
        "width": 720,
        "height": 480,
        "output_file": "tos_test_ru_SUB.dvb",
        "ignore_errors": true
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp2tsme_scenarist_to_manzanita_{job_id}",
        "files": [
          "*.dvb"
        ]
      }
    }
  ]
}

mp4box_cat

{
  "tags": [
    "itest",
    "packaging",
    "mp4box_cat"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/",
        "files": [
          "chunk_001.mp4",
          "chunk_002.mp4"
        ]
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/",
        "files": [
          "IN/chunk_001.mp4",
          "IN/chunk_002.mp4"
        ]
      }
    },
    {
      "tool": "mp4box:cat",
      "parameters": {
        "fps": "23.976",
        "flat": "True",
        "inputs": [
          "chunk_001.mp4",
          "chunk_002.mp4"
        ],
        "output_dir": "out",
        "output": "file.mp4"
      }
    },
    {
      "tool": "mp4box:cat",
      "parameters": {
        "fps": "23.976",
        "flat": "True",
        "inputs": [
          "IN/*.mp4"
        ],
        "output_dir": "out2",
        "output": "file.mp4"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp4box_cat_{job_id}",
        "files": [
          "out/*",
          "out2/*"
        ]
      }
    }
  ]
}

mp4box_cmd

{
  "tags": [
    "itest",
    "packaging",
    "mp4box_cmd"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/",
        "files": [
          "chunk_001.mp4"
        ]
      }
    },
    {
      "tool": "mp4box:cmd",
      "parameters": {
        "arguments": [
          "-udta",
          "1:type=tagc:str=public.accessibility.describes-video",
          "-out",
          "with_udta.mp4",
          "chunk_001.mp4"
        ]
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp4box_cmd_{job_id}",
        "files": [
          "with_udta.mp4"
        ]
      }
    }
  ]
}

mp4split_createism

{
  "tags": [
    "itest",
    "packaging",
    "mp4split_createism"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_10s_1080p_1152x480_1500.ismv",
          "tos_10s_1080p_500x208_330.ismv",
          "tos_10s_1080p_614x256_800.ismv",
          "tos_10s_1080p_768x320_1250.ismv",
          "tos_10s_eng.isma",
          "tos_10s_deu.ismt"
        ]
      }
    },
    {
      "tool": "utils:mkdir",
      "parameters": {
        "dir": "packaging-mp4split_createism"
      }
    },
    {
      "tool": "mp4split:createism",
      "parameters": {
        "output": "packaging-mp4split_createism/manifest.ism",
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "inputs": [
          {
            "file": "tos_10s_eng.isma",
            "track_name": "Englisch",
            "track_language": "eng"
          },
          {
            "file": "tos_10s_deu.ismt",
            "track_name": "Deutsch",
            "track_language": "deu"
          },
          {
            "file": "tos_10s_1080p_1152x480_1500.ismv"
          },
          {
            "file": "tos_10s_1080p_500x208_330.ismv"
          },
          {
            "file": "tos_10s_1080p_614x256_800.ismv"
          },
          {
            "file": "tos_10s_1080p_768x320_1250.ismv"
          }
        ]
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp4split_createism_{job_id}",
        "files": [
          "packaging-mp4split_createism/*"
        ]
      }
    }
  ]
}

mp4split_hls

{
  "tags": [
    "itest",
    "packaging",
    "mp4split_hls"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_ita.mp4",
          "tos_10s_deu.ismt"
        ]
      }
    },
    {
      "tool": "mp4split:hls",
      "parameters": {
        "inputfiles": [
          "tos_5s_video_1920x1080_2mbps.mp4"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls/v2/prog_index.m3u8",
        "start_segments_with_iframe": 1,
        "base_media_file": "v2_"
      }
    },
    {
      "tool": "mp4split:hls|p",
      "parameters": {
        "inputfiles": [
          "tos_5s_audio_44100Hz_64k_HE_2chan_ita.mp4"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls/a1/prog_index.m3u8",
        "base_media_file": "a1_"
      }
    },
    {
      "tool": "mp4split:hls|p",
      "parameters": {
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "inputfiles": [
          "tos_10s_deu.ismt"
        ],
        "output": "packaging-mp4split_hls/s2/prog_index.m3u8"
      }
    },
    {
      "parameters": {
        "inputfiles": [
          "packaging-mp4split_hls/v2/prog_index.m3u8",
          "packaging-mp4split_hls/a1/prog_index.m3u8",
          "packaging-mp4split_hls/s2/prog_index.m3u8"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls/variantplaylist.m3u8"
      },
      "tool": "mp4split:hls"
    },
    {
      "parameters": {
        "hexvalue": "159440aed52e04963b0714d08b7db2ec65bb3c8434eb8bf4d53797969884f31a",
        "outputfile": "key.iv"
      },
      "tool": "utils:write_bytes"
    },
    {
      "tool": "mp4split:hls",
      "parameters": {
        "inputfiles": [
          "tos_5s_video_1920x1080_2mbps.mp4"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls-fps/v2/prog_index.m3u8",
        "start_segments_with_iframe": 1,
        "encrypt_key_file": "key.iv",
        "encrypt_key_url": "skd://drmtoday?assetId=drmtodayfairplaysubtitles&variantId=",
        "stream_encrypt": 1,
        "streaming_key_delivery": 1,
        "base_media_file": "v2_"
      }
    },
    {
      "tool": "mp4split:hls|p",
      "parameters": {
        "inputfiles": [
          "tos_5s_audio_44100Hz_64k_HE_2chan_ita.mp4"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls-fps/a1/prog_index.m3u8",
        "encrypt_key_file": "key.iv",
        "encrypt_key_url": "skd://drmtoday?assetId=drmtodayfairplaysubtitles&variantId=",
        "stream_encrypt": 1,
        "streaming_key_delivery": 1,
        "base_media_file": "a1_"
      }
    },
    {
      "tool": "mp4split:hls|p",
      "parameters": {
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "inputfiles": [
          "tos_10s_deu.ismt"
        ],
        "output": "packaging-mp4split_hls-fps/s2/prog_index.m3u8"
      }
    },
    {
      "parameters": {
        "inputfiles": [
          "packaging-mp4split_hls-fps/v2/prog_index.m3u8",
          "packaging-mp4split_hls-fps/a1/prog_index.m3u8",
          "packaging-mp4split_hls-fps/s2/prog_index.m3u8"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls-fps/variantplaylist.m3u8"
      },
      "tool": "mp4split:hls"
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp4split_hls_{job_id}",
        "files": [
          "packaging-mp4split_hls/*",
          "packaging-mp4split_hls-fps/*"
        ]
      }
    }
  ]
}

mp4split_hls_drmtoday

{
  "tags": [
    "itest",
    "packaging",
    "mp4split_hls_drmtoday"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_ita.mp4"
        ]
      }
    },
    {
      "parameters": {
        "inputfiles": [
          "tos_5s_video_1920x1080_2mbps.mp4"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls_drmtoday/v1/prog_index.m3u8",
        "merchant": "six",
        "user": "six::vtktest",
        "password": "{six--vtktest-password}",
        "environment": "STAGING",
        "asset_id": "vtk_integration_test_{job_id}",
        "stream_encrypt": 1,
        "streaming_key_delivery": 1,
        "base_media_file": "v1_"
      },
      "tool": "mp4split:hls_drmtoday"
    },
    {
      "parameters": {
        "inputfiles": [
          "tos_5s_audio_44100Hz_64k_HE_2chan_ita.mp4"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls_drmtoday/a1/prog_index.m3u8",
        "merchant": "six",
        "user": "six::vtktest",
        "password": "{six--vtktest-password}",
        "environment": "STAGING",
        "asset_id": "vtk_integration_test_{job_id}",
        "variant_id": "testtesttest",
        "stream_encrypt": 1,
        "streaming_key_delivery": 1,
        "base_media_file": "a1_"
      },
      "tool": "mp4split:hls_drmtoday"
    },
    {
      "parameters": {
        "inputfiles": [
          "packaging-mp4split_hls_drmtoday/v1/prog_index.m3u8",
          "packaging-mp4split_hls_drmtoday/a1/prog_index.m3u8"
        ],
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_hls_drmtoday/variantplaylist.m3u8"
      },
      "tool": "mp4split:hls"
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp4split_hls_drmtoday_{job_id}",
        "files": [
          "packaging-mp4split_hls_drmtoday/*"
        ]
      }
    }
  ]
}

mp4split_iss

{
  "tags": [
    "itest",
    "packaging",
    "mp4split_iss"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos_5s_video_1920x1080_2mbps.mp4",
          "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4",
          "tos_10s_deu.dfxp"
        ]
      }
    },
    {
      "parameters": {
        "inputfiles": "tos_5s_video_1920x1080_2mbps.mp4",
        "timescale": "10000000",
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_iss/tos_5s_video_1920x1080_2mbps.ismv"
      },
      "tool": "mp4split:iss"
    },
    {
      "parameters": {
        "inputfiles": "tos_5s_audio_44100Hz_64k_HE_2chan_eng.mp4",
        "timescale": "10000000",
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_iss/tos_5s_audio_44100Hz_64k_HE_2chan_eng.isma"
      },
      "tool": "mp4split:iss"
    },
    {
      "parameters": {
        "inputfiles": "tos_10s_deu.dfxp",
        "timescale": "10000000",
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_iss/tos_10s_deu.ismt"
      },
      "tool": "mp4split:iss"
    },
    {
      "tool": "mp4split:createism",
      "parameters": {
        "output": "packaging-mp4split_iss/manifest.ism",
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "inputs": [
          {
            "file": "packaging-mp4split_iss/tos_5s_audio_44100Hz_64k_HE_2chan_eng.isma",
            "track_name": "Englisch",
            "track_language": "eng"
          },
          {
            "file": "packaging-mp4split_iss/tos_10s_deu.ismt",
            "track_name": "Deutsch",
            "track_language": "deu"
          },
          {
            "file": "packaging-mp4split_iss/tos_5s_video_1920x1080_2mbps.ismv"
          }
        ]
      }
    },
    {
      "parameters": {
        "inputfiles": "packaging-mp4split_iss/manifest.ism",
        "license_key": "{MP4SPLIT_LICENSE_KEY-DEV}",
        "output": "packaging-mp4split_iss/manifest.ismc"
      },
      "tool": "mp4split:iss"
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-mp4split_iss_{job_id}",
        "files": [
          "packaging-mp4split_iss/*"
        ]
      }
    }
  ]
}

mpd-edit

{
  "tags": [
    "itest",
    "encoding",
    "mpd-edit"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN",
        "files": [
          "tos-deu.vtt",
          "dash-no-subs.mpd"
        ]
      }
    },
    {
      "tool": "mpd_edit:add_subtitles",
      "parameters": {
        "input_manifest": "dash-no-subs.mpd",
        "output_manifest": "dash-w-subs.mpd",
        "inputs": [
          {
            "base_url": "tos-deu.vtt",
            "language": "deu",
            "textrole": "caption"
          }
        ]
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/mpd-edit_{job_id}",
        "files": [
          "dash-w-subs.mpd"
        ]
      }
    }
  ]
}

shaka_package_cmaf

{
  "tags": [
    "itest",
    "packaging",
    "shaka_package_cmaf"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "utils:env",
      "parameters": {
        "output_folder": "output",
        "video1_mp4": "video1.mp4",
        "video2_mp4": "video2.mp4",
        "video3_mp4": "video3.mp4",
        "video_tpf_mp4": "video_tpf.mp4",
        "video1_webm": "video1.webm",
        "video2_webm": "video2.webm",
        "video3_webm": "video3.webm",
        "video_tpf_webm": "video_tpf.webm",
        "video1_m3u8": "video1.m3u8",
        "video2_m3u8": "video2.m3u8",
        "video3_m3u8": "video3.m3u8",
        "video_tpf_m3u8": "video_tpf.m3u8",
        "audio1_mp4": "audio1.mp4",
        "audio2_mp4": "audio2.mp4",
        "audio1_webm": "audio1.webm",
        "audio2_webm": "audio2.webm",
        "audio1_m3u8": "audio1.m3u8",
        "audio2_m3u8": "audio2.m3u8",
        "sub1_webvtt": "sub1.webvtt",
        "sub2_webvtt": "sub2.webvtt",
        "sub3_webvtt": "sub3.webvtt",
        "mp4_hevc_vid2000k": "hevc_files/video_1280x720_2000k.mp4",
        "mp4_hevc_vid1500k": "hevc_files/video_960x540_1500k.mp4",
        "mp4_hevc_vid1000k": "hevc_files/video_640x360_1000k.mp4",
        "mp4_hevc_aac_muxed_v1_a1eng_a2ita": "muxed_hevc_aac_files/muxed_hevc_aac_v2000k_a1eng_a2ita.mp4",
        "mp4_h264_vid2000k": "h264_files/video_1280x720_2000k.mp4",
        "mp4_h264_vid1500k": "h264_files/video_960x540_1500k.mp4",
        "mp4_h264_vid1000k": "h264_files/video_640x360_1000k.mp4",
        "mp4_h264_aac_muxed_v1_a1eng_a2ita": "muxed_h264_aac_files/muxed_h264_aac_v2000k_a1eng_a2ita.mp4",
        "webm_vp9_vid2000k": "vp9_files/video_vp9_webm_2000k.webm",
        "webm_vp9_vid1500k": "vp9_files/video_vp9_webm_1500k.webm",
        "webm_vp9_vid1000k": "vp9_files/video_vp9_webm_1000k.webm",
        "webm_vp9_opus_muxed_v1_a1eng_a2ita": "muxed_vp9_opus_files/muxed_vp9_opus_v2000k_a1eng_a2ita.webm",
        "mp4_aac_audio_128k_eng": "aac_files/audio_eng_128k.mp4",
        "mp4_aac_audio_128k_ita": "aac_files/audio_ita_128k.mp4",
        "webm_opus_audio_128k_eng": "opus_files/audio_eng_128k.webm",
        "webm_opus_audio_128k_ita": "opus_files/audio_ita_128k.webm",
        "sub_webvtt_eng": "webvtt_files/tearsofsteel_4k_eng.webvtt",
        "sub_webvtt_deu": "webvtt_files/tearsofsteel_4k_deu.webvtt",
        "sub_webvtt_fra": "webvtt_files/tearsofsteel_4k_fra.webvtt"
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/3min",
        "files": [
          "h264_files/*",
          "hevc_files/*",
          "vp9_files/*",
          "aac_files/*",
          "opus_files/*",
          "muxed_h264_aac_files/*",
          "muxed_hevc_aac_files/*",
          "muxed_vp9_opus_files/*",
          "webvtt_files/*"
        ]
      }
    },
    {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "2000000",
            "playlist_name": "{video1_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1500000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "playlist_name": "{video2_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "playlist_name": "{video3_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "playlist_name": "{video_tpf_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "playlist_name": "{audio1_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "playlist_name": "{audio2_m3u8}"
          }
        ],
        "default_language": "eng",
        "default_text_language": "eng",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_10_cmaf_hevc_clear",
        "mpd_output": "dash.mpd",
        "hls_master_playlist_output": "master.m3u8"
      }
    },
    {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "1500000",
            "key_select": "my_key_01",
            "playlist_name": "{video1_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{video2_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{video3_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "key_select": "my_key_01",
            "playlist_name": "{video_tpf_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "skip_encryption": "1",
            "playlist_name": "{audio1_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{audio2_m3u8}"
          }
        ],
        "mp4_include_pssh_in_stream": "false",
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey",
        "mpd_output": "dash.mpd",
        "hls_master_playlist_output": "master.m3u8",
        "protection_scheme": "cbcs",
        "enable_raw_key_encryption": "True",
        "protection_systems": ["Widevine", "PlayReady", "FairPlay", "ChinaDRM"],
        "asset_id": "shaka_test_11_cmaf_hevc_cbcs_singlekey_{job_id}",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "environment": "STAGING",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          }
        ]
      }
    },
    {
      "tool": "m3u8_edit:add_session_key",
      "parameters": {
        "input_master_playlist": "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey/master.m3u8",
        "input_media_playlists": [
          "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey/{video1_m3u8}",
          "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey/{video2_m3u8}",
          "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey/{video3_m3u8}",
          "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey/{video_tpf_m3u8}",
          "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey/{audio1_m3u8}",
          "{output_folder}/shaka_test_11_cmaf_hevc_cbcs_singlekey/{audio2_m3u8}"
        ]
      }
    },
    {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "1500000",
            "key_select": "my_key_02",
            "playlist_name": "{video1_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{video2_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_03",
            "playlist_name": "{video3_m3u8}"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "key_select": "my_key_03",
            "playlist_name": "{video_tpf_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "skip_encryption": "1",
            "playlist_name": "{audio1_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_04",
            "playlist_name": "{audio2_m3u8}"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey",
        "hls_master_playlist_output": "master.m3u8",
        "mpd_output": "dash.mpd",
        "protection_scheme": "cbcs",
        "enable_raw_key_encryption": "True",
        "protection_systems": ["Widevine", "PlayReady", "FairPlay", "ChinaDRM"],
        "asset_id": "shaka_test_12_cmaf_hevc_cbcs_multikey_{job_id}",
        "environment": "STAGING",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          },
          {
            "key_label": "my_key_02",
            "key_streamtype": "HD"
          },
          {
            "key_label": "my_key_03",
            "key_streamtype": "SD"
          },
          {
            "key_label": "my_key_04",
            "key_streamtype": "AUDIO"
          }
        ]
      }
    },
    {
      "tool": "m3u8_edit:add_session_key",
      "parameters": {
        "input_master_playlist": "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey/master.m3u8",
        "input_media_playlists": [
          "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey/{video1_m3u8}",
          "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey/{video2_m3u8}",
          "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey/{video3_m3u8}",
          "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey/{video_tpf_m3u8}",
          "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey/{audio1_m3u8}",
          "{output_folder}/shaka_test_12_cmaf_hevc_cbcs_multikey/{audio2_m3u8}"
        ]
      }
    },
    {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_h264_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "2000000",
            "playlist_name": "{video1_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1500000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "playlist_name": "{video2_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "playlist_name": "{video3_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "playlist_name": "{video_tpf_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "playlist_name": "{audio1_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "playlist_name": "{audio2_m3u8}"
          }
        ],
        "default_language": "eng",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_13_cmaf_h264_clear",
        "mpd_output": "dash.mpd",
        "hls_master_playlist_output": "master.m3u8"
      }
    },
    {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_h264_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "1500000",
            "key_select": "my_key_01",
            "playlist_name": "{video1_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{video2_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{video3_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "key_select": "my_key_01",
            "playlist_name": "{video_tpf_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "skip_encryption": "1",
            "playlist_name": "{audio1_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{audio2_m3u8}"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey",
        "mpd_output": "dash.mpd",
        "hls_master_playlist_output": "master.m3u8",
        "protection_scheme": "cbcs",
        "enable_raw_key_encryption": "True",
        "protection_systems": ["Widevine", "PlayReady", "FairPlay", "ChinaDRM"],
        "asset_id": "shaka_test_14_cmaf_h264_cbcs_singlekey_{job_id}",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "environment": "STAGING",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          }
        ]
      }
    },
    {
      "tool": "m3u8_edit:add_session_key",
      "parameters": {
        "input_master_playlist": "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/master.m3u8",
        "input_media_playlists": [
          "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/{video1_m3u8}",
          "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/{video2_m3u8}",
          "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/{video3_m3u8}",
          "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/{video_tpf_m3u8}",
          "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/{audio1_m3u8}",
          "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/{audio2_m3u8}"
        ]
      }
    },
    {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_h264_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "1500000",
            "key_select": "my_key_02",
            "playlist_name": "{video1_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01",
            "playlist_name": "{video2_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_03",
            "playlist_name": "{video3_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "key_select": "my_key_03",
            "playlist_name": "{video_tpf_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "skip_encryption": "1",
            "playlist_name": "{audio1_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_04",
            "playlist_name": "{audio2_m3u8}"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_15_cmaf_h264_cbcs_multikey",
        "hls_master_playlist_output": "master.m3u8",
        "mpd_output": "dash.mpd",
        "protection_scheme": "cbcs",
        "enable_raw_key_encryption": "True",
        "protection_systems": ["Widevine", "PlayReady", "FairPlay", "ChinaDRM"],
        "asset_id": "shaka_test_15_cmaf_h264_cbcs_multikey_{job_id}",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "environment": "STAGING",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          },
          {
            "key_label": "my_key_02",
            "key_streamtype": "HD"
          },
          {
            "key_label": "my_key_03",
            "key_streamtype": "SD"
          },
          {
            "key_label": "my_key_04",
            "key_streamtype": "AUDIO"
          }
        ]
      }
    },
    {
      "tool": "m3u8_edit:add_session_key",
      "parameters": {
        "input_master_playlist": "{output_folder}/shaka_test_14_cmaf_h264_cbcs_singlekey/master.m3u8",
        "input_media_playlists": [
          "{output_folder}/shaka_test_15_cmaf_h264_cbcs_multikey/{video1_m3u8}",
          "{output_folder}/shaka_test_15_cmaf_h264_cbcs_multikey/{video2_m3u8}",
          "{output_folder}/shaka_test_15_cmaf_h264_cbcs_multikey/{video3_m3u8}",
          "{output_folder}/shaka_test_15_cmaf_h264_cbcs_multikey/{video_tpf_m3u8}",
          "{output_folder}/shaka_test_15_cmaf_h264_cbcs_multikey/{audio1_m3u8}",
          "{output_folder}/shaka_test_15_cmaf_h264_cbcs_multikey/{audio2_m3u8}"
        ]
      }
    },
    {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "bandwidth": "2000000",
            "playlist_name": "vid_01/{video1_m3u8}",
            "segment_template": "vid_01/$Number$.m4s",
            "init_segment": "vid_01/init.mp4"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1500000",
            "playlist_name": "vid_02/{video2_m3u8}",
            "segment_template": "vid_02/$Number$.m4s",
            "init_segment": "vid_02/init.mp4"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "playlist_name": "vid_03/{video3_m3u8}",
            "segment_template": "vid_03/$Number$.m4s",
            "init_segment": "vid_03/init.mp4"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "bandwidth": "128000",
            "playlist_name": "audio_01/{audio1_m3u8}",
            "segment_template": "audio_01/$Number$.m4s",
            "init_segment": "audio_01/init.mp4"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "playlist_name": "audio_02/{audio2_m3u8}",
            "segment_template": "audio_02/$Number$.m4s",
            "init_segment": "audio_02/init.mp4"
          }
        ],
        "default_language": "eng",
        "default_text_language": "eng",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_cmaf_hevc_clear_segment_template",
        "mpd_output": "dash.mpd",
        "hls_master_playlist_output": "master.m3u8"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-shaka_package_cmaf_{job_id}",
        "files": [
          "{output_folder}/*"
        ]
      }
    }
  ]
}

shaka_package_cmaf_roles

{
  "tags": [
    "itest",
    "packaging",
    "shaka_package_cmaf_roles"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "utils:env",
      "parameters": {
        "output_folder": "output",
        "video1_mp4": "video1.mp4",
        "video2_mp4": "video2.mp4",
        "video3_mp4": "video3.mp4",
        "video_tpf_mp4": "video_tpf.mp4",
        "video1_webm": "video1.webm",
        "video2_webm": "video2.webm",
        "video3_webm": "video3.webm",
        "video_tpf_webm": "video_tpf.webm",
        "video1_m3u8": "video1.m3u8",
        "video2_m3u8": "video2.m3u8",
        "video3_m3u8": "video3.m3u8",
        "video_tpf_m3u8": "video_tpf.m3u8",
        "audio1_mp4": "audio1.mp4",
        "audio2_mp4": "audio2.mp4",
        "audio1_webm": "audio1.webm",
        "audio2_webm": "audio2.webm",
        "audio1_m3u8": "audio1.m3u8",
        "audio2_m3u8": "audio2.m3u8",
        "sub1_webvtt": "sub1.webvtt",
        "sub2_webvtt": "sub2.webvtt",
        "sub3_webvtt": "sub3.webvtt",
        "mp4_hevc_vid2000k": "hevc_files/video_1280x720_2000k.mp4",
        "mp4_hevc_vid1500k": "hevc_files/video_960x540_1500k.mp4",
        "mp4_hevc_vid1000k": "hevc_files/video_640x360_1000k.mp4",
        "mp4_hevc_aac_muxed_v1_a1eng_a2ita": "muxed_hevc_aac_files/muxed_hevc_aac_v2000k_a1eng_a2ita.mp4",
        "mp4_h264_vid2000k": "h264_files/video_1280x720_2000k.mp4",
        "mp4_h264_vid1500k": "h264_files/video_960x540_1500k.mp4",
        "mp4_h264_vid1000k": "h264_files/video_640x360_1000k.mp4",
        "mp4_h264_aac_muxed_v1_a1eng_a2ita": "muxed_h264_aac_files/muxed_h264_aac_v2000k_a1eng_a2ita.mp4",
        "webm_vp9_vid2000k": "vp9_files/video_vp9_webm_2000k.webm",
        "webm_vp9_vid1500k": "vp9_files/video_vp9_webm_1500k.webm",
        "webm_vp9_vid1000k": "vp9_files/video_vp9_webm_1000k.webm",
        "webm_vp9_opus_muxed_v1_a1eng_a2ita": "muxed_vp9_opus_files/muxed_vp9_opus_v2000k_a1eng_a2ita.webm",
        "mp4_aac_audio_128k_eng": "aac_files/audio_eng_128k.mp4",
        "mp4_aac_audio_128k_ita": "aac_files/audio_ita_128k.mp4",
        "webm_opus_audio_128k_eng": "opus_files/audio_eng_128k.webm",
        "webm_opus_audio_128k_ita": "opus_files/audio_ita_128k.webm",
        "sub_webvtt_eng": "webvtt_files/tearsofsteel_4k_eng.webvtt",
        "sub_webvtt_deu": "webvtt_files/tearsofsteel_4k_deu.webvtt",
        "sub_webvtt_fra": "webvtt_files/tearsofsteel_4k_fra.webvtt"
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/3min",
        "files": [
          "h264_files/*",
          "hevc_files/*",
          "vp9_files/*",
          "aac_files/*",
          "opus_files/*",
          "muxed_h264_aac_files/*",
          "muxed_hevc_aac_files/*",
          "muxed_vp9_opus_files/*",
          "webvtt_files/*"
        ]
      }
    },
        {
      "tool": "shaka:package_cmaf",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_h264_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "2000000",
            "playlist_name": "{video1_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1500000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "playlist_name": "{video2_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "playlist_name": "{video3_m3u8}"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "playlist_name": "{video_tpf_m3u8}"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "und",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "playlist_name": "{audio1_m3u8}",
            "roles": "alternate",
            "dash_only": "1"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "playlist_name": "{audio2_m3u8}",
            "roles": "alternate",
            "hls_only": "1"
          }
        ],
        "default_language": "eng",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_13_cmaf_h264_clear",
        "mpd_output": "dash.mpd",
        "hls_master_playlist_output": "master.m3u8"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-shaka_package_cmaf_roles_{job_id}",
        "files": [
          "{output_folder}/*"
        ]
      }
    }
  ]
}

shaka_package_dash

{
  "tags": [
    "itest",
    "packaging",
    "shaka_package_dash"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "utils:env",
      "parameters": {
        "output_folder": "output",
        "video1_mp4": "video1.mp4",
        "video2_mp4": "video2.mp4",
        "video3_mp4": "video3.mp4",
        "video_tpf_mp4": "video_tpf.mp4",
        "video1_webm": "video1.webm",
        "video2_webm": "video2.webm",
        "video3_webm": "video3.webm",
        "video_tpf_webm": "video_tpf.webm",
        "video1_m3u8": "video1.m3u8",
        "video2_m3u8": "video2.m3u8",
        "video3_m3u8": "video3.m3u8",
        "video_tpf_m3u8": "video_tpf.m3u8",
        "audio1_mp4": "audio1.mp4",
        "audio2_mp4": "audio2.mp4",
        "audio1_webm": "audio1.webm",
        "audio2_webm": "audio2.webm",
        "audio1_m3u8": "audio1.m3u8",
        "audio2_m3u8": "audio2.m3u8",
        "sub1_webvtt": "sub1.webvtt",
        "sub2_webvtt": "sub2.webvtt",
        "sub3_webvtt": "sub3.webvtt",
        "mp4_hevc_vid2000k": "hevc_files/video_1280x720_2000k.mp4",
        "mp4_hevc_vid1500k": "hevc_files/video_960x540_1500k.mp4",
        "mp4_hevc_vid1000k": "hevc_files/video_640x360_1000k.mp4",
        "mp4_hevc_aac_muxed_v1_a1eng_a2ita": "muxed_hevc_aac_files/muxed_hevc_aac_v2000k_a1eng_a2ita.mp4",
        "mp4_h264_vid2000k": "h264_files/video_1280x720_2000k.mp4",
        "mp4_h264_vid1500k": "h264_files/video_960x540_1500k.mp4",
        "mp4_h264_vid1000k": "h264_files/video_640x360_1000k.mp4",
        "mp4_h264_aac_muxed_v1_a1eng_a2ita": "muxed_h264_aac_files/muxed_h264_aac_v2000k_a1eng_a2ita.mp4",
        "webm_vp9_vid2000k": "vp9_files/video_vp9_webm_2000k.webm",
        "webm_vp9_vid1500k": "vp9_files/video_vp9_webm_1500k.webm",
        "webm_vp9_vid1000k": "vp9_files/video_vp9_webm_1000k.webm",
        "webm_vp9_opus_muxed_v1_a1eng_a2ita": "muxed_vp9_opus_files/muxed_vp9_opus_v2000k_a1eng_a2ita.webm",
        "mp4_aac_audio_128k_eng": "aac_files/audio_eng_128k.mp4",
        "mp4_aac_audio_128k_ita": "aac_files/audio_ita_128k.mp4",
        "webm_opus_audio_128k_eng": "opus_files/audio_eng_128k.webm",
        "webm_opus_audio_128k_ita": "opus_files/audio_ita_128k.webm",
        "sub_webvtt_eng": "webvtt_files/tearsofsteel_4k_eng.webvtt",
        "sub_webvtt_deu": "webvtt_files/tearsofsteel_4k_deu.webvtt",
        "sub_webvtt_fra": "webvtt_files/tearsofsteel_4k_fra.webvtt"
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/3min",
        "files": [
          "h264_files/*",
          "hevc_files/*",
          "vp9_files/*",
          "aac_files/*",
          "opus_files/*",
          "muxed_h264_aac_files/*",
          "muxed_hevc_aac_files/*",
          "muxed_vp9_opus_files/*",
          "webvtt_files/*"
        ]
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "2000000"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1500000",
            "output": "{video2_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{sub_webvtt_eng}",
            "stream_selector": "text",
            "language": "eng",
            "output": "{sub1_webvtt}"
          }
        ],
        "default_language": "eng",
        "fragment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_01_dash_hevc_clear",
        "mpd_output": "dash.mpd"
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "1500000",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "skip_encryption": "1"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_02_dash_hevc_cenc_singlekey",
        "protection_scheme": "cenc",
        "protection_systems": ["Widevine", "PlayReady", "ChinaDRM"],
        "enable_raw_key_encryption": "True",
        "mpd_output": "dash.mpd",
        "asset_id": "shaka_test_02_dash_hevc_cenc_singlekey_{job_id}",
        "environment": "STAGING",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          }
        ]
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "1500000",
            "key_select": "my_key_02"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_03"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "key_select": "my_key_03"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "skip_encryption": "1"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "key_select": "my_key_04"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_03_dash_hevc_cenc_multikey",
        "protection_scheme": "cenc",
        "protection_systems": ["Widevine", "PlayReady", "ChinaDRM"],
        "enable_raw_key_encryption": "True",
        "mpd_output": "dash.mpd",
        "asset_id": "shaka_test_03_dash_hevc_cenc_multikey_{job_id}",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "environment": "STAGING",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          },
          {
            "key_label": "my_key_02",
            "key_streamtype": "HD"
          },
          {
            "key_label": "my_key_03",
            "key_streamtype": "SD"
          },
          {
            "key_label": "my_key_04",
            "key_streamtype": "AUDIO"
          }
        ]
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{webm_vp9_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_webm}"
          },
          {
            "input_file": "{webm_vp9_vid1500k}",
            "stream_selector": "0",
            "output": "{video2_webm}",
            "output_format": "webm",
            "bandwidth": "1000000"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_webm}",
            "output_format": "webm"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_webm}",
            "trick_play_factor": "10"
          },
          {
            "input_file": "{webm_opus_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_webm}",
            "output_format": "webm"
          },
          {
            "input_file": "{webm_opus_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "output": "{audio2_webm}"
          }
        ],
        "default_language": "eng",
        "fragment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_04_dash_vp9_clear",
        "mpd_output": "dash.mpd"
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{webm_vp9_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_webm}",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{webm_vp9_vid1500k}",
            "stream_selector": "0",
            "output": "{video2_webm}",
            "output_format": "webm",
            "bandwidth": "1000000",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_webm}",
            "output_format": "webm",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_webm}",
            "trick_play_factor": "10",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{webm_opus_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_webm}",
            "output_format": "webm",
            "skip_encryption": "1"
          },
          {
            "input_file": "{webm_opus_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "output": "{audio2_webm}",
            "key_select": "my_key_01"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_05_dash_vp9_cenc_singlekey",
        "mpd_output": "dash.mpd",
        "enable_raw_key_encryption": "True",
        "protection_scheme": "cenc",
        "protection_systems": ["Widevine", "PlayReady", "ChinaDRM"],
        "asset_id": "shaka_test_05_dash_vp9_cenc_singlekey_{job_id}",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "environment": "STAGING",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          }
        ]
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{webm_vp9_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_webm}",
            "key_select": "my_key_02"
          },
          {
            "input_file": "{webm_vp9_vid1500k}",
            "stream_selector": "0",
            "output": "{video2_webm}",
            "output_format": "webm",
            "bandwidth": "1000000",
            "key_select": "my_key_01"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_webm}",
            "output_format": "webm",
            "key_select": "my_key_03"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_webm}",
            "trick_play_factor": "10",
            "key_select": "my_key_03"
          },
          {
            "input_file": "{webm_opus_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_webm}",
            "output_format": "webm",
            "key_select": "my_key_04"
          },
          {
            "input_file": "{webm_opus_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "output": "{audio2_webm}",
            "skip_encryption": "1"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_06_dash_vp9_cenc_multikey",
        "mpd_output": "dash.mpd",
        "enable_raw_key_encryption": "True",
        "protection_scheme": "cenc",
        "protection_systems": ["Widevine", "PlayReady", "ChinaDRM"],
        "asset_id": "shaka_test_06_dash_vp9_cenc_multikey_{job_id}",
        "merchant": "six",
        "password": "{six--vtktest-password}",
        "user": "six::vtktest",
        "environment": "STAGING",
        "drmkeys": [
          {
            "key_label": "my_key_01",
            "key_streamtype": "VIDEO_AUDIO"
          },
          {
            "key_label": "my_key_02",
            "key_streamtype": "HD"
          },
          {
            "key_label": "my_key_03",
            "key_streamtype": "SD"
          },
          {
            "key_label": "my_key_04",
            "key_streamtype": "AUDIO"
          }
        ]
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_h264_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}"
          },
          {
            "input_file": "{mp4_h264_vid1500k}",
            "stream_selector": "0",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "bandwidth": "1000000"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "trick_play_factor": "10"
          },
          {
            "input_file": "{mp4_h264_aac_muxed_v1_a1eng_a2ita}",
            "stream_selector": "1",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "output": "{audio2_mp4}"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_07_dash_h264_clear",
        "mpd_output": "dash.mpd"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-shaka_package_dash_{job_id}",
        "files": [
          "{output_folder}/*"
        ]
      }
    }
  ]
}

shaka_package_dash_roles

{
  "tags": [
    "itest",
    "packaging",
    "shaka_package_dash_roles"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "utils:env",
      "parameters": {
        "output_folder": "output",
        "video1_mp4": "video1.mp4",
        "video2_mp4": "video2.mp4",
        "video3_mp4": "video3.mp4",
        "video_tpf_mp4": "video_tpf.mp4",
        "video1_webm": "video1.webm",
        "video2_webm": "video2.webm",
        "video3_webm": "video3.webm",
        "video_tpf_webm": "video_tpf.webm",
        "video1_m3u8": "video1.m3u8",
        "video2_m3u8": "video2.m3u8",
        "video3_m3u8": "video3.m3u8",
        "video_tpf_m3u8": "video_tpf.m3u8",
        "audio1_mp4": "audio1.mp4",
        "audio2_mp4": "audio2.mp4",
        "audio1_webm": "audio1.webm",
        "audio2_webm": "audio2.webm",
        "audio1_m3u8": "audio1.m3u8",
        "audio2_m3u8": "audio2.m3u8",
        "audio_commentary_mp4": "audio_commentary.mp4",
        "sub1_webvtt": "sub1.webvtt",
        "sub2_webvtt": "sub2.webvtt",
        "sub3_webvtt": "sub3.webvtt",
        "mp4_hevc_vid2000k": "hevc_files/video_1280x720_2000k.mp4",
        "mp4_hevc_vid1500k": "hevc_files/video_960x540_1500k.mp4",
        "mp4_hevc_vid1000k": "hevc_files/video_640x360_1000k.mp4",
        "mp4_aac_audio_128k_eng": "aac_files/audio_eng_128k.mp4",
        "mp4_aac_audio_commentary_128k_eng": "aac_files/audio_eng_commentary_128k.mp4",
        "mp4_aac_audio_128k_ita": "aac_files/audio_ita_128k.mp4",
        "sub_webvtt_eng": "webvtt_files/tearsofsteel_4k_eng.webvtt",
        "sub_webvtt_deu": "webvtt_files/tearsofsteel_4k_deu.webvtt",
        "sub_webvtt_fra": "webvtt_files/tearsofsteel_4k_fra.webvtt"
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/3min",
        "files": [
          "hevc_files/*",
          "aac_files/*",
          "webvtt_files/*"
        ]
      }
    },
    {
      "tool": "utils:copy",
      "parameters": {
        "pattern": "aac_files/audio_eng_128k.mp4",
        "to": "aac_files/audio_eng_commentary_128k.mp4"
      }
    },
    {
      "tool": "shaka:package_dash",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_hevc_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "2000000"
          },
          {
            "input_file": "{mp4_hevc_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1500000",
            "output": "{video2_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_hevc_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{mp4_aac_audio_commentary_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio_commentary_mp4}",
            "output_format": "mp4",
            "roles": "commentary"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4"
          },
          {
            "input_file": "{sub_webvtt_eng}",
            "stream_selector": "text",
            "language": "eng",
            "output": "{sub1_webvtt}"
          }
        ],
        "default_language": "eng",
        "fragment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_01_dash_hevc_clear",
        "mpd_output": "dash.mpd"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-shaka_package_dash_roles_{job_id}",
        "files": [
          "{output_folder}/*"
        ]
      }
    }
  ]
}

shaka_package_dash_wvapi

{
  "tags": [
    "itest",
    "packaging",
    "shaka_package_dash_wvapi"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "utils:env",
      "parameters": {
        "output_folder": "output",
        "video1_mp4": "video1.mp4",
        "video2_mp4": "video2.mp4",
        "video3_mp4": "video3.mp4",
        "video_tpf_mp4": "video_tpf.mp4",
        "video1_webm": "video1.webm",
        "video2_webm": "video2.webm",
        "video3_webm": "video3.webm",
        "video_tpf_webm": "video_tpf.webm",
        "video1_m3u8": "video1.m3u8",
        "video2_m3u8": "video2.m3u8",
        "video3_m3u8": "video3.m3u8",
        "video_tpf_m3u8": "video_tpf.m3u8",
        "audio1_mp4": "audio1.mp4",
        "audio2_mp4": "audio2.mp4",
        "audio1_webm": "audio1.webm",
        "audio2_webm": "audio2.webm",
        "audio1_m3u8": "audio1.m3u8",
        "audio2_m3u8": "audio2.m3u8",
        "sub1_webvtt": "sub1.webvtt",
        "sub2_webvtt": "sub2.webvtt",
        "sub3_webvtt": "sub3.webvtt",
        "mp4_hevc_vid2000k": "hevc_files/video_1280x720_2000k.mp4",
        "mp4_hevc_vid1500k": "hevc_files/video_960x540_1500k.mp4",
        "mp4_hevc_vid1000k": "hevc_files/video_640x360_1000k.mp4",
        "mp4_hevc_aac_muxed_v1_a1eng_a2ita": "muxed_hevc_aac_files/muxed_hevc_aac_v2000k_a1eng_a2ita.mp4",
        "mp4_h264_vid2000k": "h264_files/video_1280x720_2000k.mp4",
        "mp4_h264_vid1500k": "h264_files/video_960x540_1500k.mp4",
        "mp4_h264_vid1000k": "h264_files/video_640x360_1000k.mp4",
        "mp4_h264_aac_muxed_v1_a1eng_a2ita": "muxed_h264_aac_files/muxed_h264_aac_v2000k_a1eng_a2ita.mp4",
        "webm_vp9_vid2000k": "vp9_files/video_vp9_webm_2000k.webm",
        "webm_vp9_vid1500k": "vp9_files/video_vp9_webm_1500k.webm",
        "webm_vp9_vid1000k": "vp9_files/video_vp9_webm_1000k.webm",
        "webm_vp9_opus_muxed_v1_a1eng_a2ita": "muxed_vp9_opus_files/muxed_vp9_opus_v2000k_a1eng_a2ita.webm",
        "mp4_aac_audio_128k_eng": "aac_files/audio_eng_128k.mp4",
        "mp4_aac_audio_128k_ita": "aac_files/audio_ita_128k.mp4",
        "webm_opus_audio_128k_eng": "opus_files/audio_eng_128k.webm",
        "webm_opus_audio_128k_ita": "opus_files/audio_ita_128k.webm",
        "sub_webvtt_eng": "webvtt_files/tearsofsteel_4k_eng.webvtt",
        "sub_webvtt_deu": "webvtt_files/tearsofsteel_4k_deu.webvtt",
        "sub_webvtt_fra": "webvtt_files/tearsofsteel_4k_fra.webvtt"
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/3min",
        "files": [
          "h264_files/*",
          "hevc_files/*",
          "vp9_files/*",
          "aac_files/*",
          "opus_files/*",
          "muxed_h264_aac_files/*",
          "muxed_hevc_aac_files/*",
          "muxed_vp9_opus_files/*",
          "webvtt_files/*"
        ]
      }
    },
    {
      "tool": "shaka:package_dash_wvapi",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_h264_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_mp4}",
            "output_format": "mp4",
            "bandwidth": "1500000",
            "drm_label": "HD"
          },
          {
            "input_file": "{mp4_h264_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_mp4}",
            "output_format": "mp4",
            "drm_label": "SD"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_mp4}",
            "output_format": "mp4",
            "drm_label": "SD"
          },
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_mp4}",
            "output_format": "mp4",
            "trick_play_factor": "10",
            "drm_label": "AUDIO"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_mp4}",
            "output_format": "mp4",
            "drm_label": "AUDIO"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_mp4}",
            "output_format": "mp4",
            "drm_label": "AUDIO"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_16_dash_h264_widevineAPI_cenc_multikey",
        "mpd_output": "dash.mpd",
        "protection_scheme": "cenc",
        "protection_systems": ["PlayReady", "Widevine"],
        "clear_lead": "0",
        "enable_widevine_encryption": "True",
        "aes_signing_iv": "{shaka_itest_aes_signing_iv}",
        "aes_signing_key": "{shaka_itest_aes_signing_key}",
        "key_server_url": "https://fe.{shaka_itest_secret_url}",
        "content_id": "3031323334353639",
        "signer": "castlabs"
      }
    },
    {
      "tool": "shaka:package_dash_wvapi",
      "parameters": {
        "inputs": [
          {
            "input_file": "{webm_vp9_vid2000k}",
            "stream_selector": "video",
            "output": "{video1_webm}",
            "output_format": "webm",
            "bandwidth": "1500000",
            "drm_label": "HD"
          },
          {
            "input_file": "{webm_vp9_vid1500k}",
            "stream_selector": "0",
            "bandwidth": "1200000",
            "output": "{video2_webm}",
            "output_format": "webm",
            "drm_label": "SD"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video3_webm}",
            "output_format": "webm",
            "drm_label": "SD"
          },
          {
            "input_file": "{webm_vp9_vid1000k}",
            "stream_selector": "0",
            "output": "{video_tpf_webm}",
            "output_format": "webm",
            "trick_play_factor": "10",
            "drm_label": "AUDIO"
          },
          {
            "input_file": "{webm_opus_audio_128k_eng}",
            "stream_selector": "audio",
            "language": "eng",
            "bandwidth": "128000",
            "output": "{audio1_webm}",
            "output_format": "webm",
            "drm_label": "AUDIO"
          },
          {
            "input_file": "{webm_opus_audio_128k_ita}",
            "stream_selector": "0",
            "language": "ita",
            "bandwidth": "128000",
            "output": "{audio2_webm}",
            "output_format": "webm",
            "drm_label": "AUDIO"
          }
        ],
        "default_language": "ita",
        "fragment_duration": "2",
        "segment_duration": "2",
        "output_dir": "{output_folder}/shaka_test_17_dash_vp9_widevineAPI_cenc_multikey",
        "mpd_output": "dash.mpd",
        "protection_scheme": "cenc",
        "protection_systems": ["PlayReady", "Widevine"],
        "clear_lead": "0",
        "enable_widevine_encryption": "True",
        "aes_signing_iv": "{shaka_itest_aes_signing_iv}",
        "aes_signing_key": "{shaka_itest_aes_signing_key}",
        "key_server_url": "https://fe.{shaka_itest_secret_url}",
        "content_id": "4031323334353640",
        "signer": "castlabs"
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-shaka_package_dash_wvapi_{job_id}",
        "files": [
          "{output_folder}/*"
        ]
      }
    }
  ]
}

shaka_package_mpegts

{
  "tags": [
    "itest",
    "packaging",
    "shaka_package_mpegts"
  ],
  "region": "aws:eu-west-1",
  "tasks": [
    {
      "tool": "utils:env",
      "parameters": {
        "mp4_h264_vid1000k": "h264_files/video_640x360_1000k.mp4",
        "mp4_h264_vid1500k": "h264_files/video_960x540_1500k.mp4",
        "mp4_h264_vid2000k": "h264_files/video_1280x720_2000k.mp4",
        "mp4_aac_audio_128k_eng": "aac_files/audio_eng_128k.mp4",
        "mp4_aac_audio_128k_ita": "aac_files/audio_ita_128k.mp4",
        "output_folder": "output"
      }
    },
    {
      "tool": "storage:get",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/IN/3min",
        "files": [
          "h264_files/*",
          "aac_files/*"
        ]
      }
    },
    {
      "tool": "drmtoday:ingest-cenc-key",
      "parameters": {
        "key_id": "{randomuuid}",
        "key_seed_id": "ff583d63-21dd-4500-a0d4-26b503d2098a",
        "environment" : "STAGING",
        "asset_id": "vtk_integration_test_{job_id}",
        "stream_type" : "SD",
        "user": "six::vtktest",
        "password": "{six--vtktest-password}",
        "env_prefix" : "sd"
      }
    },
    {
      "tool": "drmtoday:ingest-cenc-key",
      "parameters": {
        "key_id": "{randomuuid}",
        "key_seed_id": "ff583d63-21dd-4500-a0d4-26b503d2098a",
        "environment" : "STAGING",
        "asset_id": "vtk_integration_test_{job_id}",
        "stream_type" : "HD",
        "user": "six::vtktest",
        "password": "{six--vtktest-password}",
        "env_prefix" : "hd",
        "iv": "{sd_iv_hex}"
      }
    },
    {
      "tool": "drmtoday:ingest-cenc-key",
      "parameters": {
        "key_id": "{randomuuid}",
        "key_seed_id": "ff583d63-21dd-4500-a0d4-26b503d2098a",
        "environment" : "STAGING",
        "asset_id": "vtk_integration_test_{job_id}",
        "stream_type" : "AUDIO",
        "user": "six::vtktest",
        "password": "{six--vtktest-password}",
        "env_prefix" : "audio",
        "iv": "{sd_iv_hex}"
      }
    },
    {
      "tool": "shaka:package_mpegts",
      "parameters": {
        "inputs": [
          {
            "input_file": "{mp4_h264_vid1000k}",
            "stream_selector": "video",
            "key_select": "sd_key",
            "iframe_playlist_name": "video_01_iframe.m3u8",
            "segment_template": "video_01/$Number$.ts",
            "playlist_name": "video_01.m3u8",
            "hls_name": "video_01"
          },
          {
            "input_file": "{mp4_h264_vid1500k}",
            "stream_selector": "video",
            "key_select": "sd_key",
            "iframe_playlist_name": "video_02_iframe.m3u8",
            "segment_template": "video_02/$Number$.ts",
            "playlist_name": "video_02.m3u8",
            "hls_name": "video_02"
          },
          {
            "input_file": "{mp4_h264_vid2000k}",
            "stream_selector": "video",
            "key_select": "hd_key",
            "iframe_playlist_name": "video_03_iframe.m3u8",
            "segment_template": "video_03/$Number$.ts",
            "playlist_name": "video_03.m3u8",
            "hls_name": "video_03"
          },
          {
            "input_file": "{mp4_aac_audio_128k_eng}",
            "stream_selector": "audio",
            "key_select": "audio_key",
            "language": "en-US",
            "segment_template": "audio_01/$Number$.ts",
            "playlist_name": "audio_01.m3u8",
            "hls_group_id": "English",
            "hls_name": "audio_01"
          },
          {
            "input_file": "{mp4_aac_audio_128k_ita}",
            "stream_selector": "audio",
            "key_select": "audio_key",
            "language": "it-IT",
            "segment_template": "audio_02/$Number$.ts",
            "playlist_name": "audio_02.m3u8",
            "hls_group_id": "Italian",
            "hls_name": "audio_02"
          }
        ],
        "default_language": "en-US",
        "fragment_duration": "6",
        "segment_duration": "6",
        "output_dir": "{output_folder}",
        "protection_scheme": "cbcs",
        "enable_raw_key_encryption": "True",
        "hls_master_playlist_output": "master.m3u8",
        "protection_systems": ["FairPlay"],
        "drmkeys": [
          {
            "key_label": "sd_key",
            "key_streamtype": "SD",
            "key": "{sd_hex}",
            "key_id": "{sd_id_hex}",
            "key_iv": "{sd_iv_hex}"
          },
          {
            "key_label": "hd_key",
            "key_streamtype": "HD",
            "key": "{hd_hex}",
            "key_id": "{hd_id_hex}",
            "key_iv": "{hd_iv_hex}"
          },
          {
            "key_label": "audio_key",
            "key_streamtype": "AUDIO",
            "key": "{audio_hex}",
            "key_id": "{audio_id_hex}",
            "key_iv": "{audio_iv_hex}"
          }
        ]
      }
    },
    {
      "tool": "m3u8_edit:add_session_key",
      "parameters": {
        "input_master_playlist": "{output_folder}/master.m3u8",
        "input_media_playlists": [
          "{output_folder}/video_01.m3u8",
          "{output_folder}/video_02.m3u8",
          "{output_folder}/video_03.m3u8",
          "{output_folder}/audio_01.m3u8",
          "{output_folder}/audio_02.m3u8"
        ]
      }
    },
    {
      "tool": "storage:put",
      "parameters": {
        "location": "s3://{com-castlabs-vtk-itest-access-keys}@com.castlabs.vtk.itest/OUT/packaging-shaka_package_hls_{job_id}",
        "files": [
          "{output_folder}/*"
        ]
      }
    }
  ]
}
Previous topic: File Transfer
Next topic: Utilities