The MXF OP1a writer has an Interoperable Master Format (IMF) flavour that helps with the creation of IMF Track Files (as defined in SMPTE ST 2067-2). The flavour makes it easier to create IMF Track Files by pre-selecting certain required options. However, it does not have knowledge of all the Track Files defined for IMF (across SMPTE ST 2067-2, the IMF Applications, the IMF Plug-ins, etc) and it does not enforce compliance. For example, it does not check that the input essence and metadata will result in a compliant Track File.
The IMF flavour is enabled using the -t imf
clip type option in bmxtranswrap and raw2bmx. This results in the following settings for OP1a,
--head-fill 8192
)--index-follows
)--part 60
)--clip-wrap
)--track-map singlemca
)--primary-package
)--no-tc-track
)--audio-layout imf
). Use the --audio-layout
option to override this default value.--display-f2-offset 0
)The settings can be found in the code by searching for the OP1a define OP1A_IMF_FLAVOUR
and the descriptor define MXFDESC_IMF_FLAVOUR
. E.g. see if ((flavour & OP1A_IMF_FLAVOUR))
in src/mxf_op1a/OP1AFile.cpp
for the bulk of the settings.
IMF Track Files contain only a single essence component. bmx provides support for creating such files. If the input MXF files contain multiple essence tracks then use options such as --disable-video
, --disable-audio
, --disable-data
and --track-map
to disable tracks.
A number of topics related to creating complete IMF Track Files can be found in the docs/ directory, including Multi-channel Audio Labels, Timed Text, JPEG 2000 and ProRes.
The bmxtranswrap and raw2bmx tools allow setting metadata defined in SMPTE ST 2067-2,
--ref-image-edit-rate
)--ref-audio-align-level
)--active-height
)--active-width
)--active-x-offset
)--active-y-offset
)--center-cut-4-3
and --center-cut-14-9
)and SMPTE ST 2067-21 - Application #2E,
--display-primaries
)--display-white-point
)--display-max-luma
)--display-min-luma
)IMF Track File names conventionally include the UUID material number of the top-level file source package UMID. This can be accomplished automatically by supplying an output filename argument as a pattern, such as -o {Type}_{fp_uuid}.mxf
. This example pattern results in a filename beginning with VIDEO
, AUDIO
or DATA
, such as VIDEO_a145db5d-4623-4233-913f-15e16980b840.mxf
, but can be tuned with the --ess-type-names
parameter.