Nodes/ComfyUI_AIIA/Float Process (AIIA In-Memory)
ComfyUI Node

Float Process (AIIA In-Memory)

Frames Straight Back to RAM

By havvk·Created about a year ago·Updated 6 months ago· 13
Float Process (AIIA In-Memory)
  • float_pipe
  • ref_image
  • ref_audio
  • images
a_cfg_scale2.0
r_cfg_scale1.0
e_cfg_scale1.0
fps25.0
emotionnone
crop_input_imagefalse
seed0
nfe10
device_overridedefault
decode_gpu_chunk_size32
mask_top_edge_pixels0

If you want a talking head that lip-syncs to any audio and you don't want to wait through EchoMimic or Ditto's setup, FLOAT is the lightweight option - and this is the quick-path version of it. Float Process (AIIA In-Memory) runs the FLOAT model and hands you back a full IMAGE batch, ready to pipe into a preview or a video combine node with zero intermediate files. Fast, seamless, and it will happily OOM you if you give it a long clip. It's the "short clip, iterate quickly" sibling of the To-Disk node.

How it works

You feed it a float_pipe (from the pack's FLOAT loader - the model and its VAE bundled together), a ref_image of the person, and ref_audio to drive the mouth. The node decodes the FLOAT model's latents into frames in GPU chunks (decode_gpu_chunk_size, default 32) and moves each chunk to CPU as it goes, which keeps VRAM reasonable. Output is one images tensor of all frames. Behind the scenes it patches the pipe's decode to be chunked - the same "decode a bit, transfer, free" pattern the pack uses everywhere to fight OOM.

The inputs that matter

  • ref_image / ref_audio - the two you'll actually wire up. Square, face-centered image; clean audio without background music.
  • a_cfg_scale / r_cfg_scale / e_cfg_scale - FLOAT's three-way guidance: audio, reference-image, and emotion strength. Defaults (2.0 / 1.0 / 1.0) are a fine starting point; raise a_cfg_scale if the mouth isn't tracking the speech.
  • emotion - pick happy, sad, angry, surprise… and the face gets a base expression on top of the speech. none is the neutral default.
  • nfe - the number of function-evaluation steps (default 10). Fewer = faster and rougher; more = smoother but slower. For previews, 10 is fine.
  • crop_input_image - crop the reference to the face region before generation; helps when the source photo has extra background.

The two optional helpers are device_override (force CPU/CUDA) and mask_top_edge_pixels - the latter crops the top N pixel rows off the output to remove a known artifact band; if your generated video shows a streak across the top, bump it.

When to reach for it (and when not to)

Use this node for short clips, lip-sync previews, or any flow where the frames need to stay in memory for the next node. It's the recommended default for quick iteration. But the whole point of the pair is that long audio belongs in the To-Disk variant - this one accumulates every frame in RAM, so a several-minute clip will run you out of memory and kill the queue. If you're generating anything past a minute or so, switch to Float Process (AIIA To-Disk for Long Audio) and let it stream frames to disk instead.

Install

Standard pack install: havvk/ComfyUI_AIIA via ComfyUI Manager or git clone https://github.com/havvk/ComfyUI_AIIA.git into custom_nodes/, restart, then let the FLOAT loader fetch its weights on first run.

CategoryAIIA/FLOAT

Inputs (14)

NameTypeDefaultDescription
float_pipeFLOAT_PIPE
ref_imageIMAGE
ref_audioAUDIO
a_cfg_scaleFLOAT2.00–10
r_cfg_scaleFLOAT1.00–10
e_cfg_scaleFLOAT1.00–10
fpsFLOAT25.01–60
emotionCOMBOnone8 options: none, angry, disgust, fear, happy, neutral, +2
crop_input_imageBOOLEANfalse
seedINT00–18446744073709550000
nfeINT101–100
device_overrideoptCOMBOdefault3 options: default, cuda, cpu
decode_gpu_chunk_sizeoptINT321–128(In-Memory) GPU解码后一次转移多少帧到CPU。影响显存和速度。
mask_top_edge_pixelsoptINT00–64CROPS the top N rows of pixels to remove artifacts. Output height will be smaller.

Outputs (1)

NameTypeDescription
imagesIMAGE