素材加工怎么做才不像搬运?我用 60 条废稿换来的三层加工法

关键词:素材加工,视频二创,混剪去重,FFmpeg批量处理,视频码率参数

摘要:从 60 条播放卡在 500 的废稿,到播放中位数 1.2 万。本文把我踩过的素材加工坑拆成像素层、时间层、语义层三道工序,附上具体的帧率、码率、LUFS 参数对比和能直接跑的 FFmpeg 批量脚本。

2023 年 9 月我起了个宠物号,想着用最省事的办法跑量:从 YouTube 扒 4K 猫狗素材,剪映专业版批量导,统一静音,套同一个字幕模板,再加 1.05 倍变速。一天出 8 条,60 条下来播放量稳在 200 到 500,稳得离谱。发到第 62 条,后台弹出一行字,大意是内容重复度高、不推荐。那天晚上我把这 60 条挨个看了一遍,发现一个问题:它们看起来都挺"干净",但没有一条是我做的。

图片

后来同一批素材我重做了一遍,播放中位数 1.2 万,最高一条 47 万。中间改的东西不算多,但方向全变了。

素材加工其实分三层,大部分人只做了最底下那层

我后来把这件事拆成三层:像素层、时间层、语义层。

像素层就是分辨率、码率、色彩、镜像、裁切。教程里 90% 的内容都在这一层,把 720P 拉伸到 1080P,加个锐化,镜像翻转,很多人以为这就叫去重。这一层有用,但门槛最低,平台大概三年前就吃不饱了。

时间层是帧率、变速、片段切分和成片时长。这层最容易被忽略。比如你下了 30fps 的素材,直接扔进 25fps 的时间线,软件会给你做帧混合或者干脆丢帧,导出的文件里会留下规律性的重复帧。肉眼看不出来,但机器一抓一个准。我现在的做法是全部统一到 25fps 输出,宁可先把 30fps 转成 25 再动手。

图片

语义层说白了就是——这条视频里有没有你。你的文案、你的口播、你自己拍的 3 秒空镜、你手写的一句字幕。这一层才是现在真正卡人的地方。我见过太多人把前两层做到极致,参数调得比我还细,结果照样限流,因为视频里从头到尾没有一个属于他的决定。

我第一版和现在这一版的参数对比

项目 我的第一版 现在这一版 为什么改
分辨率 1080×1920 1080×1920 没动,竖屏平台就吃这个
帧率 30fps 和 25fps 混着进 统一 25fps 输出 混帧率会产生规律重复帧
视频码率 剪映导出默认,约 4Mbps CRF 18,上限 12Mbps 平台会二次压缩,源文件得留余量
音频 直接静音 -14 LUFS 归一化 + 保留 10% 环境音 纯静音本身就是个搬运特征
平均片段时长 2.3 秒 1.1 秒,最短 0.4 秒 节奏提上来,同时打乱原片结构
转场 无 每 3-4 个片段插一次叠化,15 帧 有意留下剪辑痕迹
前 3 秒 素材原片头 我自己拍的镜头 语义层的锚点

这张表里我最想说的是音频那一行。当时我以为静音最保险,反正没人听。后来才知道,一条视频如果没有环境音、没有底噪、没有呼吸声,它在音频轨上是一条直线,这比什么参数都显眼。现在我会保留 10% 左右的原声,混在 BGM 底下,音量压到 -28dB 上下,听不清但在。

图片

FFmpeg 批量:我实际在跑的脚本

先说效率。这条命令我在 M1 MacBook Air 上跑,一条 1 分钟左右的 1080P 视频大概 22 秒。60 条,42 分钟跑完,中间我该干嘛干嘛。同样 60 条如果在剪映里手工导,一条少说 15 分钟,那是 15 个小时。

ffmpeg -i in.mp4 -vf "scale=1080:1920:force_original_aspect_ratio=increase,crop=1080:1920,fps=25,setsar=1" \
  -c:v libx264 -preset slow -crf 18 -maxrate 12M -bufsize 24M -pix_fmt yuv420p \
  -c:a aac -b:a 192k -ar 48000 -af "loudnorm=I=-14:TP=-1.5:LRA=11" \
  -movflags +faststart out.mp4

几个参数解释一下。force_original_aspect_ratio=increase 配合 crop 是先把画面铺满再裁中间,避免上下加黑边。setsar=1 是防止某些设备把方形像素识别错,导出后画面比例会飘。faststart 把 moov 原子挪到文件头,上传平台时首帧加载快一点,这个在抖音这种信息流里还是有差别的。loudnorm=I=-14 是流媒体通用的响度标准,我调过 -16,听着发闷,最后还是回到 -14。

批量跑就套个循环,Windows 上装个 WSL 或者用 PowerShell 都行:

图片

mkdir -p out
for f in raw/*.mp4; do
  name=$(basename "$f")
  ffmpeg -i "$f" \
    -vf "scale=1080:1920:force_original_aspect_ratio=increase,crop=1080:1920,fps=25,setsar=1" \
    -c:v libx264 -preset slow -crf 18 -maxrate 12M -bufsize 24M -pix_fmt yuv420p \
    -c:a aac -b:a 192k -ar 48000 -af "loudnorm=I=-14:TP=-1.5:LRA=11" \
    -movflags +faststart "out/$name"
done

我第一次跑的时候忘了 mkdir out,报了一屏错,排查了半小时才发现是目录不存在。这种低级错误在教程里从来不会写,但真实干活就是会撞上。

工具怎么选:剪映、达芬奇、Premiere、FFmpeg

剪映专业版我一直在用,自动字幕是我试过的里面最准的,中文识别比我手打还快。缺点也明显,导出参数只有几档能选,批量处理能力基本为零,多条视频套同一套模板还是得手动来。我开了年费会员,一百多,主要是为了字体和音效库。

达芬奇免费版做 1080P 完全够,调色是这几家里最狠的,节点式工作流一旦上手就回不去。缺点挑显卡,我那台 8G 内存的老笔记本一打开风扇就起飞。批量导出在 Deliver 页面能做,但配置一次要点七八个地方,我至今记不住。

图片

Premiere 生态最全,插件最多。订阅一个月两百出头,我后来退了,因为我的活儿用不上它的协作功能。

FFmpeg 没有任何界面,一条命令干一件事,但它是唯一能把 60 条视频当成 60 条流水线跑的。我现在的工作流是这样:FFmpeg 负责批量粗加工(裁切、帧率、码率、音频归一化),达芬奇单独调几条重点视频的色,剪映负责最后字幕和那条我自己拍的镜头。

语义层我具体怎么做

第一条,前 3 秒必须是我自己拍的。我拍我家猫的爪子在键盘上踩,这条镜头前后用了两百多次,但每次角度、光线、猫的毛色反光都不一样。观众看不出来,机器比对的是画面指纹。

图片

第二条,文案必须是我写的,200 到 400 字,讲一个具体的问题。比如"猫为什么半夜跑酷",我得说出它白天睡了几个小时、我试过哪几种办法、哪个有用哪个没用。素材只用来做佐证,不是主角。

第三条,字幕不要用模板。我第一版 60 条用的是同一套字幕样式,字体、位置、描边全一样,这也是个特征。现在每条的字体大小和位置我都会挪一两格。

最后说个实话

现在我还是会被限流。上个月发了 30 条,限了 2 条,其中一条我自己回头看也觉得确实没什么信息量。但和当初 60 条全军覆没比,这个数字我能接受。

素材加工这件事,参数能帮你过机器那一关,但过不了人那一关的视频,最后数据还是会老老实实告诉你。我到现在也没搞明白平台具体怎么判的,只能说上面这些是我用废稿换来的、确实管用的一段路。

标签: