Skip to main content
H3 Reference Turbo Realtime turns reference images and a prompt into video with synchronized audio. Each clip takes one to nine ordered reference images to guide its subjects and appearance. Describe what happens in the scene, how the camera moves, and what the viewer hears. Every clip keeps its own prompt and references. Queue several clips, choose their playback order, and play them on demand or let autoplay start each ready clip. The H3 Reference Turbo Realtime reference is split across four pages: this overview, the complete command and event schema, the prompt guide for describing scenes with reference images, and a tutorial covering uploads, queues, and playback. The base wire protocol is the same as every other Reactor model: open a session with the Reactor class, send named commands, and receive events. The model name is reactor/h3-reference-to-video-turbo-realtime. The @reactor-models/h3-reference-to-video-turbo-realtime typed package adds named methods and React hooks for this protocol.
Pass reactor/h3-reference-to-video-turbo-realtime to the SDK. That is the model name on the wire, and it is also the name these pages use in their URL. Pass the shorter h3-reference-turbo-realtime to create-reactor-app as the template name. “H3 Reference Turbo Realtime” is the display name, used in prose and in the sidebar. Usage is billed per second of session time, not per second of generated video, so a session left open while you compose still bills; see Billing for how billing maps to rates.
This model is not FastH3. Both queue clips and play them on demand, so their commands look alike, but they take different inputs and are separate models on the platform. H3 Reference Turbo Realtime requires one to nine reference images per clip, which guide subjects and appearance. FastH3 opens a clip from text, an uploaded starting_frame, or an ending_frame, and has no reference images. Neither is a drop-in replacement for the other, and FastH3 is still served under reactor/fast-h3.

At a glance

Images are numbered in the order you provide them. Use Picture 1, Picture 2, and so on in your prompt to identify each reference and describe its role in the scene.

Key features

Reference to video

Combine up to nine references to guide the subjects and appearance of each scene.

Synchronized audio

Describe action and sound in the same prompt. Video and audio play together on the main_video and main_audio tracks.

Playback control

Queue clips, change their order, and choose what plays next. Enable autoplay to start ready clips whenever playback is idle.

Quick start

The fastest path to a working H3 Reference Turbo Realtime app is the create-reactor-app CLI. The template it scaffolds opens on a scene you can generate straight away, and shows the reference set, the prompt, and the follow-on shot in one place.
Building it yourself instead? Install the typed package and connect with it:
Start with a reference image and a prompt describing the scene you want. Connect to the model, upload your image, and queue the clip. Enable autoplay to play it as soon as it is ready. See Authentication to connect your app and the prompt guide for writing your first scene.

How it works

  1. Connect to the model. The connection moves through disconnected → connecting → waiting → ready. The first state_update and queue_update messages describe the session and its queues.
  2. Upload reference images. Use the SDK’s file upload method, then supply the returned references with each clip’s prompt. Each request keeps its own inputs.
  3. Enqueue a clip. It receives a clip ID and enters the generation queue. When the build finishes, clip_generated announces that it has entered the playout queue.
  4. Play a ready clip. Call play with a clip ID, or omit the ID to play the front of the queue. With autoplay enabled, ready clips start whenever playback is idle. Empty queues wait for more clips.
  5. Control what comes next. Use move to reorder queued clips and pop to remove them. Use stop to cut the playing clip while leaving the queues intact, or reset to clear the session.