ISO 26430-9: Key Delivery Bundle for D-Cinema Content Distribution

Efficient Packaging of Multiple Key Delivery Messages in a Single Compressed Archive

Introduction to the Key Delivery Bundle

ISO 26430-9, adopted from SMPTE 430-9, specifies the Key Delivery Message bundle (KDMb) format for D-Cinema content distribution. The KDMb is a compressed archive (ustar format) that packages multiple Key Delivery Messages (KDMs) along with a catalog file into a single distributable container. This design addresses the logistical challenge of delivering individualized KDMs to every screen in a theater circuit, potentially involving hundreds of recipient devices per title.

The KDMb can represent an entire theater, a circuit, or any other grouping of recipients. This batching capability dramatically reduces the overhead of distributing individual KDM files instead of thousands of separate files, a single archive suffices.

KDMb File Structure and Catalog Format

The KDMb archive follows the ustar Interchange Format defined in IEEE Std 1003.1 (POSIX). At the top level, the archive must contain exactly one file named CATALOG (an XML document) and exactly one directory named CONTENT containing one or more KDM files. Any other top-level files or directories are ignored by compliant parsers. Archive files shall be regular files (no symlinks or device files) with permission mode 0444 (read-only), and all pathnames must be relative.

The CATALOG file uses XML Schema with the namespace http://www.smpte-ra.org/schemas/42910/2008/KDMB. The root Catalog element contains an Id (urn:uuid for asset management), optional AnnotationText and Creator elements, and a KDMFileList element. Each KDMFile entry specifies the CPLId (UUID of the associated Composition Playlist), FilePath (relative path within the CONTENT directory, 1-99 characters), Recipient identification (X.509 IssuerSerial and SubjectName), and the key validity window (ContentKeysNotValidBefore and ContentKeysNotValidAfter).

Element Required Description
Id Yes urn:uuid uniquely identifying the catalog
AnnotationText No Free-form human-readable description
Creator No Identifies the application that created the bundle
KDMFileList Yes List of KDMFile entries, each mapping a CPL to a Recipient and KDM file

Engineering Design Insights

The FilePath element uses the PathTextType constraint allowing only a-z, A-Z, 0-9, underscore, dash, and dot characters, with forward slash as path separator. File and directory names must begin with an alphanumeric character. All names must be case-sensitive but unique without regard to case an important constraint for cross-platform interoperability between Linux-based theater servers and Windows-based content preparation systems.

All archive files must have user and group ID of 0 (root) with text names set to root. This POSIX requirement ensures consistent extraction behavior across different operating systems and theater management platforms.

The Recipient element maps each KDM to a specific X.509 certificate identified by IssuerName and SerialNumber, plus the SubjectName from the certificate for routing purposes. This enables fast look-up: the catalog can be searched by CPL ID to find the correct KDM file for a given title, or by Recipient to find all KDMs for a specific projector, without scanning individual KDM files.

FAQs

Q: What problem does the KDMb solve that individual KDMs cannot?
A: Without KDMb, content distributors would need to transmit hundreds or thousands of individual KDM files separately one per screen per title. The KDMb bundles these into a single archive with a catalog that enables fast look-up by CPL or recipient, dramatically simplifying distribution logistics and reducing the risk of missing or mismatched KDMs.
Q: Can a KDMb contain KDMs for multiple theater circuits?
A: Yes. The KDMb can contain KDMs for any grouping of recipients, including an entire theater circuit. The catalog file maps each KDM to its specific CPL and recipient, allowing a single archive to serve a complex distribution hierarchy from post-production through distribution to exhibition.
Q: How does the KDMb handle file naming across different platforms?
A: The PathTextType constraint permits only alphanumeric characters, underscore, dash, and dot in filenames. All names are case-sensitive but must be unique without regard to case. The path separator is always forward slash. These constraints ensure compatibility across Windows, Linux, and macOS systems.

Leave a Reply

Your email address will not be published. Required fields are marked *