Generate Video from Image with Sound in ComfyUI (Workflow Included) – MiniMax H3 Image-to-Video

Animating a still image usually gives you a silent motion loop. With MiniMax H3 in ComfyUI, a single starting image becomes a multi-shot 24fps video clip with synchronized stereo sound effects, ambient room tone, music, and lip-synced speech generated in the same pass. Generated from a single input…

Annons
Annons
Animating a still image usually gives you a silent motion loop. With MiniMax H3 in ComfyUI, a single starting image becomes a multi-shot 24fps video clip with synchronized stereo sound effects, ambient room tone, music, and lip-synced speech generated in the same pass. Generated from a single input image in one 5-second pass, complete with rain ambience, footsteps, spoken dialogue, and score. From left to right: the starting input image at 0.0s followed by the three camera shots in the generated video. In this tutorial, you will learn how to: Set up the MiniMax H3 image-to-video workflow in ComfyUI. Match your video resolution to any input image without stretching or cropping. Write an image-anchored storyboard prompt that avoids the 1-second freeze-frame bug. Use first-and-last-frame interpolation and the 8-step Turbo LoRA. Software needed We will use ComfyUI, a free AI image and video generator. You can use it on Windows, Mac, or Google Colab. Think Diffusion provides an online ComfyUI service if you don’t have a capable local GPU. What is MiniMax H3 Image-to-Video? MiniMax H3 (also known commercially as Hailuo 3.0) is an open-weights, omni-modal diffusion transformer that denoises video frames and stereo audio latents together. Because sight and sound share the same timeline during sampling, footsteps splash on the exact frame a boot hits a puddle, and spoken dialogue matches lip movement. This workflow uses the native MiniMaxH3ImageToVideo node and the minimax_h3_fl2va model. Depending on which image inputs you connect, the same workflow handles four tasks: First-frame image-to-video (first_frame only): Opens on your image at 0.00s and animates forward across one continuous shot or multiple hard camera cuts. First-and-last-frame interpolation (first_frame + last_frame): Generates a smooth transition that starts on your first image and lands on your second image. Last-frame convergence (last_frame only): Infers the preceding action and finishes on your reference image at the end of the clip. Text-to-video (no image connected): Generates video and audio purely from text, just like the MiniMax H3 text-to-video workflow. MiniMax H3 image-to-video workflow Step 0: Update ComfyUI MiniMax H3 requires ComfyUI 0.30.0 or newer. Update ComfyUI before loading the workflow, ideally using ComfyUI Manager. Click the Manager button on the top toolbar. Select Update ComfyUI. Restart ComfyUI. Step 1: Download the models Download these five files and place them in their matching folders: Download minimax_h3_fl2va_pruned_int8_convrot.safetensors (19.5 GB) and put it in ComfyUI > models > diffusion_models. Download qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors (14.6 GB) and put it in ComfyUI > models > text_encoders. Download minimax_h3_video_vae_int8_convrot.safetensors (2.6 GB) and put it in ComfyUI > models > vae. Download minimax_h3_audio_vae_fp32.safetensors (577 MB) and put it in ComfyUI > models > vae. Download minimax_h3_fl2v_turbo_8step_v1.0_comfyui_bf16.safetensors (1.8 GB) and put it in ComfyUI > models > loras. If you already completed the MiniMax H3 text-to-video tutorial, you already have all of these files installed. Two quick checks before moving on: Make sure you downloaded the fl2va diffusion model above, not ref2va. The ref2va checkpoint is for character reference sheets and will not lock onto your first or last frame. Both VAEs are required. The video VAE encodes your input image and decodes the output frames, while the audio VAE decodes the stereo soundtrack. Optional style shortcuts: Download any of the 10 style embeddings (minimaxh3_*.safetensors) and put them in ComfyUI > models > embeddings. Step 2: Load the workflow Download the workflow JSON file below and drag it into the ComfyUI window. Download Most of the pipeline is packed neatly inside the Image to Video (MiniMax H3) subgraph node in the center. You can double-click the subgraph node if you want to inspect the internal model loaders, frame-length math node, Turbo LoRA switches, SamplerCustomAdvanced, and dual VAE decoders. Step 3: Install missing nodes If you see nodes with red borders after loading the workflow, you may need to install missing nodes or update ComfyUI. Click Manager > Install Missing Custom Nodes. Install any nodes that are listed as missing (and update ComfyUI if prompted). Restart ComfyUI and refresh your browser. Step 4: Upload the input image Upload your starting frame to the Load Image node on the left. Its IMAGE output connects directly to the first_frame input on the Image to Video (MiniMax H3) node. You can download and use this 16:9 test image to reproduce the futuristic Kyoto demo: Starting keyframe (first_frame) at 0.00 seconds. If you want to generate a transition between two images (First-and-Last-Frame mode), duplicate the Load Image node, upload your ending keyframe, and connect its IMAGE output to the last_frame input on the Image to Video (MiniMax H3) node. Step 5: Set the resolution and duration Your output canvas must match the aspect ratio of your input image, and both dimensions must be multiples of 32. The workflow gives you two ways to set this: Option A: Use the Resolution Selector (default) On the Resolution Selector node, set aspect_ratio to match your image (16:9 (Widescreen) for the test image). Set megapixels to 0.4 (864x480) for fast testing, or 0.98 (1344x768) for full 768p quality. Leave multiple at 32. Option B: Use the “Use Image Size” group (automatic aspect ratio) If your input image has a custom aspect ratio, look at the Use Image Size group right below Load Image: Connect IMAGE from Load Image to image on ImageScaleToTotalPixels. Connect IMAGE from ImageScaleToTotalPixels to first_frame on Image to Video (MiniMax H3). Connect width and height from Get Image Size to width and height on Image to Video (MiniMax H3). This automatically scales your input image to 0.9 megapixels on a 32-pixel grid while preserving its exact proportions. Set duration on the Image to Video (MiniMax H3) node to 5 seconds. Internally, H3 generates on a 17-frame block grid ($17k + 5$) at 24fps, so 5 seconds is automatically rounded up to 124 frames (about 5.17 seconds). Step 6: Revise the prompt The full demo prompt is already loaded inside the Image to Video (MiniMax H3) node in the workflow file. When writing your own image-to-video prompt, follow these requirements and tips: Start with the keyframe alignment line: Begin your prompt by telling H3 where sits on the timeline: For the target video, at 0.00 seconds into the target video, (from [Shot 1]) is fully referenced. Anchor [Shot 1] to your input image: In [Shot 1] At 00:00.000, first describe the subject, outfit, and lighting already visible in , then describe how the subject and camera begin to move. If [Shot 1] describes a different scene from your image, H3 will freeze on your image for 1 second and hard-cut away. Add timecoded cuts for multi-shot clips: You can direct hard camera cuts from a single image while keeping the character and setting consistent. Start each cut on a new line with a timestamp, such as [Shot 2] At 00:02.000, cut to a low-angle tracking shot... and [Shot 3] At 00:03.500, cut to a wide anamorphic shot.... Use concrete camera directions: Describe camera movement with motion type + amplitude + speed, such as slow push-in with small amplitude, truck left at slow speed, or static medium close-up. Wrap spoken dialogue in tags: Give each speaker an ID ((S1), (S2)), keep voice descriptions outside the tag, and place only [Language] and the spoken line inside: The calm, clear young woman (S1) says: [English] You finally made it through the rain. Separate sound effects from music at the end: Close your prompt with overall_soundscape: for physical Foley and ambient noise (rain on an umbrella, footsteps in puddles) and non_diegetic_music: for the background score (or non_diegetic_music: N/A for no music). Step 7: Generate the video Click the Run button to start generation. The first run loads roughly 37 GB of weights from disk, so allow a minute or two before sampling begins. Once finished, your video plays inside the Save Video node on the right and is saved to ComfyUI > output > video. The opening input keyframe and the three generated shots with synchronized rain ambience, dialogue, and synth-koto score. Settings SettingValue in the workflowEffectfirst_framekyoto_neon_in.jpgOpening keyframe locked at 0.00s.last_frameDisconnected (null)Optional closing keyframe for transition mode.Aspect ratio16:9 (Widescreen)Must match your input image proportions.Megapixels0.4 (864x480)Safe up to 0.98 (1344x768, native 768p).Multiple32Locked to H3’s latent patch grid.duration5 secondsSnaps up to 124 frames at 24fps ($17k + 5$ grid).turbo_modefalse (20 steps)Set to true for 8-step Lightning LoRA drafts.Sampler / schedulerres_multistep / simpleSet inside the subgraph.Denoise1.0Keep at 1.0 (keyframes are passed as conditioning tokens).noise_seed757358688076805Change to generate a new take. Tips Fix the 1-second freeze-frame bug: If your video holds a static freeze-frame of your input image for the first second and then abruptly cuts to a different scene, your [Shot 1] prompt contradicts . Make sure the first sentence of [Shot 1] matches the subject and setting in your input image. How to prompt First-and-Last-Frame (FL2VA): When you connect images to both first_frame and last_frame, replace the first line of the prompt with the following. Then describe the continuous physical motion that transforms Picture 1 into Picture 2 inside a single [Shot 1]. How the reference pictures align with the target video: Picture 1 (from Shot 1) aligns with the 0.00-second mark of the target video; Picture 2 (from Shot 1) aligns with the 5.00-second mark of the target video Keep Denoise at 1.0: Unlike traditional Stable Diffusion image-to-image workflows, MiniMaxH3ImageToVideo injects your keyframes as conditioning tokens rather than noising the input image. Lowering denoise below 1.0 will produce noisy, unfinished frames. Draft at 0.2 to 0.4 MP with turbo_mode on: Flip turbo_mode to true (8 steps) and set megapixels to 0.2 or 0.4 to test camera moves and prompt timing in 15 to 30 seconds. Once you find a seed you like, turn turbo_mode back to false (20 steps) and raise megapixels to 0.9 or 0.98 so speech timbre and fine textures stay crisp. Never set Megapixels to 1.0: H3’s training cap at 16:9 is 1344x768, which is 0.98 megapixels. Selecting 1.0 megapixels outputs 1376x768, pushing past the training ceiling and causing structural distortion. To go higher than 768p, use an AI upscaler in a second pass. No negative prompt input: H3 uses BasicGuider (CFG = 1.0) without a negative prompt box. Avoid writing “no music” or “no subtitles” in the middle of action descriptions where the text encoder may attend to those words positively; instead, set non_diegetic_music: N/A and describe what is present in the frame. Speed and RAM flags: Launching ComfyUI with --use-sage-attention roughly doubles sampling speed. If you have 16 to 32 GB of system RAM and notice heavy disk swap when the 32B text encoder unloads, add --fast-disk and --reserve-vram 1.0. Do not enable comfy kitchen attention with the int8_convrot model, as it only supports bf16 weights. What’s next MiniMax H3 text-to-video Wan 2.2 image-to-video Wan 2.2 first and last frame video Hunyuan image-to-video LTX Video Video-to-video AI upscalers The post Generate Video from Image with Sound in ComfyUI (Workflow Included) – MiniMax H3 Image-to-Video first appeared on Stable Diffusion Art.

Source: Stable Diffusion Art — Published — Category: Image AI

🔗 Read full article on Stable Diffusion Art →
Annons
Annons