Nodes/MKRShift_Nodes/After Effects Render Plan
ComfyUI Node

After Effects Render Plan

Decide how your frames feed AE — footage, replacement, or precomp

By criskb·Created 7 months ago·Updated 5 months ago· 0
After Effects Render Plan
    • ae_render_plan_json
    • manifest_line
    • summary_json
    asset_path
    import_modefootage
    target_comp_nameComp 1
    transport_plan_json

    The After Effects bridge in MKRShift Nodes gives you two ways to hand results back: a lightweight image-output lane and a render lane. After Effects Render Plan is the plan half of the render lane - the node that decides how your generated asset feeds into an AE comp before a single frame is written. It builds the ae_render_plan_json that MKRAfterEffectsRenderOutput consumes, and the interesting decisions live in the import mode.

    This is the "render roundtrip" path, and it's aimed at people doing actual comp work: you generate footage in ComfyUI - background plates, matte paintings, style frames - and you need it to land in the right comp, in the right role, without re-importing by hand.

    How it works

    Three required inputs define the plan. asset_path is where your generated image (or frame sequence) will live on disk. target_comp_name defaults to "Comp 1" and names the comp the asset feeds. The meaningful choice is import_mode, with three options:

    • footage - bring the asset in as new footage; the safe default, drops it into the project for you to place.
    • replace_layer - swap the source of an existing layer. This is the iteration mode: re-run your workflow, and the same layer updates instead of a new piece of footage piling up. It's how you iterate a plate 20 times without trashing the timeline.
    • precomp_source - feed the asset as the source of a pre-composition, for when the result needs to live inside a nested comp.

    The optional transport_plan_json attaches a network transport plan (endpoint, webhook, watch folder) if you want the handoff to travel over one of the pack's transport lanes rather than a plain local file path - attach_transport_plan degrades gracefully when you leave it empty.

    Outputs

    • ae_render_plan_json - the full plan, wired into MKRAfterEffectsRenderOutput
    • manifest_line - a comma-joined line (comp, import mode, asset path) for manifests
    • summary_json - target comp, whether a path is set, transport status, warnings

    Installation

    cd ComfyUI/custom_nodes
    git clone https://github.com/criskb/MKRShift_Nodes
    

    Restart ComfyUI, or search "MKRShift Nodes" in ComfyUI Manager. No pip dependencies - it's JSON construction.

    Common issues

    The plan-vs-runtime split is where newcomers stumble: this node only emits JSON. Without MKRAfterEffectsRenderOutput wired to it, nothing is written to disk and nothing reaches AE. Second, replace_layer and precomp_source are contracts with the AE addon, not guarantees - they only work if the target comp actually contains a layer (or precomp) the addon can bind to. If the names don't match the timeline exactly, the addon no-ops and you get silence, not an error; check target_comp_name against the real comp, and keep in mind the addon scaffold's naming conventions. Third, an empty asset_path yields a plan with a warning and a fallback filename in the working directory - set it explicitly. And one more thing worth knowing: footage is the honest default for a first run. Get the loop working as footage, then switch to replace_layer for iteration speed once the addon side is proven. Build the plan, wire the runtime, and AE becomes a destination you can aim at.

    CategoryMKRShift Nodes/Addons/After Effects

    Inputs (4)

    NameTypeDefaultDescription
    asset_pathSTRING
    import_modeCOMBOfootage3 options: footage, replace_layer, precomp_source
    target_comp_nameSTRINGComp 1
    transport_plan_jsonoptSTRING

    Outputs (3)

    NameTypeDescription
    ae_render_plan_jsonSTRING
    manifest_lineSTRING
    summary_jsonSTRING