Skip to content

v2.59.0

Choose a tag to compare

@samuelgursky samuelgursky released this 06 Jul 21:38

v2.59.0

First-class conform ingest for AAF and DRP, an offline Premiere .prproj reader with a
conform bridge, and a unified sequence enumerator — an editorial turnover in any of these formats can
be previewed, picked, and brought into Resolve. Honest-refuse throughout: no format is faked; an
unreadable file yields a clear, actionable error.

Added

  • AAF — offline preview via editorial.parse_interchange (format aaf) and list_sequences,
    backed by the pure-Python aaf2 (pyaaf2) reader (honest-refuses with an install/convert hint when
    unavailable). Live import via timeline.import_timeline_checked skips the XML sanitize pass for the
    binary format and, with relink_search_roots, runs a post-import media-pool relink
    (RelinkClips) reported in a relink block.
  • DRPdrt.list_sequences enumerates the timelines inside a .drp/.drt
    ([{id, name, eventCount}]); timeline.import_from_drp extracts chosen timelines (offline zip
    surgery → temp .drt) and imports each into a running Resolve.
  • Premiere .prproj — a from-scratch offline reader (gunzip + object-reference-graph walk, no new
    dependencies) through parse_interchange / list_sequences: cuts, source in/out, timeline
    positions, speed/retime, reverse, transitions, markers, media paths. Effects/Lumetri color are not
    translated (the Premiere→Resolve semantic gap, flagged not faked).
  • Conform bridgeeditorial.convert_to_interchange authors OTIO / EDL / DRT that Resolve
    imports, from events or a parsed source — so a .prproj conforms into Resolve with no Premiere.
  • Unified enumerationeditorial.list_sequences(path) across xml/edl/otio/drt/drp/aaf/prproj.

Dependencies

  • New requirements.txt pins pyaaf2 (pure-Python, MIT, ~1 MB) for the offline AAF reader; the
    installer points the advanced server's AAF_PROBE_PYTHON at the project venv so it works out of the
    box. Without it AAF preview honest-refuses; nothing else needs it.

Validation

  • Static checks, drift guards, and focused unit tests pass (advanced Node suite 455 pass / 9 skip;
    new test_import_from_drp.py, prproj-bridge.test.mjs, aaf-sequences.test.mjs). Offline AAF
    parse validated end-to-end against a real aaf2-authored AAF.
  • Not yet live-validated in Resolve: AAF import, the post-import relink, import_from_drp, and
    importing an authored OTIO/DRT from a real .prproj. These are offline-tested (fake Resolve) and
    guarded — confirm against a live session with disposable projects before relying on them.