☰
开源AI视频生成工作流拆解:从提示词到多轨并合
2026/10/19 7:31:04 网站建设 项目流程

做漫剧、短剧或动画类视频,过去有一条默认的成本公式:会画画、会分镜、会剪辑、会配音,最好再有一点导演思维。就算这些能力都具备,一条几分钟的成片也要熬好几个通宵。现在开源社区里出现的 AI 视频生成工具,比如近期讨论度很高的 Mimaxh3,把图像生成、视频生成、音色合成、轨道合并这些能力串成了一条几乎全自动的流水线。很多人第一反应是"这能免费生成 100 个视频,岂不是零成本做漫剧",但真正用起来会发现:工具本身不薅你的头发,提示词设计、多参考图一致性、音画同步这些环节才会。

这篇文章不准备只给一个"按这个步骤就能跑通"的速成教程,而是想把这类开源 AI 视频生成工作流的底层逻辑拆开讲清楚。你会理解提示词为什么是第一个决定成败的环节,多参考图如何在"角色一致性"上起作用,音色生成和视频素材之间是怎么对齐的,以及所谓的"多参物理并轨"在工程上到底是什么。无论你最终选择 Mimaxh3 还是其他开源项目,这套方法论都能复用。

1. 这类工具真正解决的是什么问题

先看清一个事实:AI 视频生成不是近一两年才出现的概念,早先的图生视频、文生视频模型也有,但大多是单段生成、不可控、角色一会儿换一张脸。漫剧、短剧、动态漫这类内容有一个共性要求——角色要稳定,场景要连贯,配音要能对上口型,连续几十段画面拼起来还得像同一部作品。这正是传统单体生成模型最大的痛点。

Mimaxh3 这波工具受到关注,本质上不是某个单点技术突然拉开代差,而是它把多个模态能力整合进了一条工作流。通俗地说:

  • 图片生成负责把角色形象、场景设计"定稿";
  • 视频生成负责让这些静态画面动起来;
  • 音色生成负责配音、旁白、角色声音;
  • 最后的合成轨道负责把多个视频片段、音频、字幕合并成一个完整成片。

这种整合带来的直接变化是,创作者不需要再逐个环节手动切换工具。以前要做的流程是:画角色 → 导入剪辑软件 → 一段一段生成 → 手动配音 → 对时间轴。现在的工作流变成:写好提示词 → 准备参考图 → 批量生成素材 → 音色处理 → 多轨并合出片。

所以我的一个判断是:这类工具真正降低的是"制作流程的组织成本",而不是创意和叙事的成本。你依然要想清楚故事讲什么、分镜怎么安排、角色怎么塑造,但"从想法到可播放视频"的工程门槛确实被大幅压低了。

什么样的人最应该读这篇文章?如果你是独立开发者、短视频运营、动漫爱好者,或者就是想研究开源多模态工具链的技术人,这套流程很值得跑通一遍。它会让你对"自动生成视频"这件事从听说变成掌握,也能帮你避开很多社区里反复出现的坑。

2. 核心概念:提示词、多参考图、音色与多轨并合

在动手之前,先建立一套统一的术语认知。这些概念会在后面每个步骤里反复出现,混在一起理解会很容易出问题。

2.1 提示词(Prompt)

提示词是你用自然语言描述"要生成什么"的输入。AI 生成模型会按照提示词中的主体、场景、画风、镜头、光照、动态等信息去采样。在这个工作流里,提示词不只是给图片生成用的,视频提示词和音频提示词同样重要,只是描述的维度不同。

新手最容易犯的错误,是把提示词当成"许愿池"——写一堆形容词,却不描述画面结构。真正合格的生成提示词,应该像一份简洁的分镜脚本:主体明确、场景清楚、动作具体、画风统一。

2.2 多参考图(Reference Images)

参考图是给模型"看"的输入图片,用来约束生成结果的方向。在这个工作流里,参考图通常有几种类型:

参考图类型作用典型来源
角色参考图锁定角色外貌、服装、发型用图像生成工具先行绘制并定稿
场景参考图锁定场景风格、构图、色调关键帧截取或单独生成
姿态/骨架图控制人物动作、镜头运动软件生成骨架图或用上一帧输出
风格参考图统一画风、色彩倾向、质感艺术家风格图、动漫画风样本

多参考图的核心价值是解决一致性问题。只用文字描述角色,两段视频生成出来大概率是两个人;但如果把一张已经确定的角色图作为参考,模型会更有依据地沿着这张图的特征去生成。

2.3 音色生成

音色生成包括 TTS(文字转语音)、音色克隆(用一段录音模拟角色声音)、语音情感控制,以及 BGM 和环境音的生成。在这个工作流里,音色不只是"配音",它本身也可以看成一种"参考模态"——你提供一段短音频作为音色参考,模型就会尝试接近这种声音特征。

比较务实的做法是:主要角色提前确定音色,并保存好音色文件;旁白单独用一个统一音色;BGM 提前生成好,后面做轨道并合的时候直接复用。

2.4 多参物理并轨

这个说法听起来复杂,落到工程上并不神秘。"多参"指的是多个不同类型的素材参数,比如画面分辨率、帧率、音频采样率、字幕时间点;"轨道"可以理解成时间线上的不同层:视频层、配音层、音乐层、音效层、字幕层,甚至转场层。所谓"多参物理并轨",就是在最终出片阶段,把这些不同参数、不同类型的轨道素材,按照统一的时间基准确认对齐,并合成到同一个输出文件里。

这也是为什么 FFmpeg 这类工具在这里很重要:它负责把视频轨道和音频轨道按帧率、采样率对齐,最后封装成 MP4 等格式。后面第 7 部分我会专门拆解这个流程。

3. 环境准备与前置条件

先说明一点:不同开源项目的依赖版本、模型格式和命令并不完全一致,本文给出的代码示例是通用思路,实际使用时以自己的项目 README 为准。但以下环境是几乎所有视频生成项目都需要的。

3.1 硬件基础

视频生成比单张图片生成吃显存得多。一套中等偏上的显卡配置会更从容。显存不足时,可以降低生成分辨率、减少视频帧数,或者用模型分块/低显存模式。如果硬要同时加载图像模型和视频模型,显存会很快爆掉。

更稳妥的思路是:按顺序加载模型、用完即释放,不要在同一个进程里同时常驻所有模型。

3.2 软件依赖

以 Python 生态下的开源视频生成项目为例,通常需要这些基础组件:

  • Python 3.10 及以上版本
  • CUDA 驱动与 PyTorch
  • FFmpeg(用于视频处理、音频处理、最终合成)
  • 图像处理库,例如 Pillow、OpenCV
  • 模型权重文件(一般需要单独下载,并放入项目指定目录)

下面是通用的环境检查命令,用来快速确认机器是否满足基本条件:

# 查看 Python 版本 python --version # 查看显卡驱动与 CUDA 可用性 nvidia-smi # 查看 PyTorch 是否可用 GPU python -c "import torch; print(torch.cuda.is_available())" # 检查 FFmpeg 是否安装 ffmpeg -version

如果检测到 PyTorch 可用但 GPU 不可用,多半是安装的 PyTorch 版本与 CUDA 版本不匹配。建议从 PyTorch 官网根据机器的 CUDA 版本选择对应安装命令,而不要直接用默认的 CPU 版本。

接下来创建独立虚拟环境,避免项目依赖互相污染:

python -m venv venv source venv/bin/activate # Windows 下使用 venv\Scripts\activate pip install --upgrade pip setuptools wheel

之后按项目要求安装其余依赖。这里特别提醒:模型路径和临时输出目录要在一开始就规划好。很多视频生成流程会产出中间帧、临时音频文件,如果全部堆在默认目录,后面做多轨并合时会非常痛苦。合理的目录结构类似:

project/ ├── prompts/ # 提示词文本 ├── refs/ # 参考图、音色样本 ├── clips/ # 生成的视频片段 ├── tts/ # 配音文件 ├── music/ # BGM 和音效 ├── output/ # 最终成片 └── temp/ # 临时文件

4. 提示词工程:第一个决定成败的环节

很多人拿到视频生成工具,第一件事就是丢一句"生成一个少年在星空下奔跑的动画"。结果生成的画面要么崩,要么风格完全不可控。原因很简单:提示词的信息密度不够。

在这个工作流里,提示词应该分成多个部分。我推荐一种通用模板:

[主体与细节] + [场景与背景] + [动作与动态] + [镜头与机位] + [光照与颜色] + [画风与质感] + [负面信息]

用漫剧常见的场景举个例子,假设我们要生成一个"女主角在雨中回头"的关键镜头:

主体:银发少女,绿色眼瞳,黑色制服,头发被雨水打湿 动作:缓缓回头,目光从远处转向镜头,发梢甩出水珠 场景:破败的城市街道,霓虹灯倒映在积水路面 镜头:中景,平视,浅景深 光照:冷色调霓虹光,蓝色和粉色混合高光 画风:日系动漫插画风,细腻厚涂,高细节 负面:手指畸形,人脸变形,模糊,水印,多余肢体

把这段提示词保存为结构化文本文件,也方便后面做批量修改。文件路径示例:

project/prompts/scene_001.txt

实际项目中,很多生成界面里还会有正面提示词和负面提示词的区分。负面提示词不是可选项,而是必需品。它告诉模型"不要出现什么",是稳定质量的重要杠杆。常见负面提示词可以沉淀成固定配置:

bad anatomy, bad hands, missing fingers, extra digits, deformed eyes, blurry, low quality, low resolution, watermark, text, logo, jpeg artifacts

这里有个很容易被忽略的细节:视频提示词要格外关注"动态描述"的丰富度。静态图像提示词只要把画面结构描述清楚即可,视频生成需要额外说明人物动作、镜头运动、物体变化。如果你只写"少女站在街道上",模型大概率只会生成一段人物微动的视频;但如果你写"少女缓缓回头,发梢甩出水珠,霓虹灯在水中闪动",生成结果的动态感和可用性会明显提升。

建议在前面的模板中,把动作和镜头部分当作视频生成的关键区来重点打磨。一个快速验证提示词质量的方法,是先拿同样的提示词生成 3 张静态图,看角色和场景是否足够稳定。如果静态图都不稳定,视频生成只会更不稳定。

5. 多参考图工作流:解决角色一致性问题

提示词决定画面的"方向",参考图决定画面的"长相"。多参考图工作流的核心目标,是解决 AI 视频生成中最令创作者头疼的一致性崩坏问题。

5.1 为什么只有一张参考图不够

一张角色图可以约束脸部特征,但视频是连续的,每个片段都会发生视角、动作、光照变化。只用一张正面角色图,模型很容易在侧脸、背身、动态场景中丢失身份特征。更稳妥的做法是:

  1. 先用图像生成工具生成角色的正脸、侧脸、半身、全身多张图;
  2. 把这些图统一裁剪到相近尺寸,作为角色参考图集合;
  3. 再准备场景参考图,用于锁定环境风格;
  4. 如果某个镜头有明确动作,再用姿态参考图控制骨架。

5.2 参考图预处理的通用流程

参考图不是拿来就能用。图像尺寸、主体位置、亮度今天都能影响生成结果。下面是使用 Python 和 Pillow 做基础预处理的一个通用示例:

# 文件路径:project/preprocess_refs.py from PIL import Image import os ref_dir = "refs/characters" output_dir = "refs/preprocessed" os.makedirs(output_dir, exist_ok=True) target_size = (768, 768) for filename in os.listdir(ref_dir): if not filename.lower().endswith((".png", ".jpg", ".jpeg")): continue img = Image.open(os.path.join(ref_dir, filename)) img = img.resize(target_size, Image.LANCZOS) out_path = os.path.join(output_dir, filename) img.save(out_path, quality=95) print(f"preprocessed: {out_path}") print("done")

这个脚本做的事情很简单:把参考图统一缩放到目标尺寸,避免生成时因为输入尺寸不一致导致构图偏移。实际项目中,你往往需要让参考图和目标视频的画幅比例保持一致,例如 16:9、9:16 或 1:1。

除了统一尺寸,还可以考虑用 FFmpeg 从已有素材中抓取关键帧作为参考图。比如拍摄好一个实拍素材或手绘动画片段后,按间隔抽帧,再把这些帧作为后续片段的参考。这也是很多工作流提高整体一致性的实用技巧:

# 每 5 秒抽一帧,输出为 jpg mkdir -p refs/frames ffmpeg -i source_video.mp4 -vf "fps=1/5" -q:v 2 refs/frames/frame_%04d.jpg

5.3 参考图数量和控制策略

"多参考"并不是越多越好。参考图数量过多,反而会让模型无所适从,画面出现混合痕迹。一个常见策略是:

  • 角色一致性:2 到 4 张多角度角色图;
  • 场景风格:1 到 2 张场景概念图;
  • 动作控制:用骨架图或前后帧图,按镜头需要动态替换。

从社区的使用反馈看,比较稳妥的做法是:控制模式采用"主角多参考、场景单参考"。主角需要从多个角度锁定身份,场景则更需要统一的空间感,参考图太多反而会引入不必要的视觉噪声。

5.4 一致性验证

生成完一个片段后,先不要急着进入配音或合成,先做一个快速一致性检查:把角色参考图和生成视频的首帧、尾帧并排看。如果首帧长得像参考图,尾帧却像另一个人,说明生成的后半段出现了漂移。这时候比盲堆更多参考图更有效的做法,是缩小单段视频的时长,让模型不要试图一次生成太久的变化。

6. 音色生成与音频处理:给角色一个稳定声音

画面稳定之后,下一步就是声音。语音、环境音、音乐这三类素材,可以提前准备好,也可以用生成模型创作。这里我重点讲音色复制和音频轨道的通用处理思路。

6.1 音色克隆与 TTS

音色克隆的基本流程是:准备一段干净的角色录音(建议 10 秒以上,背景噪声低、人声清晰),把这段音频作为模型输入,模型提取说话人的音色特征,再结合你要配音的文字内容,合成角色语音。

这里有一个工程上的约束:音色文件要与参考图一起管理。就像每个角色有一组参考图,每个角色也应该有一个固定的音色文件,不要每段视频都换新音色。命名建议采用角色 ID 加版本号的方式:

refs/voices/ ├── heroine_v1.wav ├── heroine_v2.wav └── narrator_v1.wav

使用版本号是因为你很可能反复调优同一个音色。更新音色后,之前所有引用旧音色的分镜都需要标记,以免一段成片里女主角声音前后不一致。

6.2 生成音频提示词

如果你的项目支持声音生成,音频提示词同样要结构化。音色提示词除了描述声音特质,还要描述情绪、语速和场景感:

音色:清澈女声,轻微气音,带呼吸感 情绪:低落,克制,带一点哽咽 语速:中等偏慢,句尾微微拖长 场景:雨中街道,有轻微环境底噪声

这类提示词的好处是方便批量套用。把台词文本和音色提示词放在同一个目录,配音生成的时候按目录规则引用即可。

6.3 音频基础处理

不管语音是用 TTS 合成还是录音生成,进入多轨并合之前都建议做一次基础处理。常见的操作包括去底噪、统一样本率、音量标准化。

下面的 FFmpeg 命令是一个通用示例,它把语音文件转为 44100 Hz 的 WAV,并通过 loudnorm 滤镜对音量做一次标准化:

ffmpeg -i tts/heroine_raw.mp3 -ar 44100 -af loudnorm=I=-16:TP=-1.5:LRA=11 tts/heroine_clean.wav

需要提醒的是,音频参数的设定没有绝对标准。短视频平台通常会把响度控制在 -14 LUFS 左右,而个人项目可以按平台要求微调。重要的是"统一标准",而不是随意设置。如果你做的一整集视频里,有的片段响度 -12 LUFS、有的 -20 LUFS,观众耳朵会很诚实地告诉你效果很差。

7. 多参物理并轨:把画面、声音、字幕合成成片

这一步是整个工作流最后也是最工程化的一部分。所谓"并轨",本质上是在时间线上把多路素材对齐、混流、编码输出。

7.1 先从分镜脚本规划轨道

在动手并轨之前,先想清楚每一轨的内容。一条完整的漫剧视频,通常有这些轨道:

  • 视频主轨:所有片段按顺序排列
  • 台词配音轨:对应每个视频片段里角色说话的时段
  • 旁白轨:全片的解说
  • BGM 轨:贯穿全片的音乐
  • 音效轨:雨声、脚步声、动作音效
  • 字幕轨:可以是硬字幕,也可以是字幕文件

在工程上,一个很实用的习惯是:把每个分镜片段先归类命名。命名里包含集数、场次、镜头序号、角色动作描述。比如:

ep01_sc003_heroine_walk_left.mp4 ep01_sc003_heroine_voice_line.wav ep01_sc003_bgm_rainy_theme.wav

这种命名方式看起来繁琐,但多轨并合时能节约大量时间。你不会希望几十个素材全部叫"output_final_v2.mp4"。

7.2 用 FFmpeg 合并视频片段

如果已经有多个视频片段,先把它们拼接为一个完整视频。下面的命令把所有片段按照文件名顺序合成:

# 先将片段列表写入文本文件 cat clips.txt # 内容例如: # file 'clips/ep01_sc001.mp4' # file 'clips/ep01_sc002.mp4' # file 'clips/ep01_sc003.mp4' # 执行拼接 ffmpeg -f concat -safe 0 -i clips.txt -c copy output/merged_video.mp4

使用-c copy是直接复制编码流,速度很快,前提是所有片段的分辨率、帧率、编码格式一致。如果片段之间参数不一致,则建议先统一转换成相同参数,再拼接,否则会出现花屏或音画不同步。

7.3 并轨合成最终成片

视频拼接之后,接下来把配音轨、BGM 轨一起合成。这里用到一个重要的 FFmpeg 参数-filter_complex,它可以同时处理多路输入并安排到不同轨道:

ffmpeg \ -i output/merged_video.mp4 \ -i tts/heroine_clean.wav \ -i music/bgm_theme.mp3 \ -filter_complex \ "[1:a]adelay=1500|1500[voice]; \ [2:a]volume=0.3[bgm]; \ [voice][bgm]amix=inputs=2:duration=first:dropout_transition=3[aout]" \ -map 0:v -map "[aout]" \ -c:v copy \ -c:a aac -b:a 192k \ -shortest \ output/final_ep01.mp4

这里解释一下关键点:

  • adelay=1500|1500表示配音延迟 1.5 秒开始,对应画面中角色的说话时机;
  • volume=0.3把 BGM 音量压低,避免盖过人声;
  • amix把两路音频混音;
  • -shortest让输出在最短输入结束时停止,避免视频结束后音频还拖着长尾。

实际项目中,你很可能需要更精细的对齐。比如某一句台词要在第 3 秒第 200 毫秒开始。FFmpeg 当然能精确到毫秒,但更方便的做法是:先在剪辑软件或字幕软件里完成时间轴排布,导出时间信息,再用 FFmpeg 批量处理。开源项目通常也提供了更友好的 Web 界面或预处理模块来做这种对齐,理解 FFmpeg 原理能帮助你排查为什么最终成片音画不同步。

7.4 验证并轨成功

判断并轨是否成功,至少要看三件事:

  1. 视频能正常播放,没有黑帧、闪帧;
  2. 配音、BGM、音效之间的音量比例合理,人声清晰;
  3. 画面中人物说话、动作的时间点和音频对齐。

不要只看"文件生成了"就认为成功。一个有效的验证命令是提取出成片的音频波形或者做一个抽帧比对,但在普通项目里,最简单的办法是人工看一遍成片,重点看嘴巴动作和声音起止的匹配度。

8. 常见问题与排查思路

在实际使用这类开源视频生成工作流时,下面这些问题是出现频率最高的。

问题现象可能原因排查方式解决方案
生成视频时显存不足视频模型体积大,输入分辨率或帧数过高查看显卡占用和报错日志降低分辨率、减少帧数、启用分块生成或低显存模式
首帧看起来正常,后面角色完全变样单段视频生成时长过长,参考图约束力衰减对比首尾帧与参考图缩短单段生成时长,把长镜头拆成多个短片段
提示词描述很丰富,但生成内容不相关提示词结构混乱,信息密度不足简化提示词,或先生成静态图验证按"主体+场景+动作+镜头+画风"结构重写提示词
同一角色在不同片段里声音不一致音色文件不统一或音量标准化没做检查音色文件版本和音频参数统一音色文件,批量做响度标准化
视频拼接后出现音频延迟片段编码参数不一致,或时间戳有偏移检查各片段的帧率和采样率先统一参数再拼接,必要时重新转码
字幕错位字幕时间点和视频帧数不对应检查字幕文件与片段时间轴在时间轴工具中核对后再导出字幕

一个通用排查顺序建议:先看日志,再看素材参数,最后看合成命令。很多视频工具的问题并不是模型能力不够,而是输入素材的尺寸不一致、帧率不统一、音频采样率不同,导致后续环节处处出错。

9. 最佳实践、安全边界与工程建议

9.1 提示词模板与素材库管理

个人或者小团队做批量视频生成,最重要的是沉淀"模板"和"素材库"。提示词模板不要每次重写,而是按场景类别积累,例如"对话镜头模板""动作镜头模板""空镜模板"。角色参考图、音色文件、BGM 也要按项目归档。这样后续做新视频时,只需要替换角色名和故事线,大部分技术参数可以复用。

9.2 一致性优先于多样性

视频生成最忌讳的思路是"每个镜头都重新生成一遍",因为模型生成的随机性会让整体风格四分五裂。更稳妥的策略是:

  • 先用少量参考图和提示词敲定角色定妆图;
  • 在定妆图基础上做分镜描述;
  • 每个分镜生成时都传入同一组参考图;
  • 生成后严格检查角色一致性,不满足就重做,而不是侥幸进入下一步。

9.3 版本管理与可复现性

当生成素材多了以后,建议记录每一次生成使用的提示词版本、参考图版本、模型版本、随机种子。很多开源项目允许固定随机种子,这非常重要。固定种子意味着,你修改了一小段提示词后,其他部分的画面不会跟着发生不可控的变化。这在实际生产中能省下大量返工成本。

9.4 版权、肖像权与合规风险

这一条必须单独强调:AI 生成工具可以降低创作门槛,但不代表可以随意使用他人的 IP 形象、已有画风、真实人物肖像,也不代表可以无授权使用受版权保护的配音素材。做漫剧、短视频时,注意以下几点:

  • 主要角色尽量使用自己原创的描述和参考图;
  • 不要使用真实人物的照片作为参考图去生成内容,尤其涉及公众人物时要格外谨慎;
  • 音色克隆只用于自己有授权的素材,不要用工具模仿他人声音用于公开发布;
  • 如果项目会对外发布、商用,请提前确认所用开源项目模型权重的授权协议,以及生成内容的使用规则。

9.5 算力规划与效率优化

批量生成视频时,不建议一口气把所有镜头全部提交生成,因为中途必然会有失败镜头,重做成本会叠加。更现实的做法是:先抽 3 到 5 个代表性镜头跑通全流程,确认画面一致性、音频流程、合成规则都成立后,再批量推进剩余镜头。这样能把技术调试成本控制在最小范围内。

9.6 从"能用"到"好用"的四个改进方向

如果你已经把全流程跑通,接下来想提升成片质量,可以按这个顺序迭代:

  1. 把单镜头提示词写成完整分镜脚本,让每段生成都清楚知道前后剧情关系;
  2. 建立统一的参考图预处理脚本,保证所有输入尺寸和画面比例一致;
  3. 把配音、BGM、音效的音量标准化做成自动脚本,告别手动调音量;
  4. 将成片的画面抽帧与参考图对比,做一次系统性的质量检查,而不是随机抽查。

这四件事做完,你的工作流就不是"能跑",而是"稳"和"快"。

10. 总结与后续学习方向

回顾整篇文章,最值得记住的并不是某个具体参数,而是这套工作流的思考方式:先定提示词的方向,再用多参考图锁住人物与场景的"长相",接着用音色和音频处理解决"声音"问题,最后通过轨道并合把所有素材组装成一部可以被观众正常观看的成片。Mimaxh3 这类开源项目把多模态工具集成到了一起,但核心的工程问题依然要靠创作者去理解和把控。

如果你正准备动手,建议先完成一个小闭环:选一个角色,写好一段 30 秒以内的分镜提示词,准备 3 张角色参考图,生成 2 到 3 个视频片段,配一段旁白,加一段 BGM,用 FFmpeg 合成最终文件。这个小项目跑通后,你自然会对图片、视频、音色、并轨这四个模块有真实体感,再回头去读项目的源码或社区讨论,理解就会完全不一样。

更值得深入的方向包括:如何用 ControlNet 类方法实现更精准的动作控制、如何通过种子与分块生成保证长片稳定性、如何设计自己的提示词模板库,以及如何把这条工作流封装成团队可以复用的自动化流水线。祝你能用这套流程真正做出属于自己的作品。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询