You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(conform): the conform emulator — interchange in, rendering .drt out
drt.assemble_from_interchange: EDL/OTIO/XML/AAF + a sourceMap → parse →
frame-convert → multi-source assemble with native-descriptor transplant
→ stamped importable .drt, one call. eventsToAssembleSpec anchors the
earliest video event at the timeline origin, converts nominal-base
event frames to the 24fps template timeline (butt cuts stay gapless
through the conversion, verified at 29.97), groups cuts per source,
refuses overlaps and unmapped reels loudly, and ships an honesty
ledger: flattened retimes, transitions-as-cuts, skipped audio events.
Full-route live proof on Studio 19.1.3.7: a three-event EDL cutting
between two sources (with an M2 retime) assembled, imported 6/6 linked
with exact source in-points, rendered each event's OWN pixels (YAVG
125.6 / 234 / 125.5), full-range render at duration ratio 1.0, retime
in the ledger.
Scoped honestly: elements on pre-21 hosts are not render-verified — the
R21 snippets render black on 19 and the r19 harvest is incomplete (the
generator's Sm2TiCompositionTable dependency, the title's
per-generation comp-blob layout); with the partial harvest render jobs
fail outright, which is worse. Snippet selection stays R21,
drt.assemble warns on pre-21 element use, and the harvested r19
snippets ship for the element-transplant expedition.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+38Lines changed: 38 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,44 @@
2
2
3
3
Release history for the DaVinci Resolve MCP Server. The latest release is summarized in the root README; older entries live here to keep the README focused.
4
4
5
+
## What's New in v2.108.0
6
+
7
+
**The conform emulator, coast to coast.** An interchange file goes in; an
8
+
importable, RENDERING native .drt comes out — one call.
9
+
10
+
### Added
11
+
12
+
-**`drt.assemble_from_interchange`**: EDL/OTIO/XML/AAF + a sourceMap
一个 Model Context Protocol (MCP) 服务器,让 AI 助手通过官方脚本 API 控制 DaVinci Resolve Studio(达芬奇)。它提供完整的 API 覆盖,外加带护栏的工作流助手,涵盖剪辑、媒体池整理、渲染设置、审阅标记、调色、Fusion、Fairlight、项目生命周期任务、扩展开发,以及不碰源媒体的媒体分析。
.describe("Host Resolve version, e.g. '19.1' for pre-21"),
44
+
});
32
45
constassembleSchema=z.object({
33
46
spec: z
34
47
.object({})
@@ -135,7 +148,7 @@ function requirePathArg(args, key, action) {
135
148
exportconstdrtTool={
136
149
name: 'drt',
137
150
description:
138
-
'DaVinci Resolve Timeline (.drt) operations — offline, no Resolve required. Actions: assemble (spec → IMPORTABLE native-schema .drt via template-spliced real structures; pass targetAppVersion e.g. \'19.1\' for pre-21 hosts), parse, list_sequences (enumerate the timelines inside a .drp/.drt → [{id,name,eventCount,index}] to drive a "which sequence?" picker), author, validate, inject_into_drp, extract_from_drp (pull one SeqContainer out as a .drt — feed the .drt to the Python davinci-resolve MCP timeline.import_timeline_checked, or use timeline.import_from_drp to do both), downgrade (stamp <ProjectVersion> down so an OLDER Resolve will import a .drt/.drp from a newer one — pass targetAppVersion like "19.1.3" or targetProjectVersion).',
151
+
'DaVinci Resolve Timeline (.drt) operations — offline, no Resolve required. Actions: assemble_from_interchange (EDL/OTIO/XML/AAF + sourceMap → IMPORTABLE RENDERING native .drt in one call; retimes flatten, transitions become cuts, ledger in `conform`), assemble (spec → IMPORTABLE native-schema .drt via template-spliced real structures; pass targetAppVersion e.g. \'19.1\' for pre-21 hosts), parse, list_sequences (enumerate the timelines inside a .drp/.drt → [{id,name,eventCount,index}] to drive a "which sequence?" picker), author, validate, inject_into_drp, extract_from_drp (pull one SeqContainer out as a .drt — feed the .drt to the Python davinci-resolve MCP timeline.import_timeline_checked, or use timeline.import_from_drp to do both), downgrade (stamp <ProjectVersion> down so an OLDER Resolve will import a .drt/.drp from a newer one — pass targetAppVersion like "19.1.3" or targetProjectVersion).',
0 commit comments