Packages

Packages

Transform supports the following ABR package formats:

typeFormat
ats Adaptive Transport Stream (ATS)
cmafCommon Media Application Format (CMAF)
dashMPEG Dynamic Adaptive Streaming over HTTP (DASH)
hls HTTP Live Streaming (HLS)
hss HTTP Smooth Streaming (HSS)

Package Properties

PropertyTypePackageDescription
SegmentDurationnumberThe nomimal duration (in seconds) of each media segment.
FragmentDurationnumberThe nominal duration (in seconds) of each media fragment.
SegmentAddressingenumDASH0 SegmentURL list
1 index-based SegmentTemplate
2 time based SegmentTemplate
3 base URL
PresentationTypestringDASHIndicates whether to create a static or dynamic presentation. This is intended for VOD (static) packages that use live addressing modes (index or time-based templates). Use the static option for creating VOD packages that consist of segmented files.
Set to stat for static and dyna for dynamic.
DvbProfilebooleanDASHIndicates whether to create a DVB MPEG-DASH profile.
MinimumVersionintegerHLSThe minimum version of the M3U8 playlists.
EncodingstringHSSManifest encoding, utf-8 or utf-16.

Containers

A package must specify the type of each output container as follows:

typeFormatPackage
audiAudio Elementary Stream (AAC, AC3, EAC3, MPEG)HLS
hlsiIntra-frame Only Transport StreamHLS
ttmlTimed Text Markup Language (TTML)DASH
ctmlTimed Text Markup Language (TTML)CMAF
mpg2MPEG-2 Transport StreamATS, HLS, DASH
mpg4MPEG-4 ISO Base Media FormatCMAF, DASH, HLS, HSS
webmWeb Media File Format (WebM)DASH
wvttWeb Video Text Track (WebVTT)DASH, HLS
cvttWeb Video Text Track (WebVTT)CMAF

Container Properties

PropertyTypePackageDescription
InitialbooleanIndicates the initial variant presented by the player.
OutputSingleFilebooleanIndicates whether to use byte range requests.
Profileenum0 MPEG2_SIMPLE_PROFILE
1 MPEG2_MAIN_PROFILE
2 MPEG4_ON_DEMAND_PROFILE
3 MPEG4_MAIN_PROFILE
5 WEBM_ON_DEMAND_PROFILE
7 MPEG_DASH_DVB_ON_DEMAND_PROFILE
PicturestringHLSAudio only still picture data as a hex string.
PictureMimeTypestringHLSAudio only still picture MIME type.
AudioFragmentationDurationintegerMPEG-2Minimum duration of each AAC PES packet specified in 90 kHz units.
InsertDvbAubooleanMPEG-2Indicates whether to insert DVB Access Unit (AU) information.
InitialPtsintegerMPEG-2Initial presentation timestamp (PTS) specified in 90 kHz units.
PcrOffsetintegerMPEG-2Program Clock Reference (PCR) offset specified in 90 kHz units.
PsiPeriodintegerMPEG-2Program System Information (PSI) table refresh period specified in 90 kHz ticks.
PtsDtsOffsetintegerMPEG-2Applies a fixed offset between the PTS and DTS timestamps specified in 90 kHz units.

Stream Properties

PropertyTypePackageDescription
ForcedbooleanHLSSee #EXT-X-MEDIA:FORCED
AutoSelectbooleanHLSSee #EXT-X-MEDIA:AUTOSELECT
DefaultbooleanHLSSee #EXT-X-MEDIA:DEFAULT
GroupstringHLSSee #EXT-X-MEDIA:GROUP
InStreamIdintegerHLSSee #EXT-X-MEDIA:INSTREAM-ID

Protection Systems

Transform supports the following DRM protection systems. MPEG Common Encryption (CENC) is implemented for MPEG DASH and CMAF package types.

typePackageDescription
clrkCENCClearKey (use only for testing)
fairCENC, HLSApple FairPlay
geneCENCGeneric
gpacCENCGPAC (Open Source)
playCENC, HSSMicrosoft PlayReady
vineCENCGoogle Widevine

Encryption Properties

PropertyTypePackageDescription
ContentProviderNamestringCENCName of the content provider.
ContentIdentifierstringCENCContent identifier assigned by the provider.
UriModeenumHLSDetermines the value of the #EXT-X-KEY:URI attribute:
0 key URI
1 playlist relative path of the key file
2 data URI containing the key
EncryptionMethodenumHLS0 no encryption
1 stream level AES-128
2 sample level AES-128
KeyFormatstringHLSValue of the #EXT-X-KEY:KEYFORMAT attribute.
KeyFormatVersionstringHLSValue of the #EXT-X-KEY:KEYFORMATVERSION attribute.

Path Templates

Adaptive Transport Stream (ATS)

Template NameDefault Path
presentation$package$.mpd
media$container$.ts

Common Media Application Format (CMAF)

Template NameDefault Path
presentation$package$.mpd
manifest$package$.m3u8
playlist$container$/index.m3u8
key$package$_$kid$.bin
media$container$/segment$segment$$init$.$extension$

Dynamic Adaptive Streaming over HTTP (DASH)

Template NameDefault Path
presentation"$package$.mpd"
media$container$/segment$segment$$time$$init$.$extension$

HTTP Live Streaming (HLS)

Template NameDefault Path
manifest$package$.m3u8
playlist$container$/index.m3u8
key$package$_$kid$.bin
media$container$/segment$_segment$.$extension$

HTTP Smooth Streaming (HSS)

Template NameDefault Path
client$package$.ismc
server$package$.ism
video$package$_$kbps$.ismv
audio$package$a$kbps$$language3$.isma
subtitle$package$_s$language3$.ismt