Nodes/Quality of Life Nodes for ComfyUI/TensorScale MiniMax H3 Video Reference (Soze)
ComfyUI Node

TensorScale MiniMax H3 Video Reference (Soze)

Image, video, and audio slots in one node

By SozeInc·Created 2 years ago·Updated a day ago· 10
TensorScale MiniMax H3 Video Reference (Soze)
  • reference_image_1
  • reference_image_2
  • reference_image_3
  • reference_image_4
  • reference_image_5
  • reference_image_6
  • reference_image_7
  • reference_image_8
  • reference_image_9
  • reference_video_1
  • reference_video_2
  • reference_video_3
  • reference_audio_1
  • reference_audio_2
  • reference_audio_3
  • video
  • video_path
  • request_id
  • config
  • status
prompt
duration_seconds5.0
aspect_ratio16:9
seed1101
reference_uris
aspect_ratio_override
num_inference_steps50
flow_shift12.0
audio_flow_shift3.0
use_fal_uploadfalse
image_formatPNG
api_key_envTENSORSCALE_API_KEY_MINIMAX_H3
timeout1800

The sibling of the MiniMax H3 video node, and the one to pick when you have source material instead of just a prompt. Where the plain H3 node conditions on first/last frames, this one is true reference-to-video-and-audio: nine image slots, three video slots, three audio slots, and a text field for raw URLs. It's the most reference-rich node in the TensorScale family, and the one with the most ways to blow past the API's size limit - so read the gotcha section before you wire a big video into it.

The inputs

Core set is the same as the sibling: prompt, duration_seconds, aspect_ratio (with the same aspect_ratio_override escape hatch), seed. Then the references:

  • reference_image_1 through reference_image_9 - images that define characters, settings, objects.
  • reference_video_1 through reference_video_3 - motion/style references from existing clips.
  • reference_audio_1 through reference_audio_3 - the voice-cloning / native-sound inputs. A short clip of a voice here is how H3 makes the speaker sound like that person.
  • reference_uris - a multiline text field where each line is type|https://... (or a bare URL whose extension implies the type). Anything pasted here is appended after the socket references, so it's the escape hatch for material you have as a public URL rather than a local asset.

The prompt is where you wire it together and describe the sound: "The narrator in reference_audio_1 introduces the hero from reference_image_1, who runs through the market in reference_video_1." Yes, the prompt is the mix console - H3's audio comes from the same generation pass, not a separate TTS node bolted on later.

How it works

TensorScale runs /v2/MiniMax-H3/ref2va synchronously with a model-scoped key (TENSORSCALE_API_KEY_MINIMAX_H3, falling back to TENSORSCALE_API_KEY). Media is inlined as base64 data URIs by default, and this is where the 10 MiB body cap bites hardest in the whole pack - a video reference inlined as base64 will exceed it almost immediately. The tooltips on the video slots say it plainly: turn on use_fal_upload, or feed raw URLs through reference_uris. use_fal_upload pushes the connected media to FAL's CDN, which means it needs a working FAL_KEY too.

Outputs: video, video_path, request_id, config, status - the standard TensorScale set.

Install and key

From the Soze pack ("Quality of Life Nodes for ComfyUI"), via ComfyUI Manager or:

cd ComfyUI/custom_nodes
git clone https://github.com/SozeInc/ComfyUI_Soze.git
pip install -r ComfyUI_Soze/requirements.txt

Restart, then set TENSORSCALE_API_KEY or TENSORSCALE_API_KEY_MINIMAX_H3 (environment variable or .env in the repo root). Don't commit keys.

Common issues

  • Video references silently fail. They blew past the 10 MiB cap when inlined. Use use_fal_upload or reference_uris with a public URL - not optional for video.
  • Audio reference doesn't clone the voice. The audio needs to be clean and short; a noisy clip gives a noisy voice.
  • Key scope errors. This endpoint needs the MiniMax scope; a generic key or the wrong model-scoped variable won't authenticate.
CategoryTensorScale/VideoGeneration

Inputs (28)

NameTypeDefaultDescription
promptSTRING
duration_secondsFLOAT5.01–60Target length. Aligned server-side to the 24 fps / 17n+5 frame grid.
aspect_ratioCOMBO16:98 options: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, +2
seedINT11010–4294967295
reference_urisoptSTRINGOne reference per line: 'type|https://...' with type image/video/audio, or a bare URL whose extension implies the type. Appended after the sockets.
aspect_ratio_overrideoptSTRINGAny W:H from 1:4 to 4:1. Replaces the dropdown when set.
num_inference_stepsoptINT502–200
flow_shiftoptFLOAT12.00–50
audio_flow_shiftoptFLOAT3.00–50
use_fal_uploadoptBOOLEANfalseUpload connected media to FAL's CDN and send URLs. Strongly recommended for video/audio references.
image_formatoptCOMBOPNG2 options: PNG, JPEG
api_key_envoptSTRINGTENSORSCALE_API_KEY_MINIMAX_H3Environment variable holding the model-scoped key. Falls back to TENSORSCALE_API_KEY when unset.
timeoutoptINT180060–7200Read timeout in seconds. These endpoints are synchronous — the socket stays open for the whole generation.
reference_image_1optIMAGEImage reference slot 1.
reference_image_2optIMAGEImage reference slot 2.
reference_image_3optIMAGEImage reference slot 3.
reference_image_4optIMAGEImage reference slot 4.
reference_image_5optIMAGEImage reference slot 5.
reference_image_6optIMAGEImage reference slot 6.
reference_image_7optIMAGEImage reference slot 7.
reference_image_8optIMAGEImage reference slot 8.
reference_image_9optIMAGEImage reference slot 9.
reference_video_1optVIDEOVideo reference slot 1. Use use_fal_upload — inline video rarely fits the 10 MiB body cap.
reference_video_2optVIDEOVideo reference slot 2. Use use_fal_upload — inline video rarely fits the 10 MiB body cap.
reference_video_3optVIDEOVideo reference slot 3. Use use_fal_upload — inline video rarely fits the 10 MiB body cap.
reference_audio_1optAUDIOAudio reference slot 1 (voice cloning / native sound).
reference_audio_2optAUDIOAudio reference slot 2 (voice cloning / native sound).
reference_audio_3optAUDIOAudio reference slot 3 (voice cloning / native sound).

Outputs (5)

NameTypeDescription
videoVIDEO
video_pathSTRING
request_idSTRING
configSTRING
statusSTRING