Premiere Image Output Plan
Describe a Premiere graphic before anything touches disk
- image_output_plan_json
- manifest_line
- summary_json
This node does nothing but think, and that's the point. MKRPremiereImageOutputPlan builds a JSON plan describing how an image should land in a Premiere Pro sequence - without writing a single file. It's the planning half of the packet-first Premiere bridge in MKRShift_Nodes; the file-writing half is MKRPremiereImageOutput, which consumes the plan this node produces.
Why split it this way? Because "what should happen" and "make it happen" are different jobs with different failure modes. With the plan as data, you can inspect it, route it, log it, or regenerate it with a different apply_mode without re-running any image generation. It's the same describe-then-execute instinct behind every *Plan node in this pack, and it keeps the expensive part of your graph (the image generation) from being coupled to a file path.
How it works
The build method takes a handful of strings and assembles them into a JSON document under the schema mkrshift_premiere_image_output_plan_v1. It also supports an optional transport_plan_json - another MKRShift plan describing how the file should travel (watch folder, copy, network) - which gets attached to the output. Everything stays a string; no I/O happens here.
Inputs that matter
Most of these are set-and-forget, but a few earn your attention:
asset_path- where the written image should live. This is the fieldMKRPremiereImageOutputwill actually write to, so point it somewhere the Premiere addon can see.apply_mode- the three choices are the whole personality of the node:new_graphic(drop it in as a new graphic),replace_clip(swap it onto an existing clip), orbin_import(just import it into the project bin, no timeline action). Default isnew_graphic.image_role- what kind of asset it is, defaultgraphic.target_name- the name Premiere will see on the imported item (defaultMKRShift Graphic).target_sequence_name(optional) - which sequence the addon should act on; blank falls back to the addon's own default.
Outputs: image_output_plan_json (wire this into MKRPremiereImageOutput), manifest_line (a flat sequence,apply_mode,path line handy for logging), and summary_json (human-readable plan state).
Installing it
Same story as every node in the pack. ComfyUI Manager → search MKRShift_Nodes → Install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/criskb/MKRShift_Nodes
Restart ComfyUI. No extra Python dependencies - the pack runs on what ComfyUI already has.
Common issues
People expect this node to do something visible, and it never will - if you run it alone you get JSON and a shrug, which is correct. The thing to keep straight is the flow: MKRPremiereImageOutputPlan produces the plan, MKRPremiereImageOutput executes it, and the Premiere Pro addon in the pack's addons/premiere_pro/ folder is what finally places the graphic. Miss any link in that chain and the plan is just a well-formed string. Also note apply_mode only takes effect on the Premiere side - replace_clip won't replace anything unless target_sequence_name resolves to a real sequence.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| asset_path | STRING | — | |
| image_role | STRING | graphic | — |
| target_name | STRING | MKRShift Graphic | — |
| apply_mode | COMBO | new_graphic | 3 options: new_graphic, replace_clip, bin_import |
| target_sequence_nameopt | STRING | — | |
| transport_plan_jsonopt | STRING | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image_output_plan_json | STRING | — |
| manifest_line | STRING | — |
| summary_json | STRING | — |