← All articles

XML import errors in Premiere and how to avoid them

An XML is how you move a timeline from one program to another. When Premiere rejects one, the message rarely says why. These are the real causes, we've been through them ourselves, and how to avoid them.

Which XML Premiere reads

Premiere imports the "classic" Final Cut Pro 7 XML, the xmeml format, from File > Import. What it does not open directly is Final Cut Pro X's .fcpxml: Adobe says it has to be converted first with the XtoCC tool (Adobe help).

So, first step: make sure the file is a Final Cut Pro 7 XML (it starts with <xmeml), not an .fcpxml.

1. A sequence longer than 24 hours

The format counts time in timecode, and Apple's official specification says the counter rolls over after 23:59:59 (Apple's specification). A longer sequence doesn't fit.

It's not a rare case: it happened to us when building a whole hard drive, several years of footage, into one 59.6-hour timeline, and Premiere said the file was damaged. The fix is to split the timeline into sequences under 24 hours. Since version 2.1.4, the Ingest Pro desktop app does it for you: it cuts before reaching 23 hours and saves one XML per part. We tried putting several 23-hour sequences into one XML and Premiere ran out of memory; one at a time, they all open.

2. References that point nowhere

Inside the XML, each clip has an identifier (id), and the video and audio clips of the same take link to each other by naming those identifiers. Apple's specification explains it: an element with an id is registered on import and others reference it; the first time it appears it must be complete, and after that the id is enough (Apple's specification).

If a link points to a clip that doesn't exist, or a clip has an empty identifier, the file stops adding up. It happened to us with cameras that mixed stereo and mono clips on the same track: the XML came out with links to audio halves that were never written. It's fixed since version 2.1.4 of the Ingest Pro desktop app, but it's a classic mistake for any program that writes XML.

3. Badly written paths

Each file carries its path in the pathurl element, as file://localhost/.... According to Apple, any character that isn't valid in a URL must be encoded with % and its hex value: a space, for example, is %20 (Apple's specification). If a program writes the path as is, with spaces, accents or symbols, Premiere can't find the file.

There's one exception that took us a while to find: the “&”. In our tests with Premiere 26.5, a single file with “&” in its name, written as %26 in its path, was enough for Premiere to call the whole XML damaged. Written as is (in the XML, &amp;), it opens fine. Emojis, Cyrillic, # or brackets encoded with % caused no trouble. We found it by splitting the XML into pieces and importing them one by one; if an XML fails and you don't know why, it's the quickest way to find the culprit file.

4. Offline media

If the XML imports but the clips show as offline, the XML is fine: the path is what's failing. It happens when files have moved, the drive has a different letter or it's disconnected. Connect the drive with the same letter or relink the files from Premiere.

Quick checklist before importing

If you build the timeline with the Ingest Pro desktop app, the XML already comes out tailored for Premiere or for DaVinci, whichever you pick.

Try it on your next shoot

The plugins and the desktop app come with a 14-day trial, no card.