Using the Command Line Program#
Apart of using the graphical user interface it is also possible to generate KDMs from the command line. This is handy in automatized environments or for embedding easyDCP KDM Generator in large workflows.
In Windows, the standard easyDCP KDM Generator.exe cannot directly print to the command line. Instead call easyDCP KDM Generator.com. On Mac, there is no such limitation.
To print all available arguments and flags, start easyDCP KDM Generator from the command line with the -h option.
Parameters#
- -usage
easyDCP KDM Generator+ -d <DigestFile> -cpl <CplSelection> -i <ServerCertificateFile|ServerCertificateFolder|FacilityListMessageFile> [-recursive] -l <TrustedDeviceListCertificateFiles, TrustedDeviceListCertificateThumbprints> -o <OutputFolder> [-replicate-structure] -tz <TimeZone> -s <ValidityStartTime> -e <ValidityEndTime> -v <ValidityPeriodInDays> -k <SignerPrivateKeyFile> -p <SignerPrivateKeyFilePassword> -a <AnnotationText> -c <DisableForensicMarkingAudioChannelsAboveNumber [0-16]> [-t|-r] -w -n -h
- -usage
easyDCP KDM Generator+ -d <DistributionKDMFile> -m <ServerPrivateKeyFilePassword> -cpl <CplSelection> -i <ServerCertificatesInputFolder|ServerCertificate> [-recursive] -l <TrustedDeviceListCertificates, TrustedDeviceListThumbprints> -o <OutputFolder> [-replicate-structure] -tz <TimeZone> -s <ValidityStartTime> -e <ValidityEndTime> -v <ValidityPeriodInDays> -k <SignerPrivateKeyFile> -p <SignerPrivateKeyFilePassword> -a <AnnotationText> -c <DisableForensicMarkingAudioChannelsAboveNumber [0-16]> [-t|-r] -w -n -h -u
- -d
DCP Digest File or Distribution KDM file (*.dcpdig, *.xml). The DCP Digest / Distribution KDM file holds the encryption keys for a specific DCP or composition thereof. WARNING: DIGEST FILES HOLD THE KEYS TO DECRYPT DCPS AND SHALL NOT BE DELIVERED TO A THEATER!
- -cpl
Create KDM(s) only for a subset of composition containing the given string in thir title or uuid. If this pramaeter is not given KDM(s) will be generated for all composition.
- -m
Password for the Server Certificate Private Key File, which is required to decrypt Distribution KDM(s).
- -u
Save the password for decrypting your Distribution KDM(s). Please consider that this is very unsafe.
- -i
Server Certificate input file of folder holding the Server Certificate(s) for which KDM(s) will be created.
- -recursive
Look for Server Certificates in subfolders also.
- -l
Server Certificate input filenames or thumbprints of Trusted Device List (TDL) for which KDM(s) will be created. Filenames or thumbprints may be mixed and comma separated. If no input is given, the “assume trust” thumbprint “2jmj7l5rSw0yVb/vlWAYkK/YBwk=” will be added. NOTE: The parameters “-t” and “-l” are mutually exclusive.
- -o
Path to output folder where the KDMs will be stored after creation.
- -replicate-structure
If the parameter -recursive is given, subfolder structure of the input Server Certificate directory will be replicated in the output directory. Otherwise this parameter has no effect.
- -p
Password for the Signer Certificate Private Key File.
- -tz
Target time zone for the KDM(s). The given date and times will be interpret as local date and times of this time zone. If no time zone is given local time zone of system will be used. To print a list of all valid time zones use -tz list . If times are given in UTC, this parameter is invalid.
- -s
Start Time (as local or UTC time) for the validity period of the KDM. Following format expected: “YYYY-MM-DD[Thh:mm:ss[<+|->hh:mm]]” (e.g. 2014-05-06T08:44:47).
- -e
End Time (as local or UTC time) for the validity period of the KDM. Following format expected: “YYYY-MM-DD[Thh:mm:ss[<+|->hh:mm]]” (e.g. 2014-05-08T08:44:47).
- -v
Validity period in days from now on (e.g. 2)
- -a
Annotation Text for the KDM. If no Annotation Text is given, the Content Title of the Composition Playlist (CPL) is used.
- -t
Enforces “INTEROP” mode. NOTE: This setting is for backward compatibility only and is not recommended.
- -r
Enforces “SMPTE” mode. NOTE: The parameters “-t” and “-r” are mutually exclusive. It is recommended to omit both switches in order to auto-detect the conformity based on the targeted server certificates.
- -c
Disable Forensic Marking (FM) for audio channels above the given number. Values between 0 and 16 are permitted. If this parameter is omitted, FM will be enabled by default. If the input is a DKDM, FM flags will be carried over. The parameters “-t” and “-c” are mutually exclusive.
- -naming-scheme
Placeholders are: %1: CPL Content Title %2: Certificate File Name %3: KDM UUID %4: Date, user defined date and/or time format %5: Counter
- -naming-scheme-date-format
Date format for naming scheme.
- -n
No pause after generation process (for automatic scripting purposes).
- -w
Shows signer password in plain text instead of hidden text. (WARNING: This setting should only be used for debug purposes).
- -h
-help Shows Help and Licensing Information.
Date and Time Specification#
The command line allows more advanced date and time specifications for the valid from and valid to times. The parameters -s and -e are used for a concrete date and/or time. The values can be a date only, a date and time or a date and time with time zone offset. Date and time without time zone offset is interpreted as a local time. If no time zone is specified with the parameter -tz the current configured local time of the operating system will be used. Date and time with time zone offset will always be interpreted as UTC time. In this case the parameter -tz is invalid. To print a list of all available time zones use the parameter -tz with list, e.g. -tz list.
The parameter –v is used to specify a time-window in days beginning at the given start time. The resulting time-window of the generated KDM may deviate from the amount of specified days by plus or minus one hour. This is because easyDCP KDM Generator(+) takes daylight saving time (DST) into account. Therefore the local end time will always be the same as the local start time regardless if the start or end date is DST. E.g. if the start time is 13:30:00 local time, the end time will also be 13:30:00 local time.