|
Download README.md from PoopMan333/H3_Easy_Ref2V_Workflow: direct link, hf CLI and curl.
- Browser
- Download file 7.82 kB
-
https://huggingface.co/PoopMan333/H3_Easy_Ref2V_Workflow/resolve/main/README.md
- Command line
-
hf download hf://PoopMan333/H3_Easy_Ref2V_Workflow/README.md
-
curl -L -o README.md https://huggingface.co/PoopMan333/H3_Easy_Ref2V_Workflow/resolve/main/README.md
7.82 kB
| license: other | |
| license_name: minimax-h3-community-license | |
| license_link: https://huggingface.co/MiniMaxAI/MiniMax-H3/blob/main/LICENSE | |
| pipeline_tag: video-to-video | |
| tags: | |
| - minimax-h3 | |
| - comfyui | |
| - workflow | |
| - ref2v | |
| - prompt-enhancer | |
| - character-replacement | |
| - v2v | |
| # Nugget H3 EasyR2V β Prompt Enhancer & Full Workflow | |
| **Why spend 30 minutes doing something when you can spend 2.5 weeks making a tool to automate it.** That's basically the whole reason this exists. | |
| I wanted an easy to use workflow for us simple folk who want to do **Ref2V** on MiniMax H3 but keep running into troubles with the model understanding me. A good prompt does 80β90% of the work with H3 R2V β so instead of writing them by hand every time, this workflow writes them for you. | |
| Think of it as **"Ref2Video for dummies"**. But it's not just limited to that. | |
| --- | |
| ## What it does | |
| - **Scans your video** (if you're using one) to caption it and transcribe the audio | |
| - **Captions all your images** - so it also works as a pure image-to-video workflow | |
| - **Loads a small LLM of your choice** and writes your H3 R2V prompt in the correct format with your stated intent (user prompt) | |
| - **If you're on the Full workflow**, it generates the video too | |
| ## What it does NOT do | |
| - **Be creative for you** - The current WF is only setup to do the prompt formatting, it is not able to generate new ideas for you | |
| - **It cannot perform magic** - You are still limited to what the H3 model can and cannot do. Complex scenes are still very difficult | |
| ### Saving Time | |
| - If your video doesn't change, a second run doesn't trigger a new video transcription (If you have "FIXED SEED") | |
| - If your images and user prompt don't change, it doesn't write a new prompt β so you can re-run on a new seed to test without paying the LLM cost every time (If you have "FIXED SEED") | |
| --- | |
| ## Two workflows | |
| | File | What it does | | |
| |---|---| | |
| | `Nugget_H3_EasyR2V_Full_WF_v03.json` | The full thing β transcribe + prompt + generate video | | |
| | `Nugget_H3_EasyR2V_Prompter_Only_v03.json` | Just writes the H3 prompt. Copy it out, or wire it into your own H3 graph | | |
| Prompter-only is handy if you've already got your own H3 setup dialled in and just want a better prompt without ripping your workflow apart. | |
| **Full workflow:** | |
|  | |
| **Prompter only:** | |
|  | |
| --- | |
| ## Examples | |
| **Character replacement** β swap the person in a clip for one from your reference images: | |
| <video controls src="https://huggingface.co/datasets/PoopMan333/Examples/resolve/main/Prompt_Enhancer/Character_replacement_example.mp4"></video> | |
|  | |
| Side by side, original vs replaced: | |
| <video controls src="https://huggingface.co/datasets/PoopMan333/Examples/resolve/main/Prompt_Enhancer/example%20side%20by%20side.mp4"></video> | |
| <video controls src="https://huggingface.co/datasets/PoopMan333/Examples/resolve/main/Prompt_Enhancer/example%20side%20by%20side%202.mp4"></video> | |
| **Background + character replacement** β swap both in one go: | |
| <video controls src="https://huggingface.co/datasets/PoopMan333/Examples/resolve/main/Prompt_Enhancer/BG_and_Char_Replacement_Example.mp4"></video> | |
| **Voice line + character replacement** β new person, new dialogue: | |
| <video controls src="https://huggingface.co/datasets/PoopMan333/Examples/resolve/main/Prompt_Enhancer/Voice_Line_and_Char_Replacement_Example.mp4"></video> | |
| --- | |
| ## Setup | |
| Both workflow files have a big **START HERE β Downloads & Setup** markdown note pinned inside them, with every model link, folder path and install step. Rather than duplicate it all here, just open the workflow and read the note β it's more accurate than a copy of it would be. | |
| The short version: | |
| - **Custom nodes**: ComfyUI-Nugget, ComfyUI-KJNodes, and (Full workflow only) ComfyUI-PlagueKind-Nodes | |
| - **Run the Nugget install script** if you want dialogue transcribed β it installs `faster-whisper` into ComfyUI's own Python. A normal `pip install` goes into the wrong interpreter and it will still say the package is missing | |
| - **H3 models** from [π€ Comfy-Org/MiniMax-H3](https://huggingface.co/Comfy-Org/MiniMax-H3) | |
| - **Prompt enhancer model** β start with Qwen3-VL 8B fp8_scaled. Drop to nvfp4 on 12 GB cards | |
| If the file won't open in ComfyUI, a node pack is missing. Install it, restart, reopen. Bypassing won't help. | |
| --- | |
| ## Tips for good character replacement | |
| - **Don't expect miracles.** - It is still H3 model and sometimes tempermental. Check your enhanced prompt and consider rolling again if it is not right. | |
| - **H3 is a tool, you're the one using it.** If you don't specify emotions, expect expressionless results. This current setup will only do what you intend for it to do. **Slop prompt in, slop video out** | |
| - **Limit the resolution and length.** There seems to be an arbitrary context window that may be linked to your specs, so the higher higher res/longer time your input/outputs. Keep it smaller and your success rate goes up | |
| - **If the video is easy, replacement should be easy too.** H3 has a quirk though β if the original person and the new person look too similar, it sometimes converges back to the original. A prompt won't always fix that. If you hit it, consider changing the person to a intermediate step (faceless green person). The new body/face will transfer over better. Alternatively you can look into Sam3 character replacement method. | |
| - **More than one person in the scene?** Describe the scene properly. `replace the man wearing white shorts with the man in <picture 1>` beats `replace the man with <picture 1>` every time. | |
| - **Complex scenes?** It will be very difficult (I've tried), scenes with too many people, too many cuts, characters obstructed are very difficult for the model to properly identify and swap. | |
| - **Give the LLM some context.** A one-liner in the user prompt like `<video 1> is a video of two girls eating a cup of chocolate ice cream` really helps the LLM understand what it's looking at. Especially useful with multiple scenes | |
| - **Use 24 FPS videos** you can trim, crop and edit the FPS before you send it to the WF. [I have a (unfortunately a bit buggy at times) tool for that](https://huggingface.co/PoopMan333/Video_Tools/tree/main). Alternatively you can use the VHS Load Video nodes | |
| - **Use Character Sheets** through my testing, I have found that replacing a character is much easier when a character sheet is supplied. [Consider checking out my character generator to make a 360 orbit and generate a full sheet or individual shots](https://huggingface.co/PoopMan333/H3_Character_Sheet_Generator) | |
| - **Test! Test! Test!.** Sometimes less is more, sometimes more is more when it comes to the user prompt. You'll get a feel for it, tweak it until you get your desired results. | |
| --- | |
| ## Re-running cheaply | |
| Keep both `seed` widgets on **fixed**. If nothing upstream has changed, ComfyUI skips the transcriber and the prompt enhancer entirely β only the sampler re-runs. Change the sampler seed for a new take, don't touch the others. | |
| Set the transcriber or enhancer seed to `randomize` and you'll re-transcribe the whole video every queue for nothing. | |
| To skip the video entirely, bypass **Load source video** (Ctrl+B). Prompt is written from the images and your text alone. | |
| --- | |
| **[If this has helped you, consider chucking a few dollars my way. Any tips help with the power bills. Thank you.](https://ko-fi.com/c_nugget)** | |
| By C_Nugget | |