在实际 AI 视频创作领域,从零开始制作一部具有真人效果的短剧,已经不再是大型工作室的专属。借助当前成熟的 AI 工具链,个人创作者完全有能力独立完成从剧本构思到视频生成的全过程。这个过程并非魔法,而是一套清晰、可拆解的技术工作流。本文旨在为希望进入 AI 短剧创作领域的开发者、技术爱好者和内容创作者,提供一套从环境搭建到成品输出的完整、可复现的实践指南。我们将避开空洞的理论和夸张的宣传,聚焦于具体工具的选择、关键参数的配置、操作步骤的细节以及过程中必然会遇到的“坑”和解决方案。通过本文,你将能理解 AI 视频生成的核心环节,并亲手跑通一个完整的短剧片段制作流程,为后续更复杂的创作打下坚实基础。

1. 理解 AI 短剧制作的核心工作流与工具选型

在开始安装任何软件之前,必须理清整个制作流程。一个典型的 AI 真人短剧制作流程并非单一工具一键生成,而是由多个专业环节串联而成的管道。理解这个管道,有助于我们在遇到问题时快速定位环节。

1.1 核心五阶段工作流

一个完整的制作流程通常包含以下五个阶段,每个阶段都有其核心任务和推荐工具:

  1. 剧本与分镜 :确定故事、角色、场景和镜头语言。这是所有后续工作的蓝图。
  2. 角色与场景生成 :创建符合剧本描述的虚拟人物和背景环境。
  3. 视频生成与驱动 :让静态的角色“动”起来,按照剧本表演。
  4. 音频处理 :生成角色对话、旁白、背景音乐和音效。
  5. 后期合成与剪辑 :将生成的视频、音频素材进行时间线对齐、转场、调色、字幕添加等处理,输出成片。

1.2 当前主流工具链选型建议

工具选型需要平衡效果、学习成本、硬件要求和成本。以下是一个基于当前(2024-2025年)技术生态的务实选型方案,重点关注开源、可控性强的工具。

阶段 核心任务 推荐工具(开源/主流) 关键考量
剧本/分镜 故事构思,镜头描述 ChatGPT, Claude, Notion 利用大语言模型辅助脑暴和格式化剧本。
角色生成 创建一致的角色形象 Stable Diffusion (SD) + LoRA, Midjourney SD 配合 LoRA 训练可实现低成本、高可控的角色一致性。
场景生成 生成故事背景 Stable Diffusion, Leonardo.Ai 利用 ControlNet 控制构图,文生图或图生图。
视频生成/驱动 让图片“动”起来 Stable Video Diffusion (SVD), AnimatedDiff, SadTalker, D-ID SVD 用于场景转换,SadTalker/D-ID 用于口型同步。目前是技术难点集中地。
音频生成 语音合成,音效 ElevenLabs, Microsoft Edge TTS, Bark ElevenLabs 音质好,成本可控;Edge TTS 免费;Bark 开源但算力要求高。
后期合成 剪辑、对齐、字幕 DaVinci Resolve (免费版), Adobe Premiere Pro, CapCut DaVinci Resolve 专业且免费,足以应对多数合成任务。

注意 :工具迭代迅速,本文以 Stable Diffusion 和 相关扩散模型 为核心进行讲解,因为其开源特性允许本地部署,提供了最高的可控性和学习深度。商业在线工具(如 RunwayML, Pika)虽然易用,但作为教程,理解底层流程更为重要。

1.3 硬件与基础环境要求

本地运行 AI 生成模型对硬件有一定要求,以下是学习与实践的推荐配置:

  • GPU(核心) :NVIDIA GPU,显存 8GB 及以上 。RTX 3060 12G 是性价比入门选择。RTX 4090 或更高性能显卡能显著提升生成速度。AMD GPU 支持较差,需额外折腾。
  • 内存 :16GB 及以上,32GB 更佳。
  • 存储 :至少 50GB 可用空间的 SSD。模型文件通常很大(几个GB一个)。
  • 操作系统 :Windows 10/11,或 Linux。macOS(M系列芯片)可通过特定方式运行,但生态工具支持不如 Windows 完善。
  • 网络 :需要能访问 GitHub、Hugging Face 等平台,用于下载模型和工具。

如果你的硬件不满足要求,可以考虑使用 Google Colab 等云端 GPU 服务作为补充,但需要注意数据上传下载和运行时长的限制。

2. 环境准备:搭建 Stable Diffusion 基础创作平台

我们将以 Stable Diffusion WebUI(Automatic1111 或 Forge)作为视觉内容生成的核心操作界面。它是一个集成了模型管理、文生图、图生图、插件系统的一体化平台。

2.1 安装 Python 与 Git

这是运行大多数 AI 工具的前提。

  1. 安装 Python :访问 Python 官网,下载 3.10.6 或 3.10.x 版本的安装程序。这是目前与 Stable Diffusion 相关工具兼容性最好的版本。
    • 安装时,务必勾选 “Add python.exe to PATH” 。
  2. 安装 Git :访问 Git 官网,下载并安装。安装过程中大部分选项保持默认即可。

安装完成后,打开命令提示符(CMD)或 PowerShell,分别输入以下命令验证:

python --version
git --version

应能正确显示版本号。

2.2 部署 Stable Diffusion WebUI

我们使用一键安装脚本,这是最稳妥的方式。

  1. 在你想安装的磁盘(如 D:\ )下,创建一个新文件夹,例如 AI_Video 。
  2. 进入该文件夹,在地址栏输入 cmd 并按回车,在此路径下打开命令提示符。
  3. 执行以下命令克隆 WebUI 仓库:
    git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
    
  4. 进入克隆的目录:
    cd stable-diffusion-webui
    
  5. 运行启动脚本:
    • Windows : 双击目录下的 webui-user.bat 文件。
    • Linux/macOS : 在终端中运行 ./webui.sh 。

脚本会自动安装所需依赖。 首次运行会下载一个较大的基础模型(如 sd_xl_base_1.0.safetensors ),耗时较长,请保持网络通畅 。完成后,命令行会显示一个本地 URL(通常是 http://127.0.0.1:7860 ),在浏览器中打开它,即可看到 WebUI 界面。

2.3 获取基础模型与 LoRA

空白的 WebUI 没有“画力”,需要下载模型。

  1. 下载基础大模型 :访问 CivitAI 或 Hugging Face 等模型社区。对于真人风格,推荐下载 ChilloutMix 、 RealisticVision 或 SDXL 系列的模型。将下载的 .safetensors 文件放入 stable-diffusion-webui/models/Stable-diffusion/ 目录下。
  2. 下载 LoRA 模型 :LoRA 是小模型,用于定义特定角色、风格或服饰。在 CivitAI 上搜索你想要的角色类型(如“Korean Doll”、“Chinese Model”)。将下载的 .safetensors 文件放入 stable-diffusion-webui/models/Lora/ 目录下。
  3. 重启 WebUI :在 WebUI 界面顶部,你可以通过下拉菜单切换使用的大模型和 LoRA。

2.4 安装关键插件:ControlNet

ControlNet 是控制图像构图、姿势、景深的关键插件,对于保持角色一致性和场景连贯性至关重要。

  1. 在 WebUI 中,进入 Extensions 选项卡。
  2. 选择 Install from URL 。
  3. 在 URL 输入框中填入 ControlNet 插件的仓库地址: https://github.com/Mikubill/sd-webui-controlnet.git
  4. 点击 Install 。安装完成后,重启 WebUI。
  5. 重启后,进入 Settings -> ControlNet ,点击 Download all preprocessors 下载预处理模型。同时,你需要手动下载 ControlNet 的模型文件(如 control_v11p_sd15_openpose.pth ),放入 stable-diffusion-webui/extensions/sd-webui-controlnet/models/ 目录。

至此,你的静态图像生成平台已经就绪。

3. 实战:生成你的第一个一致性角色与场景

现在,我们将利用搭建好的平台,生成一个可用于后续视频制作的、具有一致性的角色和多角度场景。

3.1 生成“角色定妆照”

目标是生成一张清晰、高质量的角色正面肖像,作为该角色的“种子”。

  1. 选择模型 :在 WebUI 顶部,选择你下载的真人风格大模型(如 ChilloutMix )。
  2. 编写提示词 :
    • 正向提示词 : (masterpiece, best quality, ultra-detailed), 1girl, beautiful Korean actress, long black hair, elegant, wearing a white sweater, soft studio lighting, looking at viewer, portrait
    • 负向提示词 : (worst quality, low quality:1.4), deformed, blurry, bad anatomy, extra limbs
  3. 设置参数 :
    • Sampling method : Euler a 或 DPM++ 2M Karras
    • Steps : 20-30
    • Width/Height : 512x768 或 768x512(根据构图)
    • CFG Scale : 7
    • Seed : -1 (随机)
  4. 点击 Generate 。多生成几次,直到得到一张满意的图片。 记录下这张图片的种子数(Seed) 。

3.2 利用 LoRA 和 Seed 固定角色特征

仅仅靠提示词,很难在后续生成中保持角色一致。我们需要结合 Seed 和 LoRA。

  1. 固定 Seed :将上一步得到满意图片的 Seed 值填入输入框。
  2. 加载角色 LoRA :在提示词中,加入 LoRA 触发词。格式为 <lora:模型文件名:权重> 。例如,你下载了一个名为 koreanDollLikeness_v10.safetensors 的 LoRA,可以这样写:
    <lora:koreanDollLikeness_v10:0.8>, (masterpiece, best quality)... [其他描述同前]
    
    权重通常从 0.5-1.0 尝试,太高可能导致过拟合。
  3. 再次生成。你会发现生成的角色面部特征更加稳定和符合预期。这张图就是你的“角色基准图”。保存它。

3.3 使用 ControlNet 控制姿势与构图生成多镜头

现在,我们要让这个角色做出不同姿势,模拟不同镜头。

  1. 准备姿势参考图 :你可以从网上找一张人物姿势图,或者使用 Blender 等工具摆一个基础姿势截图。
  2. 启用 ControlNet :
    • 在 WebUI 中展开 ControlNet 折叠面板。
    • 将你的姿势参考图拖入 ControlNet 的图像区域。
    • 勾选 Enable 。
    • Preprocessor 选择 openpose (提取骨骼姿势)。
    • Model 选择 control_v11p_sd15_openpose 。
    • Control Weight 可以设置为 1.0 左右。
  3. 生成 :保持大模型、LoRA、Seed 不变,点击生成。WebUI 会依据姿势参考图的骨架,让你的角色摆出相同姿势,但保留其面部特征和服装。
  4. 更换场景 :要生成不同背景,只需修改正向提示词中的场景描述部分,例如将 soft studio lighting 改为 in a cozy coffee shop, window light 。 保持 Seed、LoRA 和 ControlNet 姿势不变 ,即可生成同一角色在同一姿势下处于不同场景的图片。

通过以上步骤,你就能得到一组角色一致、姿势可控、场景多样的图片序列,这是制作短剧的原始素材。

4. 让静态图像“动”起来:视频生成与口型同步

这是 AI 短剧制作中最具挑战性的一环。目前主要有两种路径: 文/图生视频 和 语音驱动口型 。

4.1 方案一:使用 Stable Video Diffusion 生成动态镜头

SVD 可以将单张图片扩展成一段短视频(通常几秒钟)。

  1. 环境部署 :SVD 通常需要独立的环境。推荐使用 ComfyUI (另一个流行的 SD 节点式界面)来运行,因为它对视频模型的工作流支持更好。安装 ComfyUI 的过程与 WebUI 类似(通过 Git 克隆)。
  2. 下载 SVD 模型 :从 Hugging Face 下载 Stable Video Diffusion 模型文件(如 svd_xt.safetensors ),放入 ComfyUI 的对应模型目录。
  3. 加载工作流 :在 ComfyUI 中,你可以导入社区分享的 SVD 专用工作流 JSON 文件。将你的角色静态图作为输入,设置视频帧数(如 14 帧)、步数等参数。
  4. 生成与拼接 :SVD 生成的视频很短。你需要生成多个片段(如:角色转头、微笑、走路),然后在后期软件中将这些片段与静态场景图拼接起来,模拟镜头运动。

注意 :SVD 及其同类模型对显存要求很高(通常需要 12GB+),且生成结果可能存在闪烁、变形。它更适合生成 场景转换 (如云雾流动、光线变化)或 简单的物体运动 ,对于复杂的人物肢体动作,目前效果仍不理想。

4.2 方案二:使用 SadTalker 实现语音驱动口型同步

如果你的短剧需要角色说话,SadTalker 是一个开源且效果不错的方案,它能让人物图片根据音频节奏进行口型变化和轻微头部运动。

  1. 安装 :在 Stable Diffusion WebUI 的 Extensions -> Available 中,加载列表,找到 SadTalker 安装并重启。或者,你也可以使用独立的 SadTalker 仓库。
  2. 准备素材 :
    • 角色图片 :使用 3.2 中生成的清晰、正面、肩部以上的角色基准图。
    • 音频文件 :使用 ElevenLabs 或 Edge TTS 生成的角色对话语音(.wav 格式)。
  3. 配置与生成 :
    • 在 WebUI 中切换到 SadTalker 标签页。
    • 上传角色图片和音频文件。
    • 关键参数:
      • Pose Style : 选择头部运动幅度, 0 为轻微运动。
      • Size of image : 输出视频分辨率。
      • Preprocess : 选择 crop 以确保对齐面部。
    • 点击生成。它会输出一个角色口型与音频同步的短视频。
  4. 合成 :将 SadTalker 生成的“说话头”视频,在后期软件中与背景场景进行合成(例如,使用绿幕抠像或叠加模式)。

4.3 视频生成阶段的常见问题与排查

问题现象 可能原因 检查与解决方案
SVD 生成视频全黑或扭曲 显存不足;输入图片分辨率不匹配;模型未正确加载。 1. 尝试降低生成帧数和分辨率。2. 将输入图片裁剪/缩放到模型要求尺寸(如 576x1024)。3. 确认模型文件路径正确。
SadTalker 生成后口型不同步 音频采样率问题;面部检测失败。 1. 使用 Audacity 等工具将音频统一转换为 16000Hz 或 22050Hz 采样率。2. 尝试更换更清晰的正面角色图。3. 调整 Still Mode 参数。
生成视频闪烁严重 模型本身局限性;CFG Scale 过高;采样步数太少。 1. 这是当前技术的通病,可尝试使用 SVD 的 img2vid 模式而非 txt2vid 。2. 适当降低 CFG Scale。3. 增加采样步数(牺牲速度)。
运行时报 CUDA out of memory 显存耗尽。 1. 关闭其他占用 GPU 的程序。2. 降低批次大小(batch size)、分辨率或帧数。3. 使用 --medvram 或 --lowvram 参数启动 WebUI/ComfyUI。

现阶段实用建议 :对于短剧制作,更可行的策略是 “静态场景 + 动态口型” 结合 镜头剪辑 。即大部分画面使用高质量的静态图作为背景,仅在角色说话时使用 SadTalker 生成口型动画,并通过剪辑软件切换镜头(如正反打、特写)来营造动态感。这能最大程度保证画面质量。

5. 音频生成与后期合成

5.1 使用 ElevenLabs 生成高质量角色语音

  1. 注册与选择语音 :访问 ElevenLabs 官网,注册账户。在 Speech Synthesis 页面,可以从预置语音库中选择一个接近你角色声线的声音,或使用 Voice Lab 功能克隆一个自定义语音(需提供清晰的语音样本)。
  2. 生成语音 :在文本框中输入角色的台词,选择好语音模型和稳定性等参数,点击生成。你可以逐句生成,以便后期调整节奏。
  3. 下载 :生成满意后,下载 .wav 或 .mp3 文件。注意保持所有音频文件的采样率一致(如 22050Hz)。

5.2 使用 DaVinci Resolve 进行后期合成

DaVinci Resolve(达芬奇)的免费版功能已非常强大。

  1. 创建项目与导入素材 :新建项目,将生成的所有视频片段、静态图片、音频文件、背景音乐、音效导入媒体池。
  2. 剪辑时间线 :
    • 将静态场景图片拖到视频轨道上,设置合适的持续时间(例如 3-5 秒)。
    • 将 SadTalker 生成的说话视频拖到上层轨道,使用 Fusion 页面或 Color 页面的抠像工具,移除其绿色或黑色背景,使其与下层背景融合。
    • 将角色语音音频拖到音频轨道,与口型视频精确对齐。
  3. 添加转场与效果 :在镜头切换处添加简单的交叉溶解转场。可以添加微小的缩放、平移动画(关键帧)让静态图产生动感。
  4. 添加字幕 :在 Edit 页面使用文字工具添加字幕,并匹配语音时间。
  5. 调色与输出 :在 Color 页面进行简单的色彩校正,使所有镜头色调统一。最后在 Deliver 页面选择输出格式(如 H.264 MP4),设置好分辨率、码率,渲染输出最终成片。

6. 工程化最佳实践与排查清单

将 AI 短剧制作从一个“玩具”升级为一个可重复、可管理的“项目”,需要引入工程化思维。

6.1 素材与项目管理规范

  • 目录结构标准化 :建立清晰的文件夹结构,例如:
    My_Short_Drama/
    ├── 01_Script/
    ├── 02_Characters/
    │   ├── CharacterA/
    │   │   ├── base_portrait.png
    │   │   ├── lora_model.safetensors
    │   │   └── poses/
    ├── 03_Scenes/
    ├── 04_Audio/
    │   ├── dialogues/
    │   └── bgm_sfx/
    ├── 05_Generated_Videos/
    └── 06_Editing_Project/
    
  • 命名规范 :所有文件采用有意义的命名,如 CharA_pose_front_seed1234.png , Scene1_coffee_shop.png , Dialogue_CharA_Line01.wav 。
  • 参数记录 :使用文本文件或表格记录关键生成参数(模型、LoRA、Seed、提示词、ControlNet 参数)。这是复现和调试的黄金标准。

6.2 生成质量优化清单

在每次点击生成前,对照此清单检查,可避免大量无效工作:

  1. 提示词 :是否包含了质量标签(如 masterpiece, best quality )?是否描述了足够细节(光照、材质、视角)?负向提示词是否涵盖了常见瑕疵?
  2. 模型与权重 :是否选对了基础模型和 LoRA?LoRA 权重是否过高导致图像扭曲?
  3. ControlNet :预处理器和模型是否匹配(如 openpose 对应 openpose 模型)?控制权重是否合适?参考图清晰吗?
  4. 分辨率与尺寸 :生成分辨率是否是模型擅长的基础分辨率(如 512x512, 512x768, 768x512)?非标准比例可能导致奇怪构图。
  5. 种子与随机性 :需要一致性时是否固定了 Seed?需要变化时是否使用了 -1 ?

6.3 系统性排查路径

当最终输出视频效果不佳时,按以下层级排查:

  1. 层:原始素材质量
    • 检查点 :静态角色图是否高清、无畸形?背景图是否分辨率足够?
    • 行动 :回到 SD WebUI,优化单张图片生成质量。
  2. 层:动态生成过程
    • 检查点 :SVD/SadTalker 输入图片是否符合要求(尺寸、内容)?音频格式是否正确?
    • 行动 :查看生成日志,确认有无报错。尝试用更简单的输入(如纯色背景头像)测试工具本身是否正常。
  3. 层:后期合成
    • 检查点 :口型与音频是否帧对齐?抠像边缘是否干净?镜头节奏是否拖沓?
    • 行动 :在剪辑软件中逐帧检查对齐,调整抠像参数,精简镜头时长。
  4. 层:硬件与性能
    • 检查点 :是否因显存不足导致生成质量下降(如 SVD 生成短帧)?
    • 行动 :尝试生成更短、更小尺寸的视频,或升级硬件/使用云端 GPU。

AI 短剧制作是一个融合了创意、技术和耐心的工作流。当前技术仍在快速迭代,不存在一个按钮解决所有问题的“银弹”。最可靠的路径是深入理解每个环节的工具和原理,建立自己稳定可控的创作管线。从生成一张满意的角色图开始,到输出一个包含口型同步的 30 秒短片,完整走通这个流程,你将获得应对更复杂项目的最宝贵经验。接下来,可以探索更精细的表情控制、更复杂的多角色互动,以及如何将 AI 生成素材与传统 CG 或实拍素材结合,逐步提升作品的完整度和表现力。

Logo

火山引擎视频云技术社区,是面向 AI 音视频开发者的技术交流平台。这里汇聚源自抖音、豆包等亿级 DAU 产品的 RTC、直播、点播、AI 媒体处理、音视频互动技术,提供接入指南、最佳实践、性能调优、场景案例、Demo 代码、开源项目、白皮书和 API 文档。社区汇聚官方工程师与一线开发者,为 AI 视频通话、数字人、AI 视频处理等应用的开发与落地提供技术支持。

更多推荐