OpAtom MXF -> AAF

alex chu
  • alex chu
    alex chu


    I am looking for a solution using AAF SDK(c++) to match OpAtom mxf data to AAF (reference) file. Where AAF has mxf information but not physical data.

    I want to backup mxf clip (with codec DV25 DNxHD IMX) from Avid ISIS/Interplay to some other tapelibrary and generate AAF file from those mxf file. After that we can pull&drag AAF to Avid bin and copy those mxf file to Avid ISIS to finish checkin.

    My question is:

    1. How to match mxf to aaf using AAF SDK(c++) ?

    2. Is there any information  we can find about mapping OpAtom mxf to AAF ?

    3. How to match Op1a mxf file to AAF ? 

    4. Can we manipulate AAF just like doing markin/markout/segmentation on QT reference (Mov file) without duplicate physical file?  After we modify the new segmentation we can save to new AAF file and pull&drag this new AAF to Avid bin and copy those related mxf file to Avid ISIS and finish checkin.


    • Vladimir

      Hi Alex,

      The easiest thing might to try exporting to AAF but I'm not sure how Avid's support of Op1a is.

      Alternatively you could try using the Modid to match mxf to aaf with the SDK. The master mob id must be the same for MXF and AAF.

      On information  about mapping OpAtom mxf to AAF, I think Avid generated OpAtom files only contain one file mob for each file.  You must have ALL OpAtom files for the clip, e.g. V1, A1, A2 and etc., in order to reconstruct the aaf.

      As to manipulating AAF, you should be able to create an aaf for creating a subclip which uses a segment of the media without duplicating the physical file.

    • Phil Tudor
      Phil Tudor

      Hi Alex,

      In the BBC Ingex system, MXF OP Atom media files are created, which are later referenced by an AAF file. The MXF OP Atom files are each 1 track per file, and contain a Material Package & a File Source Package. The AAF file (in our example) is used to bundle together a whole collection of clips and some compositions; it contains a Composition Package (a rough edit) and Material Packages.

      We have tried this with an Avid system - if the Material Packages in the AAF file match (=same ID) the Material Packages of the MXF media files in an Avid media directory, then the media comes online when the AAF file is dropped onto the Avid UI.

      Depending what target device you are using, you should check carefully what particular flavours of MXF it supports (which OP, which codecs etc.)

      Here are some links to BBC Research White Papers describing this:

      Improving workflow in practice for low-cost programme-making using MXF & AAF
      file formats

      Tapeless and paperless: Automating the workflow in TV studio production

      File-based Production: Making It Work In Practice, September 2007

      Most of the code is open sourced; see



    • alex chu
      alex chu

      Thank you for the respond.

      I have carefully read all the three white papers and download ingex libmxf sdk. We also use SDI to ingest video and use LTO-3 tape to archive Op1a mxf files. In paper " File-Based Production: Making IT work in practice" page 7 has mentioned the technique about Partial restore from data tape. Given a list of in and out timecodes a partial restore can be made by creating a new MXF file containing specified sections.

      I was wondering how to do that ?
      Since our LTO-3 tape store Op1a, we need to convert specified partial section to OpAtom ( V1 A1 A2) and generate aaf for 
      Avid checkin.

      From page 8, it seems that this tool is still under development!!

      Any progress and new feature that I can find using libmxf?

      One more issue is that libmxf can't be compiled under windows visual studio 2005.