ExportSimpleComposition does not work

  • Vincent Burel

    Vincent Burel - 2008-06-06


    i'm just starting to play with AAF SDK (AAF-runtime-libs-Win- & AAF-src-1.1.2.zip) and i try to understand how to build an AAF file to create composition to be imported inside audio software.

    First i would like to say, that even if i know well how to manage COM objects, the lurning curve is incredibly long to understand a bit how to manage AAF Object, and after 10 days passed on, i feel that i'm still in the fog. I really miss a documentation explaining how to build compatible AAF file with AAF SDK to describe a simple EDL (audio and video clip on a timeline), is there such a document somewhere ?

    So, i've build the ExportSimpleComposition example, after having some small problems like :
    - The 3 DLL's are not really COM component that can be registered on the system and must be in the right directorie structure (otherwise you get an error 0x80120097 on CreateEssence for example):
       - AAFCOAPI.dll
       - aafext / AAFINTP.dll
       - aafext / AAFPGAPI.dll
    - The AAFguide.pdf document is using unknonwn functions like EnumAAFAllMobs or totally wrong method like comparing a pointer on interface and a GUID (page 17) :
       // Compare Segment DataDef with Sound
       if (memcmp(&segmentDataDef, &DDEF_Sound, sizeof(segmentDataDef))==0)
    - The AAF explorer does not work (W2000 and XP) with other AAF file than the one provided with (example.aaf)

    WEll, the ExportSimpleComposition example works and build a composition of 10 clips of embedded audio "Laser.wav". Ok, when i read this AAF (with one of my tool) i see the SOURCEMOB, MASTERMOB and COMPOSITIONMOB with the sequence of 10 Clips. OK ! But why this AAF file cannot be imported in Protools or Pyramix ? what i missed ?

    thanks by advance
    Vincent Burel

    • Vincent Burel

      Vincent Burel - 2008-06-22

      Hello Vincent,

      To make a composition fully compatible with software like pyramix or Protools, you need to check the following point :

      - The composition Mob must have a name pCompMob->SetName(...).
      - In the composition mob, the slots containing sequence must have a valid PhysicalNum (related to track number e.g. pMobSlot->SetPhysicalNum(pMobSlot,1);)
      - In the composition mob, you may have to add a timeline slot containing a time code giving the starting position of the sequence.

      hope it helps.

      • John Emmas

        John Emmas - 2008-06-22

        Hi Vincent,

        I apologise if this information might be out of date - but from the last that I remember, Pyramix and Pro Tools would only import AAF files that contained embedded media. I haven't used either system for a long time though - so that situation might have changed now.

    • Vincent Burel

      Vincent Burel - 2008-06-24

      hello John,

      yes, it's out of date. Even they prefer non-embedded data (especially for video).

      But it's ok now, after investigation and experimentation, i've been able to solve most of the problems and to create compatible AAF file with non-embedded data...

      I've just lost a lot of time, and i hate that. One month to used this AAF Format (and i'm not yet able to manage crossfade), when 2 days should be enough with a simple XML format. It's UNACCEPTABLE. I would not promote it.



Log in to post a comment.