ComfyUI-VideoHelperSuite 教程:5步把AI图像序列变成能分享的视频
【免费下载链接】ComfyUI-VideoHelperSuiteNodes related to video workflows项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-VideoHelperSuite
你刚生成的16张连续帧还躺在输出目录里,是16张 PNG,不是能发出去的视频。ComfyUI-VideoHelperSuite 就是为 ComfyUI 做视频处理的节点套件:加载现成视频、加载图像序列、把帧合成 MP4 或 GIF、顺便加上音轨,都能在里面完成。这篇教程带你怎么从安装到跑通第一个成片。
价值速览
| 使用场景 | 对应能力 |
|---|---|
| AI 图像序列合成视频 | Video Combine 节点,13 种格式预设 |
| 加载现成视频做处理 | Load Video 系列节点,支持强制帧率与尺寸 |
| 给成片配背景音乐 | Load Audio 节点,支持从指定秒数裁剪 |
| 长视频分批不爆内存 | frame_load_cap限制单批帧数,skip_first_frames接续 |
| 专业后期格式输出 | ProRes、FFV1 等预设,可选 10-bit 像素格式 |
上手篇:3 分钟装好并验证
进入 ComfyUI 的custom_nodes目录,执行安装命令:
cd ComfyUI/custom_nodes git clone https://gitcode.com/gh_mirrors/co/ComfyUI-VideoHelperSuite完成标志:重启 ComfyUI 后,右键画布新建节点,搜索框里输入VHS,能看到 Video Combine、Load Video 等一批节点,说明装好了。
两点说明:
- 依赖只有
opencv-python和imageio-ffmpeg,见 requirements.txt;如果控制台报 import 错误,用 pip 手动装上这两个包 - 入口就在 ComfyUI 主界面:所有节点都以
🎥或VHS为前缀,方便搜索
功能篇:按能力域认识节点
这一节解决"我要做的事该找哪个节点"的问题,只列你会真正用到的部分。
加载:视频和图像序列
- Load Video (Upload)- 从 ComfyUI 输入目录加载视频
- Load Video (Path)- 从任意磁盘路径加载视频
- Load Video FFmpeg- 走 ffmpeg 解码,适合冷门封装格式
- Load Images (Upload)- 从输入目录子文件夹加载图像序列
- Load Images (Path)- 从任意路径加载图像序列
加载节点共有四个核心参数:frame_load_cap限制单批帧数,skip_first_frames跳过开头若干帧,select_every_nth每 N 帧取一帧,force_rate/force_size强制统一帧率和尺寸。
合成:从帧到视频
- Video Combine- 核心输出节点,把图像序列编码成视频,可选接入音轨
- Prune Outputs- 清理该节点的历史输出文件
音频
- Load Audio (Path)- 按路径加载独立音频文件
- Load Audio (Upload)- 从输入目录上传音频
- VHS_AudioToVHSAudio- 新旧音频类型互转,老工作流迁移时用
批次管理与信息
- Meta Batch Manager- 长视频分批处理时的元数据中转
- Video Info (Source / Loaded)- 查看视频源与加载后的帧数、帧率信息
- Select Filename- 从输出文件名列表里取出某一条
图像与潜变量工具
- VAE Encode/Decode Batched- 分批做 VAE 编解码,降低峰值内存
- Split / Merge- 拆分、合并批次,大小不等时可重缩放
- Select Every Nth- 每 N 帧取一帧
- Unbatch- 把批次拆成单帧输出
实战篇:4 个常见场景
场景一:AI 图像序列合成 MP4
目标:把一批生成帧变成可直接分享的 MP4。
- 用 Load Images (Upload) 选中存放帧图形的子文件夹
- 输出接入 Video Combine,
frame_rate设为8(匹配 AnimateDiff 流程) format选video/h264-mp4,crf保持默认- 点击 Queue Prompt
完成后:输出目录出现带AIGenerated_前缀的 MP4,播放速度与输入帧数一致。
场景二:视频转循环 GIF
目标:把短视频压成网页用的 GIF。
- Load Video (Upload) 加载源视频,
select_every_nth设为2减半帧量 - Video Combine 的
format选video/gifski frame_rate调低到15,loop_count保持0
完成后:输出目录出现 .gif 文件,浏览器打开可循环播放。
场景三:给视频配背景音乐
目标:让成片带上音轨。
- Load Video (Upload) 加载视频
- Load Audio (Path) 加载 MP3,需要剪掉开头就填
seek_seconds - 两路输出都接进 Video Combine,
format选video/h264-mp4
完成后:输出的 MP4 同时包含画面和音轨,音画起点一致。
场景四:长视频分批处理
目标:让上万帧的长视频不撑爆内存。
- Load Video 的
frame_load_cap设为300 - 接上 Video Combine 跑第一批
- 下一批把
skip_first_frames递增到300再跑
完成后:输出目录每批一个文件,各自不超过 300 帧,全部跑完即覆盖整个源视频。
速查篇:参数与常见问题
参数推荐值
| 参数 | 推荐值 | 适用情况 |
|---|---|---|
frame_rate | 8 | AnimateDiff 工作流;其余素材对齐源视频帧率 |
force_rate | 8或0 | 统一源视频帧率;0表示不强制 |
frame_load_cap | 128~512 | 限制单批帧数,防内存不足 |
skip_first_frames | 0起按 cap 递增 | 长视频分批续处理 |
select_every_nth | 2 | 快速减半帧量,粗预览或做 GIF |
crf | 18~23 | 越小质量越高;约20为视觉无损附近 |
pix_fmt | yuv420p10le/yuv420p | 10-bit 色彩更好;个别设备不兼容时退回 8-bit |
filename_prefix | 任意,支持子文件夹 | 如sub/vid存入子目录,可含%date:...%时间戳 |
常见问题
症状:跑完输出目录没有文件原因:
save_output关闭时文件写到了 temp 目录处理:把save_output打开,或去 temp 目录确认症状:输出画面偏糊原因:
crf偏高,压缩损失大处理:降到18~20,并把pix_fmt换为yuv420p10le症状:加载时报内存不足原因:一次取帧太多处理:调小
frame_load_cap,或用select_every_nth抽帧症状:输出播放速度不对原因:Combine 的
frame_rate与素材帧率不一致处理:加载节点设force_rate,两边设成同一数值症状:音频与画面对不齐原因:音频起点偏移处理:用
seek_seconds裁掉音频多余开头
进阶篇:性能技巧、自定义格式与目录导读
性能技巧
- 在 ComfyUI 设置齿轮里勾选VHS Advanced Previews:预览会跟随节点参数实时转码,远程部署时带宽占用明显下降,代价是长视频首帧预览有延迟
- 超大视频的预览可以右键选 Pause preview 暂停,减轻浏览器压力
- 先拿
frame_load_cap一两百帧的短片段试跑,参数确认后再放开上限
自定义输出格式
往 video_formats/ 目录放一个 JSON 就能新增一种输出格式。参考 h264-mp4.json:main_pass里是传给 ffmpeg 的视频编码参数,audio_pass管音轨编码,extension决定扩展名。JSON 里还能把某个参数暴露成界面上的滑杆控件。字段细节以 README 的 Video Formats 一节为准。新增后重启,Video Combine 的格式下拉框里就能看到新条目。
目录导读
- videohelpersuite/:核心源码,nodes.py 是合成与管理逻辑,load_video_nodes.py 是视频加载逻辑
- video_formats/:13 个编码格式预设,从 h264 到 ProRes
- tests/:现成工作流样例,simple.json 是最短的一条链路,适合对照理解节点连接
- web/js/:前端组件,负责节点附加信息与动画预览
拿你手头最近的一批帧图,照场景一走一遍,第一个成片马上就能出来。
提示:处理长素材前,先用几秒的短片段试跑一次,参数确认没问题再换完整素材,能省下大量编码时间。
【免费下载链接】ComfyUI-VideoHelperSuiteNodes related to video workflows项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-VideoHelperSuite
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考