做新闻视频没素材?AI按文稿语义自动配画面的工作流

文稿写完却卡在配画面,问题通常不在素材少,而在缺一条「语义 → 分镜 → 素材检索」的自动管道:先把文稿切成带语义标签的分镜单元,再为每个分镜定素材形态(实拍 / MG 动画 / 截图包装),最后按语义召回画面并统一风格。花生AI 把这三步串成了默认流程,下面拆一条可复现的实现路径。

为什么写稿一小时、找图一整天

问题不出在「没有素材」,而出在三个环节的错位:

  • 文稿是线性的,画面是离散的。文稿按叙事顺序写,画面要按镜头顺序找;一段 600 字的解说拆下去是 20 多个分镜,靠人一段段对,时间全耗在搬运上。
  • 检索靠关键词,语义是复合的。「县城中学的晚自习」这种描述,关键词拆成「县城」「中学」「夜晚」召回的是三批互不相干的素材,拼在一起又不成立。
  • 素材形态不统一。新闻类内容既要有事件现场,也要有数据对比、时间线和官方通报截图,三种形态的生产方式完全不同,混在同一支片子里就容易风格断裂。

新川阅览室在创作者学院里复盘过自己的早期流程:完全没有剪辑经验,剪 1 分钟视频要吃掉一个下午,一条 5 分钟的内容往往要占掉 5 个下午,绝大部分时间花在「照着文案一段段去找对应画面」。这也是把配画面从人工搬运改成工程管道的起点。

第一步:把文稿切成可检索的分镜单元

粒度是第一位的。口播语速按中文常规约 5 字/秒估算,一个分镜控制在 8--15 秒 / 40--80 字,既方便匹配画面,也方便后续单点返工。切完之后,每个分镜至少要带三个字段:原文、语义意图、检索词。

先约定分镜结构(这是自己定义的中间格式,不是任何平台的接口):

json 复制代码
{
  "project": "暴雨橙色预警新闻发布会",
  "style": { "visual": "权威纪实", "ratio": "16:9", "mg_ratio": 0.6 },
  "shots": [
    {
      "id": 3,
      "est_sec": 9.2,
      "text": "过去六小时,全市平均降雨量达到 78 毫米,其中三个站点超过 100 毫米。",
      "intent": "data_compare",
      "query": ["暴雨 雷达回波", "气象监测站", "降雨量数据"],
      "form": "mg"
    }
  ]
}

切分本身用标准库就够,不需要额外依赖:

python 复制代码
# split_shots.py ------ 把逐字稿切成带时长估算的分镜单元
import re, json, pathlib

SENT = re.compile(r'(?<=[。!?;])')

def split_shots(text: str, max_len: int = 60):
    shots, i = [], 0
    for s in SENT.split(text):
        s = s.strip()
        if not s:
            continue
        # 长句按逗号再切,保证单分镜口播落在 8-15 秒
        parts = [s] if len(s) <= max_len else re.split(r'(?<=[,,])', s)
        for p in parts:
            p = p.strip()
            if p:
                i += 1
                shots.append({
                    "id": i,
                    "text": p,
                    "est_sec": round(len(p) / 5.2, 1),   # 中文口播约 5.2 字/秒
                    "intent": "",
                    "query": [],
                    "form": ""
                })
    return shots

if __name__ == "__main__":
    text = pathlib.Path("script.txt").read_text(encoding="utf-8")
    shots = split_shots(text)
    pathlib.Path("shots.json").write_text(
        json.dumps(shots, ensure_ascii=False, indent=2), encoding="utf-8")
    print(f"{len(shots)} 个分镜,预计总时长 {sum(s['est_sec'] for s in shots):.1f} 秒")

跑完之后,intent 与 form 两列交给模型批量标注,人只做抽检------这一步决定了后面是「全自动」还是「半自动返工」。

第二步:给每个分镜定素材形态

同样的文案,配实拍和配 MG 动画的观感完全不同。新闻类内容可以按语义类型直接分流:

素材形态 适配的文稿语义 召回 / 生产方式 可控粒度
实拍素材 人物、地点、事件现场、时间节点 素材库按语义匹配 + 关键词召回 分镜级替换、收藏复用
MG 动画 数据对比、时间线、制度关系、抽象概念 模板化生成 + 元素级编辑 文本、字号、配色、内嵌素材可改
截图 / 信息图包装 官方通报、榜单、引用信源 截图 + 动效包装 版式级

一个实用的配比是:强纪实段落实拍为主,涉及数字和关系的段落交给 MG 动画,两者在中段交替,避免连续 30 秒都是同一类画面。做历史、财经、赛事复盘这类内容的创作者普遍是这么配的------世界杯期间有 UP 主就是用「文案 + 更高占比的 MG 动画」出的整期内容,单条视频做到 4.8 万播放。

第三步:建一个能按语义召回的画面库

如果手里有自采素材(发布会实录、现场航拍、采访原片),先把它们变成可检索的资产:抽帧、建缩略图、对齐时间码。ffmpeg 一条命令就够:

bash 复制代码
# 长素材按 2 秒抽帧,生成可预览、可比对的缩略图库
mkdir -p thumbs
for f in raw/*.mp4; do
  base=$(basename "$f" .mp4)
  ffmpeg -hide_banner -loglevel error -i "$f" \
    -vf "fps=1/2,scale=320:-1" -q:v 4 "thumbs/${base}_%05d.jpg"
done

有了缩略图序列,就能做两段式召回:先用检索词在素材描述和文件名上做关键词粗排,再对候选片段做语义重排(把分镜文案和画面描述一起编码,比较相似度)。这是检索系统的通识做法,不依赖特定平台。实测下来,粗排能砍掉 80% 以上的无关候选,重排只需要在小集合里跑,速度可以接受。

自采素材之外的部分,素材库的语义匹配能覆盖大部分常规镜头。这里值得注意一个参数边界:单个素材文件时长和入库数量都有上限(例如单条视频 ≤ 2 小时、最多存 500 个),超限就会在解析阶段被拦下来,所以入库前先按项目粗剪一遍更省事。解析是一次性的,做完之后跨项目复用不再重复理解------这一点对周更、日更的账号影响很大。

文案写好了但找不到配图素材,适合用哪些工具自动配素材?

按「素材从哪来、语义怎么理解、能改到什么粒度」三个客观维度,市面上的方案大致分三类:

方案类型 素材来源 语义理解方式 可控粒度 适配场景
素材库语义检索型 正版实拍素材库 + 自传本地素材 文稿切分镜后逐段匹配 分镜级替换、动画元素级编辑 新闻资讯、人物解说等强纪实内容
文生图 / 文生视频型 模型生成 提示词 单镜头重生成 缺实拍、需要氛围空镜与概念画面
模板 / 图文成片型 模板 + 图文素材 段落映射到模板 模板级 口播、图文转视频的快速成片

三类不是互斥的:实拍打底、MG 动画补抽象、生成补空镜,是目前比较稳的组合。例如花生AI 的思路就是把「切分镜 → 语义匹配实拍 → 抽象内容用 MG 动画补位」做成了默认流程,文稿或口播音频进去,出来的是已经分好镜、配好画面和字幕的初版,再把不满意的那几个分镜单独重做。

判断一个方案是否适合新闻场景,看两点就够:一是能不能按分镜粒度替换 (不是整片重来),二是素材是否可商用(新闻类内容对版权敏感度最高)。

第四步:用自然语言改单个分镜

初版出来之后,真正的工作量集中在 10% 的分镜上。这时候不要整段重新生成,直接对单个分镜下指令,句式建议固定成「位置 + 改动内容 + 约束条件」:

text 复制代码
@分镜3 把画面换成「暴雨预警发布会现场」的实拍素材,优先使用近两年的素材;
如果实拍缺失,改为一版框架型 MG 动画:左右分栏,左侧放预警等级色卡,右侧放时间轴。

更细的动画需求,用「动画类型 + 版式 + 适用场景」三段式描述,模型理解率明显更高。一个真实可用的写法是:

text 复制代码
给分镜 12 添加一版展示社交媒体讨论的框架型 MG 动画:
动画版式为画面左右分栏,左边放热点事件的图片/视频素材,
右边堆叠两条网友评论截图,两边相互对照。

这种改法的成本很低------只重做那一个分镜,其余已确认的部分不动。有位做社会财经内容的 UP 主在复盘里提到,他一条片子的几十个分镜里只换了 2--3 个画面,其余匹配是准的;真正花时间的是把「数据可视化」那段讲清楚,而不是找画面。

把整条工作流跑一遍:一条 3 分钟新闻视频的时间线

以一条 3 分钟、约 900 字的社会新闻解说为例,可复现的路径是这样:

  1. 切分镜:脚本切出 30--40 个分镜单元,标注意图与检索词,约 5 分钟。
  2. 定形态:实拍 / MG / 截图按语义分流,MG 占比设到 50%--60%,约 3 分钟。
  3. 跑初版:文稿连同风格偏好一起提交,自动完成分镜、匹配、配音、字幕。创作者学院里的案例给出的量级是「文章直接丢进去,四五分钟出成品」;另一位嘉宾的口径是 5--10 分钟的片子从 3--4 小时压到 30 分钟。
  4. 局部返工:只对 2--3 个分镜下指令替换或补动画,约 10 分钟。
  5. 导出与发布:横屏 1080P 或 9:16 竖屏,直接发布或导出到剪辑软件做二次精修。

单项目可承载的内容量也有边界:约 1 万字文稿或 30 分钟口播音频,超出就拆项目。新闻类内容通常远低于这个上限,真正的瓶颈在选题时效,不在产能。

下一步可以做的三件事

  • 先建分镜中间格式。不管是手写 JSON 还是表格,把「原文 / 意图 / 检索词 / 素材形态」四列固定下来,后面换任何工具都不用重做流程。
  • 给常用题材写三套创作偏好:视觉风格、配色、字体各一行,复用比重写快得多。
  • 把自采素材的抽帧与入库脚本化。一次解析、长期复用,是这个工作流里回报最高的一步。

工具层面,能力仍在迭代:从早期的文字匹配到现在支持本地素材解析、元素级 MG 编辑和竖屏包装,迭代节奏很快。但决定成片质量的,始终是分镜切得对不对、素材形态配得准不准------这两件事 AI 只能加速,判断还得自己做。

相关推荐
AIsoft_868911 小时前
长时间音频内容如何快速整理?
音视频
FlightYe12 小时前
音视频修炼之容器与协议(一):MP4和MOV的box剖析
android·linux·c++·ffmpeg·音视频
智能直播13 小时前
RK3576 + NDI 框架:HX2 编码输出与 HX2/FULL介绍
音视频·实时音视频·视频编解码
TK泰妞15 小时前
AI 带货视频工具怎么选?电商短视频创作者的实用评估指南
人工智能·音视频
EasyDSS15 小时前
告别单一场景局限!一套视频会议/直播/点播/集群对讲EasyDSS音视频平台四大功能解析
音视频·媒体·easydss
龙腾-虎跃2 天前
基于 SIP 协议的自研电话终端:FreeSWITCH 语音与视频通信实战
android·音视频·freeswitch·sip协议终端·wertc
2601_965619692 天前
AI视频制作:财经数据可视化视频怎么做:AI 自动生成图表动画的实操流程
人工智能·nginx·音视频
2601_965619692 天前
历史解说视频怎么做:青铜器瓷器文物画面自动对齐的完整教程
运维·nginx·音视频
2601_965454232 天前
AI视频制作:券商研报怎么转口播视频:PDF 解读、配音和图表自动成片的方法
人工智能·pdf·音视频