Save Mp4 Pixaroma
Encode a frame batch or a whole video to an H.264 mp4 with optional audio, and watch it play right on the node.
What it does
Takes a batch of frames, or a whole video, plus an optional AUDIO track, and encodes them to a single mp4 using ffmpeg. A video preview plays on the node body so you can check the result without leaving ComfyUI. Audio is combined in the same pass.
Once it has made a video, the size and length are shown on the top right of the node, on the same line as the first input. Before the first run there is nothing to show, so it stays empty.
The ffmpeg binary is auto-located: if imageio-ffmpeg is installed its bundled exe is used; otherwise ffmpeg on your system PATH is tried.
Frames or a video: which input to use
ComfyUI has two different kinds of video on the wire, and this node accepts both, so there are two inputs. You only ever need one of them.
- video_frames
- A batch of frames. This is what Load Video Pixaroma's
video_framesoutput gives you, and what a video model produces. - video
- ComfyUI's own video type, such as the output of its Load Video node. The sound stored in the video comes along with it, so you do not need to wire
audioas well. It also keeps its own frame rate, so it comes out the same length it went in and thefpssetting is ignored for it.
What using the video input costs
A video wired into video is unpacked into frames and then encoded again, so re-saving a video loses a little quality, and a long clip is held in memory while it is read. If you already have the frames, wiring them in avoids both.
If you connect both inputs, video_frames is the one used, and the node prints a line saying so rather than quietly picking for you. A trimmed video (from ComfyUI's Video Slice) saves the trimmed part, not the whole file.
How to use
- Wire an IMAGE batch into
video_framesand the frame rate intofps(from AudioReact, connect itsvideo_framesandfps). Or wire a video intovideoinstead. - Optionally connect an
audiooutput to add a soundtrack. It overrides the sound that came in with a video, which is how you replace a clip's audio. - Set
save_modetopreview(temp, auto-cleared on restart) orsave(kept in output). - The preview remembers the last clip, so it comes back when you switch workflows. If that file has since been deleted, moved, or cleared from temp by a restart, the node tells you instead of showing a black player: just run again.
- Set
filename_prefixto name the file; a 5-digit counter is added automatically. You can print another node's value into the name with a token like%Seed Pixaroma.seed%. - Enable
trim_to_audioto end the video at the audio length. - Set
audio_fade_msto fade the sound in at the very start. AI video models often begin their audio at full level in a single step, which is heard as a click; about120removes it and is too short to notice as a fade. Leave it at0when you are re-saving a video whose sound you do not want changed.
Requirements
Save Mp4 needs a free tool called ffmpeg to turn the frames into a video. Most ComfyUI setups already have it, because anything else that works with video brings it along, so usually there is nothing to install. One rule: the frame width and height must both be even numbers, and the node shows a clear message instead of crashing if they are odd.
Only if you see an "ffmpeg not found" message, add it one of these ways:
- Easiest: in ComfyUI Manager, open its pip install option and enter
imageio-ffmpeg. - Portable ComfyUI (Windows): open a command window in your ComfyUI folder (the one that holds the
python_embededfolder) and runpython_embeded\python.exe -m pip install imageio-ffmpeg. - Installed with your own Python (venv or conda): activate that environment and run
pip install imageio-ffmpeg.
Workflow inside the video
The full workflow is saved inside the mp4, the same way it is saved inside a PNG, so you can drag a saved mp4 back onto the canvas later and rebuild the whole graph. It is stored the same way ComfyUI's own video saving stores it, so ComfyUI reads it back on its own. The frame width and height must be even numbers.
Civitai generation info
Turn on Add Civitai generation info in the node's settings (right-click the node, or the gear) and Civitai shows the prompt, negative prompt, steps, CFG, seed, sampler and model name of the videos you upload. Without it Civitai often shows no prompt at all for a video, or nothing, because it cannot read most custom nodes.
Your workflow stays inside the video exactly as before, so dragging it back onto the canvas still rebuilds the whole graph. The setting applies to every Save Mp4 node. Unlike an image, a video cannot link the model or LoRAs to their Civitai pages, because Civitai does not read model fingerprints from videos.
The buttons on the node
- Play and Pause
- Starts or stops the preview. Clicking the picture itself does the same.
- The scrub bar
- Click or drag anywhere along it to jump to that point in the clip.
- Download
- Saves the finished mp4 to your computer.
- The speaker
- Sets how loud the preview plays. Point at it and a slider comes out. Click the speaker to silence it and click again to bring it back at the same level. Whatever level you leave it at is used by every Pixaroma video node from then on, in every workflow, so you only set it once. It belongs to you rather than to the workflow, so sharing a workflow does not carry your volume to anyone else, and changing it never marks a workflow as edited.
- Fullscreen
- Expands the video preview to fill your screen.
If you want folders and filenames
Save Mp4 is the quick one: drop it in and press Run. If you want to save into your own folder, build the filename from tokens, or see the exact file before it is written, use Save Video Pixaroma instead. It has the same encoder plus Save Image's folder and filename tools, and it can also write H.265 at 10-bit.
What you wire in
The settings on the node
What comes out
Nothing. This is the end of a chain - it shows or saves what reaches it.
This is the help that comes with Pixaroma 1.4.212. Inside ComfyUI, select the node and click the orange ? above it to read the same help there.