Build a Transcript-Mapped B-Roll Pack with Codex CLI and MaxVideoAI
Turn approved narration into purposeful B-roll requests, generate reference-guided inserts with Kling 3.0 Omni Pro after quote approval, and hand editors consistently named clips tied to exact passages.

Give the insert one clear job
The narration is approved, but the available B-roll merely decorates it. Before requesting another clip, define what the viewer should understand and where the action belongs. The result should be more than footage: it should be an identifiable clip connected to an exact passage, a narrative purpose and a placement note.
Imagine the illustrative line L012: “Protect fragile equipment by packing it in a padded case.” A useful insert shows hands lowering a camera into fitted padding. Its job is to make protection tangible, and its placement note is precise: show the lowering action during “packing it in a padded case.” L012 is only an example; use the stable identifiers from your own approved transcript.
For this worked example, the later generation route is Kling 3.0 Omni Pro reference-to-video, which uses a prompt and reference images to guide the shot. Defining the insert’s job first helps you choose references that serve the passage rather than merely decorate it. [1]
Supply the approved wording, stable line identifiers and verified timing when available. If the transcript is in Premiere, its text-based editing tools can help you search for and select spoken passages. That makes the intended moment easier to find again, but it does not automatically place newly generated B-roll. [7]
Set the boundaries before mapping: which passages are in scope, the maximum number of inserts, the delivery format and your spending ceiling. This walkthrough follows one selected insert. The three treatments considered later are alternative compositions for that shot, not three generation requests.
Make protection visible

Turn exact passages into a bounded shot plan
Example prompt
Create a planning-only shot-to-line matrix from the approved transcript and production limits below. INPUTS Approved transcript: [PASTE THE APPROVED TRANSCRIPT WITH STABLE LINE IDENTIFIERS] Verified timing, if available: [PASTE VERIFIED TIME RANGES OR WRITE “NOT SUPPLIED”] Passage scope: [DEFINE THE INCLUDED LINES OR SECTIONS] Maximum insert count: [ENTER LIMIT] Delivery format: [ENTER FORMAT] Spending ceiling: [ENTER CEILING] INSTRUCTIONS 1. Preserve every selected passage exactly as supplied. Do not rewrite, shorten or correct it. 2. Do not infer timestamps. If a verified time range is unavailable, write “Pending—timing not supplied.” 3. Propose no more than the stated maximum number of inserts and include only passages within scope. 4. Create these columns: Shot ID; Exact passage; Line ID or verified time range; Narrative purpose; Visual action; Reference roles; Shot constraints; Creative prompt; Proposed duration; Aspect ratio; Generation approval state; Proposed filename; Editor note. 5. Give each insert one specific narrative purpose and one readable visual action. 6. Leave reference roles, unresolved settings and creative prompts marked “Pending” until a human selects the treatment and supplies authorized references. 7. Set every generation approval state to “Not requested.” Do not request generation, approve spending, run tools or change local files. 8. Treat the proposed filename as a planning label only. Do not claim that an output file exists. 9. Flag unclear passages for human review rather than inventing meaning. 10. Return only the bounded matrix followed by a short list of unresolved inputs.
Illustrative row: Shot BR_01; exact passage “Protect fragile equipment by packing it in a padded case.”; line L012; timing pending; purpose: make protection tangible; action: hands lower a camera into fitted padding; references, constraints and creative prompt pending; approval not requested; proposed filename BR_01_camera-pack_v01; editor note: place the lowering action during “packing it in a padded case.”
Choose the treatment, then constrain the shot
| Proposed treatment | What it communicates | Editorial trade-off | References and proposed constraints |
|---|---|---|---|
| Literal camera-packing action | Hands lower the camera into fitted padding, directly showing how the equipment is protected. | The clearest choice for this instructional passage. Keep BR_01 and its narrative purpose unchanged; this is the selected treatment. | Prepare two authorized images externally: one for the camera’s appearance and one for the open case and fitted padding. Assign only those roles and bind them in that order later. Use them as reference guidance, not as required opening frames. Propose 5 seconds, 16:9 and 1080p, with audio off if that control is currently available. Five seconds leaves editing room around one readable action; sound design remains in the external edit. Confirm current Kling 3.0 Omni Pro details and the live quote before generating: https://maxvideoai.com/models/kling-o3-pro |
| Contextual equipment-preparation scene | A wider view establishes that the camera is being prepared and packed with other equipment. | Useful when the surrounding workflow matters, but the protective contact between camera and padding becomes smaller and less immediate. | Would require authorized references that establish both the equipment and the wider setting. Do not request it as an additional generation unless it replaces the selected treatment. |
| Metaphorical cushioning detail | A macro view of compressed padding emphasizes softness and shock absorption. | Visually expressive, but it may not clearly explain how to pack the camera or even show the complete action. | Could use an authorized material-detail reference, but it is not selected because the passage needs an explicit packing action rather than a visual metaphor. |
Three ways to show protection

Describe one action the viewer can read immediately
Example prompt
Create a reference-to-video insert showing an unbranded camera being packed safely. @Image1 guides only the camera’s appearance. @Image2 guides only the open case and fitted padding. Use these references after the selected images have been bound in this order; do not treat either image as a required opening frame. In a stable three-quarter close-up, two anonymous adult hands lower the camera once into its fitted padded recess. Keep the camera, hands and contact area clearly visible throughout the action. The case remains open. Use soft side lighting, an uncluttered setting and plausible hand and camera geometry. Show only this single downward placement. Do not close the case, fasten latches, lift it again or carry it away. No logos, text or additional equipment actions.
Use this prompt only after authorized references have been selected and bound to @Image1 and @Image2. For the illustrative landscape edit, propose a five-second, 16:9, 1080p insert with audio off if that control is currently available. Confirm every setting in the current model details before requesting a quote. One unobstructed action makes the protective contact readable during the phrase “packing it in a padded case,” but references guide the result rather than guaranteeing an exact match.
Connect the generator and review the request as one package
- 01
Connect MaxVideoAI from a new Codex conversation
Follow the current MaxVideoAI Codex integration guide at https://maxvideoai.com/integrations/codex and complete browser OAuth when prompted. Avoid relying on a hard-coded release tag: the documented compatibility checkpoint is version-specific, so use the guide’s current installation path.
- 02
Select and bind the authorized references
Choose the existing private Library images or use the documented secure upload handoff. Bind the camera-appearance image as @Image1 and the open-case-and-padding image as @Image2, then verify that the prompt assigns only those roles. Reference guidance does not require either image to become the opening frame.
- 03
Confirm the current model route and settings
Inspect the live details for Kling 3.0 Omni Pro reference-to-video. Check that the requested duration, aspect ratio, resolution and any audio choice are currently supported. The proposed example uses five seconds and 1080p; retain 16:9 and audio off only if those controls are available on the selected route.
- 04
Review the exact quote before approving anything
Place the final prompt, bound references, confirmed settings, exact price and account effect together for review. Codex CLI prepares and orchestrates the authorized request; MaxVideoAI generates the footage. File organization and editing remain separate, and no Premiere MCP connection or automatic timeline editing is required.
Request one candidate without opening the spending boundary
Example prompt
Prepare one Kling 3.0 Omni Pro reference-to-video generation request for the human-selected matrix row BR_01 only. Use the approved camera-packing prompt, the bound @Image1 camera-appearance reference, the bound @Image2 case-and-padding reference, and only the settings confirmed in the current model details. Preserve the exact passage and narrative purpose already recorded for BR_01. Do not expand the passage scope, increase the insert count or exceed the stated total spending ceiling: [SPENDING CEILING]. Before any paid generation, show the complete prompt, references, settings, exact quote and account effect. Then pause and ask for explicit approval of that exact quote. Approval of the shot plan or spending ceiling is not approval to charge the account. After explicit approval, submit this candidate once and follow the existing job. Do not generate alternatives or retries automatically. Any changed prompt, reference, setting, alternative or retry requires a fresh quote, review and explicit approval. If completion is uncertain, recover the existing job status or look for the result in recent generations or the MaxVideoAI Library. Do not resubmit an uncertain job. When a completed result is available, record it against BR_01 without changing the shot ID.
Replace the spending-ceiling placeholder with the reader’s chosen limit before use. This request authorizes at most one submission after approval of its exact quote; it does not authorize retries, variants or additional inserts.
Turn the candidate into an editor-ready handoff
- 01
Recover the completed result
Once the approved job finishes, open its documented result or find it in recent generations or the MaxVideoAI Library. If its status is uncertain, follow the existing job rather than submitting it again. Retrieval identifies the candidate; it does not make the clip usable by itself.
- 02
Judge the action against the passage
Watch the actual clip and check that the hands visibly lower the camera into the fitted padding, the contact point remains clear, the hands and camera geometry look plausible, and the shot provides enough usable duration around the action. Also check continuity and framing at likely edit points. If the action is ambiguous or visibly flawed, mark BR_01 as unsuitable. Any revision or retry returns to a fresh quote and explicit approval.
- 03
Retrieve, name and verify the accepted file
Retrieve an accepted candidate through a separately authorized local operation, either manually or with Codex CLI. Use a stable shot number, a short action description and a synchronized version number—for example, BR_01_camera-pack_v01.mp4 if the retrieved file is MP4; otherwise retain its actual extension. Leading zeros preserve sort order, while descriptive terms make the asset easier to find by filename after import. Avoid calling a version “final.” Open the local file to verify that retrieval succeeded.
- 04
Update the shot-to-line matrix
Point the existing BR_01 row to the verified filename without changing its shot ID. Preserve the exact approved passage, its stable line identifier or verified time range, and the narrative purpose. For the illustrative L012 example, the placement note can say: begin the lowering action during “packing it in a padded case.” Record an explicit gap instead if no candidate is suitable; do not present an incomplete pack as finished.
- 05
Hand the editor media with placement context
Deliver the usable clips with the approved transcript and the compact matrix linking every filename to its exact passage, narrative purpose and placement note. In an external editor such as Premiere, the editor can search or navigate to the spoken cue, import the matching clip and try it above that narration. Assembly, trimming, sound design and export remain editing tasks; transcript selection does not automatically place newly generated B-roll on the timeline.
Put the insert beside its spoken cue

Where the work happens
Sources · 10
- [1] Kling 3.0 Omni Pro: Reference, Storyboard & V2V
MaxVideoAI · 2026-09-22
- [2] How Do Professional Editors Evaluate the Editing Quality of AI-Generated Cinematic Video Ads?
arXiv · 2026-09-22
- [3] MaxVideoAI Plugin for Codex
MaxVideoAI · 2026-09-22
- [4] GPT-6 Astra workflows — Premiere Pro MCP
leancoderkavy/premiere-pro-mcp on GitHub · 2026-09-22
- [5] Codex CLI
OpenAI · 2026-09-22
- [6] Plugin architecture
OpenAI · 2026-09-22
- [7] Add clips using Text-Based Editing in Premiere
Adobe · 2026-09-22
- [8] Start projects in Premiere
Adobe · 2026-09-22
- [9] Kling O3 Reference to Video [Pro] API
fal · 2026-09-22
- [10] Search options in Premiere
Adobe · 2026-09-22