imferno
SMPTE ST-2067
for Rust and JavaScript.
Parse, validate, and inspect IMF packages with native Node.js bindings and a WebAssembly target for the browser.
IMF core + applications
Parse AssetMaps, PKLs, and CPLs per SMPTE ST 2067-2, ST 2067-3, and Application profiles including ST 2067-21 and ST 2067-201.
Flexible strictness
250+ validation rules across 8 SMPTE standards. Tune each rule individually: set any code to off, info, warn, error, or critical to match your workflow.
Rust, Node.js & WASM
Use the native Rust library or CLI directly, @imferno/node bindings for server-side pipelines, or the WebAssembly build for the browser.
IMF reference corpus
Tested against the Netflix Photon MERIDIAN reference corpus. ST 2067-2, ST 2067-3, ST 2067-21, and ST 2067-201 fully covered.
No global install needed. Run the latest version directly.
npx imferno@latest validate ./my-package Install the native Rust binary. Offline, no runtime.
cargo install imferno imferno validate ./my-package Native bindings for server-side pipelines and automation.
npm install @imferno/node ESM module powered by WebAssembly. Use it in any browser or bundler.
npm install @imferno/wasm Standards coverage
SMPTE ST-2067 implementation status.
| Standard | Description | Status |
|---|---|---|
| Complete | ||
| ST 429-9 | Volume Index / Asset Map | Complete |
| ST 2067-2:2013, :2016, :2020 | Core Constraints & Packing List | Complete |
| ST 2067-3:2013, :2016, :2020 | Composition Playlist | Complete |
| ST 2067-21:2020, :2023, :2025 | Application #2E (UHD/HDR) | Complete |
| ST 2067-201:2019, :2021 | IAB Level 0 Plug-in | Complete |
| ST 2067-9:2018 | Sidecar Composition Map | Complete |
| ST 2067-202:2022 | ISXD Plug-in | Complete |
| Partial | ||
| ST 377-1:2011 | MXF File Format | Partial |
| Not implemented | ||
| ST 429-8 | D-Cinema Packing List | Not implemented |
| ST 2067-100:2014 | Output Profile List | Not implemented |
| ST 2067-203:2023 | S-ADM Audio Plug-in | Not implemented |
| ST 377-41 | MXF MGA / S-ADM Virtual Tracks | Not implemented |
| ST 379-2:2010 | MXF Generic Container | Not implemented |
| ST 422:2014 | JPEG 2000 in MXF | Not implemented |
If imferno is useful to your workflow, consider sponsoring the project.