Skip to main content

Render Pipeline

Four tools for routing scenes to the optimal render target, assembling mixed-source video, selecting delivery profiles, and generating storyboard contact sheets.


resolve_render_targets

Route scenes to the optimal render target: web_native (real DOM), browser_capture (Puppeteer → plate), remotion_native (direct Remotion), or hybrid. Pure routing — deterministic, no side effects.

  • Name
    scenes
    Type
    object[]
    Description

    Required. Annotated scene definitions.

  • Name
    manifest
    Type
    object
    Description

    Optional sequence manifest. manifest.render_target_default sets a global fallback; manifest.scenes[i].render_target is a per-scene override.

  • Name
    personality
    Type
    string
    Description

    Personality slug. Used to detect forbidden CSS features (3d_transforms, blur) per scene. Falls back to scene.personality.

  • Name
    strict
    Type
    boolean
    Description

    When true, throw on any compatibility warning instead of returning it. Default false.

Returns: Per-scene render target assignments with reason and capture config. Scenes with complex HTML go to browser capture, pure motion scenes go to Remotion native, and mixed content uses hybrid.

Try asking your AI:

"Resolve render targets for my 8-scene product sizzle"

"Which scenes need browser capture vs native Remotion?"


assemble_video_sequence

Assemble a video from mixed render sources: browser-captured plate assets + native Remotion scenes. Resolves render targets, verifies plates, builds Remotion render-props, and returns a CLI render command. Handles graceful fallback when plates are missing.

  • Name
    manifest
    Type
    object
    Description

    Required. Sequence manifest.

  • Name
    scene_defs
    Type
    object
    Description

    Scene definitions keyed by scene_id.

  • Name
    scenes
    Type
    object[]
    Description

    Scene array (alternative to scene_defs).

  • Name
    plates
    Type
    object
    Description

    Plate assets keyed by scene_id — each entry is { src, format }.

  • Name
    timelines
    Type
    object
    Description

    Compiled timelines keyed by scene_id.

  • Name
    output_dir
    Type
    string
    Description

    Directory to write render-props.json.

  • Name
    output_path
    Type
    string
    Description

    Final video output path.

Returns: Render-props payload, a CLI render command, plate verification results, and any assembly warnings.

Try asking your AI:

"Assemble the final video from my resolved render targets"


get_delivery_profile

Get encoding settings for a target delivery channel. Eight presets are available:

ProfileResolutionFPSNotes
web-hero1920x108060CRF 14, high quality
web-embed1280x72030CRF 18, balanced for iframes
social-feed1080x108030Square format, burn-in captions default
social-landscape1920x108030YouTube / LinkedIn landscape
story-reel1080x192030Vertical format, burn-in captions default
email-gif600x33815Animated GIF, no audio
presentation1920x108030CRF 12, Keynote / Slides embed
master1920x108060ProRes 4444 lossless
  • Name
    slug
    Type
    string
    Description

    Profile slug — web-hero, social-feed, story-reel, email-gif, presentation, master, etc.

  • Name
    channel
    Type
    string
    Description

    Channel name — youtube, instagram-feed, email, tiktok, etc. Auto-matches to the best profile when slug is omitted.

Returns: Encoding settings including resolution, FPS, codec, CRF/quality, and format.

Try asking your AI:

"What encoding settings should I use for social-feed delivery?"


generate_contact_sheet / compare_project_versions

Storyboard and version comparison tools.

generate_contact_sheet generates a structured overview of each scene — thumbnail description, duration, transition, camera, and energy — from a manifest + scenes (or from a project slug). Useful for reviewing a sequence at a glance before rendering.

compare_project_versions returns a structured diff between two manifest versions: scenes added/removed/reordered, duration changes, transition changes, camera changes, and overall timing delta.

generate_contact_sheet

  • Name
    project
    Type
    string
    Description

    Project slug to load manifest/scenes from (alternative to passing inline data).

  • Name
    manifest
    Type
    object
    Description

    Inline sequence manifest (if not loading from a project).

  • Name
    scenes
    Type
    object[]
    Description

    Inline scene definitions (if not loading from a project).

  • Name
    includeTimecodes
    Type
    boolean
    Description

    Include start/end timecodes per scene. Default: true.

  • Name
    includeTechnical
    Type
    boolean
    Description

    Include camera move and energy level per scene. Default: true.

  • Name
    format
    Type
    string
    Description

    Output format: json (default) or markdown.

compare_project_versions

  • Name
    project
    Type
    string
    Description

    Project slug (reserved for future version history support).

  • Name
    version_a
    Type
    string
    Description

    Version A identifier (reserved for future version history support).

  • Name
    version_b
    Type
    string
    Description

    Version B identifier (reserved for future version history support).

  • Name
    manifest_a
    Type
    object
    Description

    First manifest to compare (inline).

  • Name
    manifest_b
    Type
    object
    Description

    Second manifest to compare (inline).

  • Name
    format
    Type
    string
    Description

    Output format. Default: json.

Try asking your AI:

"Generate a contact sheet for my sequence manifest as markdown"

"Compare these two manifest versions and show me the diff"

Was this page helpful?