ComfyUI Node
VideoDirector (per-role model select)
A ComfyUI node in OldTimeRadio/v2/video with 16 inputs and 1 output.
VideoDirector (per-role model select)
- video_policy_json
◄announcer_video_model▾►
◄music_video_model▾►
◄character_video_model▾►
◄announcer_image_model▾►
◄music_image_model▾►
◄character_image_model▾►
◄fps25►
◄canvas_w832►
◄canvas_h480►
◄seed_moderequest_hash►
◄request_seed0►
◄custom_models_json{}►
◄gate_in►
◄device_policycuda►
◄dtype_policyfp8_ok►
◄max_render_frames0►
CategoryOldTimeRadio/v2/video
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| announcer_video_model | COMBO | Video model for ANNOUNCER beats (role A). | |
| music_video_model | COMBO | Video model for MUSIC beats (role B). | |
| character_video_model | COMBO | Video model for CHARACTER beats (face + audio, role C). Uses the saved dropdown value; profiles only retarget this when explicitly applied. | |
| announcer_image_model | COMBO | Image source for the announcer (feeds its video). | |
| music_image_model | COMBO | Image source for music beats. | |
| character_image_model | COMBO | Image source for character beats (kept slot). | |
| fps | INT | 251–60 | — |
| canvas_w | INT | 83216–7680 | — |
| canvas_h | INT | 48016–4320 | — |
| seed_mode | COMBO | request_hash | request_hash (deterministic) | fixed. |
| request_seed | INT | 00–4294967295 | Base seed (NOT named 'seed' on purpose, V-7). |
| custom_models_jsonopt | STRING | {} | When a role is set to '+ Add Custom Model', map the role key to a custom engine id here, e.g. {"character_video_model": "my_engine"}. |
| gate_inopt | STRING | Optional ordering signal (opaque STRING). | |
| device_policyopt | COMBO | cuda | EXPLICIT local video render device (platform profile value). No auto-detect. |
| dtype_policyopt | COMBO | fp8_ok | Dtype lanes allowed for local video engines (fp8/fp4 artifacts are OFF on ROCm/MPS tiers). |
| max_render_framesopt | INT | 00–240 | Absolute per-clip RENDER-length ceiling in frames for local video engines (0 = unpinned = the engine's own maximum). Beat LENGTH is never changed by it -- this caps what an engine renders, never what the episode plays. TWO LANES CONSUME IT DIFFERENTLY. ltx_8gb takes it as a COVERAGE-PLANNING cap: the beat is partitioned into real clips of at most this many frames and chained, so the ceiling decides how many clips cover the beat. The 8GB Wan tier takes it as an adapter-side NATIVE cap: it pins 17, renders 17 real frames, and ping-pong-extends them to the beat's audio length rather than requesting the whole 177-frame span and dying in the VRAM cost model. A value at or above an engine's own maximum has no effect on that engine. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video_policy_json | STRING | — |