Accurate XML repos from RESOLVE into Flame, Fixed by Python

ResolveXML_v1-0.py (3.8 KB)

This will ONLY work if your Input Scaling setting in Resolve is set to ‘Center crop with no resizing
You can find this under Project Settings → Image Scaling.
Unfortunately, changing that setting in the middle of a project may cause repo’d clips to move.

You’ll need both an XML and an FCPXML with the same name.
Run in Terminal, not Flame.

python ResolveXML.py file.xml

It will ask you for the resolution of your destination sequence. This should be the resolution of the sequence in Flame.
It will dump some info to the Terminal, then put a file called file_out.xml in the same directory as the script. Bring that XML into Flame as you would normally.

This script is very untested because I don’t work with Resolve often. Please flatten your sequence, delete audio, remove unnecessary tracks, simplify what you can, and inform me of any bugs. If you get an error, terminal should tell you which clip gave the error; try deleting that clip.

Unfortunately, the default Input Scaling in Resolve is not ‘Center crop.’ I could probably create an option to handle the default setting of ‘Scale entire image to fit’ if there’s enough demand.

1 Like

No One: Why does it need both kinds of XML?

Me: Good question! When Resolve exports an FCP 7 XML, instead of listing the actual resolution of each clip, it instead lists the resolution of the sequence. Doesn’t matter if the clip is 640x360 or 3840x2160, if your sequence is HD the XML will say every clip is 1920x1080. That seems like a HUGE bug that someone would have noticed, but…guess not!
The good news is that Resolve correctly lists the resolution in FCP X XMLs.

No One: So why not just use an FCP X XML?

Me: When Flame imports an FCP X XML, it uses 2D Transform instead of Action to do the repo. Because Resize doesn’t concatenate with 2D Transform, if your raw clip is larger than the timeline, you’ll lose resolution. I don’t understand why Autodesk would make that decision, and my only workaround is to combine the two XML formats.

Not in front of the box but I’m not sure that’s correct. Action always comes on where there’s a repo

It’s not a bug. It’s how FCP “classic” used to work. And Resolve uses same logic since version 8. It conforms all sources to sequence (or project prior to version 16) resolution and assumes this scale as 100%. As a bonus you will not lose any repositions or masks position if your source change it’s resolution middle project (like when change debater resolution setting from 1/4 to full). New FCP and Premiere use little bit different logic (not conform to sequence rosolution until asked).

If you get a chance to test it and Flame does indeed use Action, please send me the .fcpxml!

I just exported an XML from FCP 7 and it showed the correct resolution.

Yes, that’s how Resolve handles it, but it creates a problem for every other software that doesn’t handle it the same way.