XML2AE

XML2AE is an Adobe After Effects CEP extension for rebuilding an edit from FCP7 xmeml XML or AAF.It loads an editing XML/AAF, scans selected footage folders, matches timeline media against real scanned files, lets the user resolve ambiguous or missing media, and builds an After Effects composition that preserves editorial timing as closely as possible. It also tracks generated timelines so a later scan/match can update a duplicated comp without destroying the previous build. What it does XML2AE is intended for conform and VFX prep workflows where an edit arrives as FCP7 XML and the user needs a working After Effects comp.Current behavior includes: Parse FCP7 xmeml sequence data and AAF mutli-timeline. Scan user-selected footage folders recursively. Match media from the scanned catalog by filename/stem, reel, timecode, duration, and strict fallback rules; embedded XML/AAF source paths are not used as match criteria. Detect missing media and ambiguous matches. Show a conflict picker with candidate thumbnails and metadata. Import selected media into After Effects. Build a video-only AE comp with layer timing, trims, disabled-state handling, slates, diagnostics, and optional reference video. Apply supported transform/effect data: Basic Motion scale, position/center, anchor/centerOffset, rotation. Opacity. Crop where supported. Blend/composite modes where mapped. Keyframes, including source-in-aware timing for trimmed clips. Create slates and diagnostic text for missing/unresolved media and unsupported constructs. Track generated timelines in the Built Timelines panel. Save/load Built Timelines history via sidecar next to the saved AE project. Update an older build from the latest scan/match by duplicating the prior comp and modifying only the duplicate. How it worksXML2AE is split between a CEP panel and an After Effects ExtendScript host bridge.The Panel side owns pure and filesystem-heavy work: XML parsing. Folder scanning and metadata indexing. Image sequence grouping. Matching and conflict detection. Thumbnail extraction via ffmpeg. Report generation. Build queue orchestration. Built Timelines session history and sidecar persistence. The ExtendScript host side owns AE mutation only: Validate/import selected footage. Create comps, layers, solids, and text. Apply timing, transforms, opacity, crop, blend modes, retime data, markers, and diagnostics. Place the optional reference video. Clean up XML2AE-managed generated comps when requested. InstallationZXP packages are available from the release page. To install: Download the latest XML2AE-<version>.zxp. Install with an Adobe extension manager or via the ZXP Installer: ZXP Installer (Windows/macOS) Anastasiy's Extension Manager Manual: rename to .zip, extract, and copy the contents to the CEP extensions folder. Restart After Effects. Open Window -> Extensions -> XML2AE. The packaged ZXP includes FFmpeg, ffprobe, and MediaInfo CLI binaries for Windows and macOS. On first AAF use, XML2AE auto-runs tools/aaf/bootstrap-embedded-python.ps1 (Windows) or tools/aaf/bootstrap-macos-python.sh (macOS, builds a user-local venv at ~/Library/Application Support/XML2AE/python) if Python/pyaaf2 is missing.Bundled media toolsXML2AE bundles redistributable LGPL/BSD-2-Clause FFmpeg, ffprobe, and MediaInfo CLI binaries from documented public builds.Tool resolution orderThe app checks for each tool in this order: Settings override — path configured in the XML2AE Settings panel. Bundled binary — vendor/bin/win-x64/<tool>.exe on Windows or vendor/bin/darwin-universal/<tool> on macOS inside the extension folder. System PATH — whatever <tool> is on the user's PATH. If you prefer your own FFmpeg build (e.g. a GPL build with extra codecs), set the path in Settings.What the tools do ffmpeg — conflict candidate thumbnails. ffprobe — media probing (duration, frame rate, codec info, pixel format). MediaInfo — supplementary metadata probing. AAF on Windows — the app auto-runs tools/aaf/bootstrap-embedded-python.ps1 on first AAF use if the embedded Python/pyaaf2 bundle is missing. The same script can be run manually. AAF on macOS — the app auto-runs tools/aaf/bootstrap-macos-python.sh, which builds a user-local venv at ~/Library/Application Support/XML2AE/python if Python/pyaaf2 is missing.