Skip to content
imferno

IMF Packages

An IMF Package (IMP) is a directory. Everything in it is described by the ASSETMAP.

my-title.imp/
├── ASSETMAP.xml
├── PKL_<uuid>.xml
├── CPL_<uuid>.xml # one or more
└── <uuid>.mxf # track files (video, audio, subs, etc.)

The entry point. Lists every file in the package with its UUID and relative path. imferno reads this first to build the file index.

<AssetMap xmlns="http://www.smpte-ra.org/schemas/429-9/2007/AM">
<Id>urn:uuid:...</Id>
<AssetList>
<Asset>
<Id>urn:uuid:...</Id>
<ChunkList>
<Chunk>
<Path>CPL_abc123.xml</Path>
</Chunk>
</ChunkList>
</Asset>
...
</AssetList>
</AssetMap>

Lists every file with its size and SHA-1 hash. Used for integrity verification. A package can have multiple PKLs (one per volume in a multi-volume delivery).

The timeline. A CPL describes one version of the title — a specific language, territory, or rating cut. It references track files by UUID and defines how they are assembled into segments and sequences.

A CPL contains one or more segments (acts or reels). Each segment contains sequences — parallel tracks:

  • MainImageSequence — video
  • MainAudioSequence — audio channels
  • SubtitlesSequence — subtitles
  • ForcedNarrativeSequence — forced narrative (burned-in subtitles)
  • HearingImpairedCaptionsSequence — captions
  • IABSequence — immersive audio (Dolby Atmos)

Each sequence contains resources — references to ranges within MXF track files, with entry point, source duration, and edit rate.

A title can have multiple CPLs sharing the same essence. A supplemental CPL adds a new version (say, a Dutch dub) without duplicating the video MXF — it just points to the same file UUID.

imferno tracks supplemental relationships via the isSupplemental flag on CplReport.

CPLs declare which Application profile they conform to:

ProfileDescription
App#2Standard HD/UHD
App#2EUHD with HDR (Dolby Vision, HDR10)
App#2ExtendedExtended color / dynamic range
App#5IMAX

imferno detects the profile from the ApplicationIdentification element in the CPL.