Skip to content
CutConvert

"Not a Compound File — this does not look like an AAF"

What CutConvert AAF converter says
“Not a Compound File — this does not look like an AAF.”

What is actually wrong

Every AAF, whatever made it, is stored as a Compound File Binary container with a fixed signature in the first eight bytes. When those bytes are missing, the file was not written as an AAF: it is an OMF, an XML or a zip renamed to .aaf, or a download that stopped early. The converter reads the header first and refuses to guess.

Fix it here: AAF to XML

Drop the file. It is detected and converted in your browser; nothing is uploaded. Free to start, no signup.

Convert a file now

Conversions …

Drop EDL, SRT, VTT, .prtranscript, or transcript files

Any caption, transcript or timeline file: CutConvert picks the converter and shows what survives · up to 100 KB per file

The fix, step by step

  1. Check the size

    An AAF with linked media is typically hundreds of kilobytes to a few megabytes. A file of zero bytes or a few hundred bytes never finished transferring; get it again.

  2. Check what it really is

    If it was emailed as a .zip or came out of Google Drive as a folder, unzip it and look for the .aaf inside. If the Avid editor chose OMF or XML, the extension is misleading.

  3. Convert the real AAF

    Drop the intact .aaf here. The converter reads the header, the content storage and the composition, and writes Final Cut Pro 7 XML or a Resolve .drp.

What the converter checks first

AAF files are built on the same container format as old Microsoft Office documents: a Compound File Binary, with a magic signature (D0 CF 11 E0 A1 B1 1A E1) at byte zero, a sector table and a directory of streams. The AAF header, the metadata dictionary and the composition all live inside that container. The first thing the converter does is verify the signature and the sector table. If they are not there, nothing else can be read, and it says so rather than producing an empty timeline.

The four things it usually turns out to be

A truncated download. AAF exports pass through Aspera, Dropbox, Drive and email, and a transfer that stops early leaves a file with the right name and the wrong size. The message "This AAF has no content storage, the file may be truncated" is the same problem caught one step later: the header was there but the directory pointed past the end of the file. Re-download and compare sizes with the sender.

The wrong export format. Media Composer’s export dialog offers AAF, OMF and several XML flavours. An OMF file starts with different bytes and is refused. An XML file starts with <?xml and is refused. Ask for "AAF" with "Link to (don’t export) media" for the smallest file that still contains the whole sequence.

A zip or a folder. An AAF export with embedded media can be a single large .aaf, or a small .aaf next to a folder of MXF files. Sending the folder as a zip and renaming it does not make it an AAF. Unzip it and take the .aaf out.

A file that is not from Avid at all. Pro Tools, Resolve and Premiere also write AAFs, and they are fine. But a Premiere .prproj, a Resolve .drp or an FCPXML given an .aaf extension to get past a file filter is not.

Once the real file is in

An intact AAF converts to Final Cut Pro 7 XML with sequences, tracks, clips, in and out points and source names, or to a DaVinci Resolve .drp. Effects and audio mixing do not cross; cuts and timing do. The AAF is parsed entirely in your browser and never uploaded.

FAQ

How can I tell if an .aaf file is truncated?
Compare its size with the sender’s copy. A truncated file usually fails with "no content storage" or "not a compound file". Any size mismatch means re-download.
Does an AAF need the media alongside it?
Not for conversion. The converter reads the composition, not the media. Relinking happens in the application that imports the XML.
What AAF sources are supported?
AAFs from Media Composer, Pro Tools, DaVinci Resolve and Premiere Pro all use the same container and are read the same way.

↑ Back to top