凌晨两点,我让照片里的人开口说话了

上个月接了个项目,需要做一段产品介绍视频。
客户要求:真人出镜,说普通话,语速适中,配合PPT讲解。
我找了外包,报价8000块。
我说让我想想。
然后我打开电脑,花了三天,用一张照片和一段录音,自己搞定了。
那些年被”内容政策”支配的恐惧
在用这个方案之前,我试过很多在线工具。
HeyGen、D-ID、Synthesia,名字你可能都听说过。
效果嘛,还行。但有几个问题让我一直很难受:
第一,贵。 HeyGen最便宜的套餐,生成几分钟视频就烧完了,想批量做内容?洗洗睡。
第二,审核。 你上传的素材,你输入的文本,全在人家服务器上存着。有一次我想做一个角色扮演场景的视频,直接给我提示”内容不符合使用条款”。我到现在也没搞清楚哪里不符合。
第三,效果差强人意。 嘴在动,但感觉整个人是”僵”的。头不动,眼睛不眨,肩膀纹丝不动。看着像一个会说话的照片,而不是一个活人。
所以我一直在找本地化的方案。
在GitHub上翻到的宝贝
某天刷GitHub trending,看到一个叫 InfiniteTalk 的项目。
作者是MeiGen-AI,底层基于Wan2.1——就是那个让视频生成圈炸锅的Wan系列模型。
README里有几个词戳中了我:
“Unlimited-length talking video generation”
“lip sync + head movements + body posture + facial expressions”
“runs locally”
好,就它了。
第一次跑出来的效果,我愣了三秒钟
配置环境,下模型,写ComfyUI工作流。
整个过程说长不长,说短不短,大概折腾了一个下午。
然后我用了一张普通人像照片,配上一段30秒的录音,点了生成。
嘴在动——这个我预期到了。
但让我愣住的是:头也在动,眼睛也在眨,肩膀也有轻微的起伏。
不是那种机械式的左右摇摆,是那种说话时很自然的、配合呼吸节奏的微动。
第一反应:这是AI生成的?
为什么它能做到其他工具做不到的事
我研究了一下技术原理,说人话给你听。
传统的对口型工具(SadTalker、MuseTalk这些)的思路是:只改嘴。
找到视频里的嘴巴区域,根据音频把嘴换掉,其他部分保持原样。
这个思路有个根本问题:说话的时候,只有嘴在动,是不正常的。
正常人说话,头会有小幅度的前倾后仰,眼睛会配合情绪,肩膀会随呼吸起伏,手势也会动。
InfiniteTalk的思路不一样。它不是在改视频,它是在重新生成视频。
输入一张人像 + 一段音频,它会从0开始生成一段视频。在生成过程中,音频不只是驱动嘴唇,而是驱动整个身体的动态——包括头部姿态、面部表情、身体幅度。
结果就是:嘴型准,身体也自然。
论文里有个数据:InfiniteTalk的口型误差是1.8mm,MuseTalk是2.7mm,SadTalker是3.2mm。
这个差距,肉眼是能感受到的。
“无限长度”是什么意思?
默认每段生成81帧,约3秒钟。
但这个3秒不是上限,而是一个单元。
InfiniteTalk有个叫”sparse-frame context window”的机制:每生成一段视频,它会把末尾几帧作为参考,传递给下一段生成,保证视频的连续性和一致性。
换句话说:你可以让它一段一段地生成,自动无缝拼接,理论上没有长度限制。
我测了一段3分钟的视频,整体一致性非常好,人物没有”漂移”,背景没有抖动,声音和口型始终对齐。
再看一段效果:
配置要求
不需要顶级显卡。
- • 480p视频:6GB显存以上就能跑
- • 720p:建议16GB以上
我用的是RTX 3090,生成一段3秒的480p视频,大约需要30-60秒,不算快,但完全可以接受。
用到的模型文件:
- •
Wan2.1_I2V_14B_FusionX-Q4_0.gguf(主模型,量化版,显存更友好) - •
wan2.1_infiniteTalk_single_fp16.safetensors(InfiniteTalk专用patch) - •
wav2vec2-chinese-base_fp16.safetensors(中文音频编码器) - • 配套VAE、CLIP、LoRA若干
全都可以从Hugging Face或者国内镜像下载。
一键启动,不用写代码
我们在 ComfyUI 工作流的基础上,封装了一个 Gradio 可视化界面。
打开方式:双击 01-run.bat,浏览器自动跳转 http://localhost:7860。
左边上传:
- • 一张人像照片
- • 一段音频(支持WAV/MP3)
- • 输入文字描述(不影响内容,影响动态风格)
右边输出:生成好的MP4视频,直接播放下载。
高级设置里可以调分辨率(256-1024)、帧数、采样步数。普通用户保持默认就好。

说到这里,你可能想问一个问题
这套系统完全本地运行。
没有云端服务器,没有使用日志,没有内容审核。
你用什么素材,生成什么内容,输入什么音频——
你的电脑你做主。
至于你想用它来做什么……
你知道的。
最后
那个项目最终交付了。
客户很满意,说效果比他预期的专业。
他问我是找了哪家制作公司。
我说:我自己做的,在家用电脑跑的。
他停顿了两秒,然后说:
“所以你现在能帮我做第二期吗?”
能。
一键生成:https://xueshu.fun/7247





