返回博客

2026.10.30

195 次生成剪出 46 个镜头,我算出 AI 视频「四抽一」:把成片逐帧对回原始生成之后,为什么只剩 1.45 抽一?

一家 AI 视频公司公开了一部短片的全部提示词和生成记录。我八月按「生成次数 ÷ 镜头数」算出四抽一,这周把成片 1231 帧逐帧对回 107 条原始生成,同一批数据变成 1.45 抽一,而真正贵的是秒数:每 1 秒成片背后约 5.6 秒素材。

ai-videomethodologybenchmark

八月我在笔记里写过一句很顺口的话:官方团队用自家模型做一部 5 分钟短片,195 次生成只剪出 46 个镜头,命中率 23%,平均四抽一。

这周我把成片按每秒 4 帧切开,一共 1231 帧,逐帧去那 195 条生成里找出处。同一批公开数据,算出来是 1.45 抽一。

差了快三倍。两个错都是我自己的,一个出在分母,一个出在分子。所以这篇想回答一个很具体的问题:别人(或者你自己)甩出一个「AI 视频 N 抽一」的数字,怎么判断它靠不靠谱?

想直接拿判据的看第 4 章和第 7 章;想看我错在哪,第 2、3 章。

1. 素材:一部短片,连同它的全部生成记录

八月有一家 AI 视频公司发了一部 5 分 8 秒的科幻短片,说所有提示词和素材都公开。网页上其实点不开,但项目页的前端会去请求一个不用登录的 JSON 接口,那里面是全量记录:每一次生成的提示词、参考图、时长、分辨率、模型名、创建时间,还有输出视频的直链。

我当时拉下来一共 195 条「生成任务」(平台叫 job set,一次提交算一条)。提示词中位数 6914 个字符,最长的两万多字,很卷。

这周我把所有输出视频也下了下来,197 个文件,2.4 GB,一个坏的都没有。成片本身也下了 1080p 版本,307.8 秒。

手上东西齐了:成品,加上理论上做出这个成品的全部原料。

2. 第一个错:分母里混进了成片发布之后才生成的东西

195 条记录分在两个文件夹里,105 条在主文件夹,90 条在一个叫「regenerations」的子文件夹。八月我直接把两边加起来当分母。

这周看了一眼时间戳,当场就不对了:

条数 创建时间(UTC) 模型 分辨率
主文件夹 105 条,共 107 次输出 6 月 26 日 – 6 月 29 日 2.0 版 4K 98 条,1080p 7 条
regenerations 90 条 8 月 11 日 16:16 – 16:50 新版 全部 720p

成片的发布记录创建于 8 月 11 日 12:00 UTC,官方推文是同一天 13:50(推特的帖子 ID 里编码了时间,右移 22 位就能算出来)。

那 90 条 regenerations 是成片发出去四个小时之后,34 分钟里批量跑完的。90 条里有 89 条提示词和主文件夹里的某一条逐字相同,元数据里有个字段名直接叫「新版模型对比」。说白了,这是拿旧提示词在新模型上重跑一遍做对照,跟做片子没关系。

时间戳是直接证据:发布之后才生成的东西,不可能出现在发布的片子里。我还是拿帧匹配验了一遍(方法在第 4 章),相似度阈值 0.85 下,成片里能对上的 regenerations 片段是 0 个。

判据一:算「用了多少素材」,先把创建时间晚于成品发布时间的记录全部剔掉。 这一步没有任何技术含量,我就是没做。

剔完之后,分母从 195 变成 107。

3. 第二个错:分子数的是镜头,分母数的是生成

八月那个「46 个镜头」,是我拿镜头检测工具在成片上切出来的。问题是一次生成不等于一个镜头。

我在 105 条主提示词里搜 HARD CUT:26 条里有,加起来写了 95 处。比如这种:

1.6s HARD CUT 1.6s–3.4s ... 3.4s HARD CUT 3.4s–5.8s

也就是在一条 10 秒的生成里,用文字排好四五个镜头,让模型一口气画出来。我抽了 6 条这样的输出去检测(场景阈值 0.3):提示词里写了 3 到 7 处硬切的,画面里实际检测到 2 到 4 处;另外抽了 5 条写明「单镜头不许切」的,检测到 0 处。模型基本是听话的。

所以成片里的一个镜头,可能只是某条生成里的一小段;同一条生成也可能贡献好几个镜头。拿镜头数除生成数,单位根本对不上。

更糟的是「46」这个数本身也不稳。我用 ffmpeg 的场景检测在成片上换几个阈值重跑(间隔不到 0.5 秒的切点合并成一个):

场景变化阈值 0.25 0.3 0.4 0.5
切出的镜头数 115 93 45 23
镜头中位时长(秒) 2.0 2.33 4.08 6.71

同一部片子,镜头数可以是 23,也可以是 115,看你把旋钮拧到哪。八月我拿到的 46 恰好落在 0.4 附近,然后我就把它当事实写下来了。当时那句「中位镜头 3.9 秒,97% 不超过 5.2 秒」我这次也没能复现出来,具体用的哪个工具、什么参数,笔记里没记。这条只能作废。

判据二:看到「N 个镜头」,先问是什么工具、什么阈值切的。 不报阈值的镜头数,可以差五倍。

4. 换个尺子:每一帧直接去找它的出处

既然数镜头不靠谱,那就别数了,直接问每一帧画面是从哪条生成里来的。

做法很土:

  1. 成片和 197 个输出视频都按每秒 4 帧抽帧,缩成 64×27 的灰度小图,减去均值再归一化
  2. 成片的每一帧和所有输出帧算相关系数,取最高的那个
  3. 相关系数超过 0.85,就认为这一帧出自那条生成
  4. 同一条生成连续命中至少 2 帧(0.5 秒),才算这条生成「上了成片」

成片 1231 帧,第 1 步到第 4 步跑完,787 帧能对上主文件夹里的某条生成,拼成 95 段。107 次输出里,74 次在成片里出现过。

于是:

抽卡比(下限)= 成品发布前的生成次数 ÷ 成品里实际出现过的生成次数
             = 107 ÷ 74 ≈ 1.45

我八月的算法 = 全部记录数 ÷ 镜头检测数 = 195 ÷ 46 ≈ 4.24

两个错可以分开看。只修分母,195 ÷ 46 变成 107 ÷ 46 ≈ 2.33;再修分子,才到 107 ÷ 74 ≈ 1.45。分母那 88 条的差是这样来的:踢掉 90 条 regenerations,主文件夹的 105 条记录实际有 107 次输出。

阈值 0.85 是我拍的,所以我把它也拧了一遍(这里先不加 0.5 秒的连续性过滤):

相关系数阈值 0.8 0.85 0.9 0.95
能对上的成片帧占比 69.9% 63.9% 51.3% 29.2%
出现过的不同生成数 95(含 2 条 regenerations) 88 70 44

0.8 的时候开始混进 regenerations,而它们按时间根本不可能在片子里,说明 0.8 已经在放假阳性进来了。0.95 又太严,调色和裁切稍微动一下就掉。0.85 是我能找到的、既不放进不可能的东西、又不丢太多的点。就算拧到最严的 0.95,抽卡比也是 107 ÷ 44 ≈ 2.4,还是到不了四。

5. 真正贵的是秒数

抽卡比 1.45 听起来像「AI 视频很省」。别急,看秒数。

74 条上了成片的生成,每条平均只有一小部分画面被用上:每条用掉的比例中位数是 19.4%。上了成片的生成里,四分之一只被用掉不到 8.8%。

秒数利用率 = 成片里能追溯到生成的秒数 ÷ 发布前生成的总秒数
          = 188.5 ÷ 1048 ≈ 18%

翻过来说,每 1 秒成片背后大约是 5.6 秒的素材。成片里能溯源的片段,中位时长只有 1.5 秒,94.7% 不超过 5 秒,最长的一段 8 秒。

这一节反过来解释了为什么抽卡比这么低:他们几乎每条都要,但每条只要最好的那一两秒。提示词里那些逐秒写好的动作时间轴,大概就是为了让「最好的那一两秒」落在可预期的位置上。

如果你在给一个 AI 短片做预算,按「次数」算会严重低估,按「秒数」算才对得上账:平台大多按生成秒数计费,你要的成片时长乘上 5 到 6,才是你要买的秒数。这个倍数是从这一部片子来的,换个类型、换个团队肯定会变,但量级比「四抽一」有用得多。

6. 这套方法漏了什么

这几处补上之前,上面的数字只能当下限看:

  • 36% 的成片帧找不到出处。 1231 帧里 444 帧对不上。最长的两段空白都在第 192 到 225 秒之间,合计 28 秒。我试了中心裁切 70% 和水平翻转两种补救,只多找回 31 帧和 22 帧,说明大部分不是简单的二次构图。可能是重度后期,也可能是不在这个公开文件夹里的生成。
  • 公开的文件夹叫「snapshot」。 名字暗示它是整理过的快照,失败的生成可能早就删了。所以 107 是发布前生成次数的下限,1.45 也是抽卡比的下限,真实值只会更高。我没法从公开数据里知道高多少。
  • 相关系数是很粗的尺子。 64×27 的灰度图分不清两个构图相似的镜头。同一个提示词跑多次的那几组(93 个不同提示词对应 107 次输出),我分不清成片用的是哪一次。
  • 每秒 4 帧会漏掉短于半秒的闪切。 我的 0.5 秒连续性门槛也会把它们过滤掉。
  • 八月那组镜头统计没留工具和参数。 3.9 秒、97% 这两个数我复现不了,已经作废。

7. 下次看到「AI 视频 N 抽一」,按这个顺序问

  1. 分母里的每一条,创建时间都早于成品发布吗? 不早于的全部剔掉。事后的对照重跑、补拍、宣传素材,常常和正片放在一起。
  2. 分子数的是镜头还是生成? 提示词里写多镜头的话,一次生成能产出好几个镜头,两边单位要对齐。
  3. 镜头数是什么工具、什么阈值切的? 不报阈值的镜头数,同一部片子能在 23 到 115 之间随便取。
  4. 有原始输出的话,直接逐帧对回出处。 缩成小灰度图算相关系数就够用;阈值拧一圈,看在哪开始混进时间上不可能的素材。
  5. 最后换算成秒数。 成片秒数 ÷ 生成秒数,才是你买单时真正面对的比例。这部片子是 18%。

八月那句「四抽一」我写得很顺手。推翻它的第一步只是看一眼时间戳,我拖了两个半月。