Skip to content

Storyboard Assembly Pipeline

Production pipeline for assembling AI-generated video clips into storyboard sequences and exporting them as Premiere Pro projects for editorial review and final cut.


End-to-End Flow

flowchart LR
    subgraph Source["1. Source Clips"]
        S3[S3 Asset Library] --> LIST[grit_list_clips]
        LIST --> CLIPS[Available Clips]
    end

    subgraph Produce["2. Produce"]
        CLIPS --> SELECT[Select & Order Clips]
        SELECT --> PROD[grit_produce_clip]
        PROD --> READY[Production-Ready Clips]
    end

    subgraph Assemble["3. Assemble"]
        READY --> PREM[grit_assemble_premiere]
        PREM --> PROJ[Premiere Pro Project]
        PROJ --> REVIEW[Editorial Review]
        REVIEW -->|Approved| FINAL[Final Cut]
        REVIEW -->|Revisions| SELECT
    end

Unlike the Audio SFX Pipeline or 3D Models Pipeline which focus on generating individual assets, the Storyboard Assembly pipeline is a composition pipeline — it takes existing assets (video clips from the Video I2V Pipeline or other sources) and arranges them into editable sequences for storytelling.


MCP Tool Reference

Three MCP tools form the storyboard assembly pipeline:

Tool Depends On Description
grit_list_clips boto3 (S3) List available clips in the S3 asset library for assembly. Returns clip metadata including duration, resolution, and S3 path.
grit_produce_clip boto3 (S3) Produce a clip from source assets — downloads from S3, applies any ordering or trim metadata, and prepares for timeline assembly.
grit_assemble_premiere Premiere Pro (CEP) Assemble produced clips into a Premiere Pro project/timeline. Generates the project file with clips placed in sequence order.

See Grit Tooling — Storyboard Parsing and Premiere Pro Assembly for full parameter details.

Prerequisites

Dependency Install Notes
Adobe Premiere Pro Creative Cloud Required for opening and editing the assembled project
Premiere CEP extension See Grit Tooling Bridges MCP tool calls to Premiere Pro's ExtendScript API
boto3 / S3 credentials Environment variable Required by grit_list_clips and grit_produce_clip for asset access

Clip Assembly Workflow

Step 1: List Available Clips

Browse the S3 asset library to find clips available for the storyboard. Clips may come from the Video I2V Pipeline or be manually uploaded.

grit_list_clips()
# → Returns list of available clips with metadata:
#   [{ "name": "forest_clearing", "duration": 4.2,
#      "s3_path": "grit/video/lore_cinematic/forest_clearing/VID_LORE_CINEMATIC_FOREST_CLEARING.mp4" },
#    { "name": "tavern_interior", "duration": 3.8,
#      "s3_path": "grit/video/lore_cinematic/tavern_interior/VID_LORE_CINEMATIC_TAVERN_INTERIOR.mp4" },
#    ...]

Clip discovery

Use grit_list_clips before starting assembly to confirm all required clips have been generated and ingested. Missing clips should be generated via the Video I2V Pipeline first.

Step 2: Produce Clips

Prepare each clip for timeline assembly. This step downloads the source clip from S3 and stages it locally with any necessary metadata for sequencing.

grit_produce_clip(clip_name="forest_clearing")
# → Downloads clip to local staging, returns production-ready path
#   /tmp/storyboard/forest_clearing.mp4

grit_produce_clip(clip_name="tavern_interior")
# → /tmp/storyboard/tavern_interior.mp4

Produce all clips needed for the sequence before moving to assembly.

Step 3: Assemble into Premiere Pro Project

Once all clips are produced, assemble them into a Premiere Pro project with clips arranged on the timeline in the specified order.

grit_assemble_premiere(
    clips=["forest_clearing", "tavern_interior", "castle_approach"],
    project_name="lore_cinematic_ep01"
)
# → Creates Premiere Pro project: /tmp/storyboard/lore_cinematic_ep01.prproj

The assembled project includes:

  • Clips placed in sequence on the timeline in the order provided
  • Clip metadata (names, source paths) preserved for traceability
  • Markers at clip boundaries for easy navigation during editorial review

Premiere Pro Integration

CEP Extension

The grit_assemble_premiere tool communicates with Premiere Pro through a CEP (Common Extensibility Platform) extension. This extension bridges MCP tool calls to Premiere Pro's ExtendScript API, enabling programmatic timeline construction.

Project Structure

Assembled projects follow a consistent structure:

Element Description
Sequence A single sequence containing all clips in order
Video Track (V1) Primary video track with clips arranged sequentially
Markers Clip boundary markers for editorial navigation
Bin structure Source clips organized in a "Storyboard Assets" bin

Editorial Workflow in Premiere Pro

Once the project is opened in Premiere Pro, the editor can:

  1. Review — Scrub through the assembled timeline to evaluate clip order and pacing
  2. Trim — Adjust in/out points on individual clips to tighten timing
  3. Reorder — Drag clips to rearrange the sequence
  4. Add transitions — Apply cross-dissolves, dip-to-black, or custom transitions between clips
  5. Layer audio — Import audio from the Audio SFX Pipeline or narration tracks
  6. Export — Render the final cut via Adobe Media Encoder

Non-destructive editing

The assembled project references the original clip files. All edits in Premiere Pro are non-destructive — source clips in S3 are never modified.


Review Process

Storyboard assembly follows a three-stage review cycle:

1. Automated Assembly Review

After grit_assemble_premiere completes, verify the project:

  • Confirm all clips are present on the timeline
  • Check total sequence duration matches expectations
  • Verify clip order matches the intended narrative flow

2. Editorial Review

Open the project in Premiere Pro for creative review:

  • Pacing — Does the rhythm of cuts feel right?
  • Continuity — Do clips flow logically from one to the next?
  • Gaps — Are there missing scenes that need additional clip generation?
  • Audio — Are placeholder audio tracks needed?

3. Team Sign-Off

Post the assembled sequence for team review using the shared Slack Review workflow:

Tool Description
grit_post_for_review Post a rendered preview of the storyboard to Slack for team feedback
grit_check_reviews Check the review status (approved / needs revisions)

If revisions are requested, return to Step 1 or Step 2 depending on whether new clips are needed or just resequencing.


Known Limitations

Limitation Impact Workaround
Short source clips Wan2.2 generates 3–5 second clips; storyboards built from many short clips can feel choppy. Use transitions in Premiere Pro to smooth cuts. Consider generating overlapping clips for crossfade material.
No audio in source clips Video I2V clips are silent (video-only MP4). Layer audio in Premiere Pro using the Audio SFX Pipeline assets or narration tracks.
Sequential assembly only grit_assemble_premiere places clips on a single video track in sequence order. Use Premiere Pro to add multi-track compositing, picture-in-picture, or overlay graphics after assembly.
CEP extension required The Premiere Pro integration requires the grit CEP extension to be installed and running. Ensure the extension is installed before calling grit_assemble_premiere. See Grit Tooling for setup.
No version control for projects Premiere Pro .prproj files are binary and not easily diffed. Use descriptive project names with version suffixes (e.g., ep01_v2). Keep source clip references in S3 for reproducibility.

Typical Operator Workflow

A step-by-step example for assembling a "lore cinematic episode 1" storyboard:

# 1. List available clips
grit_list_clips()
# → Shows 5 clips: forest_clearing, tavern_interior, castle_approach,
#   throne_room, final_confrontation

# 2. Produce each clip for assembly
grit_produce_clip(clip_name="forest_clearing")
grit_produce_clip(clip_name="tavern_interior")
grit_produce_clip(clip_name="castle_approach")
grit_produce_clip(clip_name="throne_room")
grit_produce_clip(clip_name="final_confrontation")

# 3. Assemble into Premiere Pro project
grit_assemble_premiere(
    clips=["forest_clearing", "tavern_interior", "castle_approach",
           "throne_room", "final_confrontation"],
    project_name="lore_cinematic_ep01"
)
# → /tmp/storyboard/lore_cinematic_ep01.prproj

# 4. Open in Premiere Pro for editorial review
# → Adjust pacing, add transitions, layer audio

# 5. Post for team review
grit_post_for_review(asset_path="/tmp/storyboard/lore_cinematic_ep01_preview.mp4")
# → Posted to #asset-review Slack channel

# 6. Check review status
grit_check_reviews(asset_id="<review_id>")
# → { "status": "approved", "votes": { "up": 3, "down": 0 } }

See Also