我做了个 AI 剪视频工具:视频是如何"剪"出来的?

上一篇结尾说过,AI 挑出精彩片段之后,还剩最后一刀:照着时间点把片段从视频里切出来。

我原以为这是最简单的一环——切视频嘛,哪个剪辑软件不会?真动手才发现,想让这一刀又快又准,我得先搞明白一个从没想过的问题:视频文件里到底装的是什么?

这一搞,就把视频存储的家底翻出来了。这篇讲讲我翻到了什么,以及这一刀最后是怎么落下的。

一、动刀之前,我先搞懂了视频文件里装的不是照片

我原本的设想很朴素:视频就是一长串照片,每秒 30 张,我从中间抽走几张,就算剪完了。

一查才发现账根本算不通。一部 90 分钟的电影,大约 16 万张画面,按一张一兆算就是 160 个 G——没有哪个视频文件是这么存的。

真实的存法,利用了视频的一个特点:相邻画面绝大部分一模一样。拿我的典型素材录课视频来说,老师站在白板前讲一分钟,白板、桌椅、背景纹丝不动,真正在变的只有老师的嘴和手。

所以文件里是这么记的:隔一小段(通常几秒)存一张完整的画面,这张完整的叫关键帧;到下一个关键帧之间,只存"和前面比,哪些块变了、变成了什么样"——我管它叫变化记录。白板那一块,一秒几十帧全程只写四个字:没变,没变。

这就是为什么一部电影几个 G 就能装下。但我紧接着意识到一个麻烦:每一帧要显示出来,都得从前面最近的关键帧开始,把变化记录一笔笔叠加上去才能算出来。你在播放器里拖到 1 分 23 秒,播放器其实是先退回前一个关键帧,再悄悄快进到那一帧。

也就是说,从两个关键帧中间切一刀,切出来的开头全是变化记录——没有底图,什么都算不出来。我的刀,不能随便落。

二、第一条路:原样搬运

搞懂材料之后,我去看了视频处理的行业标准工具 ffmpeg 给我准备的两条路。

第一条叫流复制:不解码、不重算,把文件里现成的数据段原封不动拷出来。好比撕书页——你要第 50 页,我直接把那一页撕下来给你。

快是真快。它的时间基本只花在硬盘读写上,切一段几分钟的片段,毫秒级完成;画质还零损失,因为数据一个比特都没动过。

但规矩也硬:搬运的最小单位是"从关键帧开始的一整段",刀口只能落在关键帧附近。而且既然是原样照搬,画面上什么都改不了——想加个水印都办不到。

三、第二条路:重新画一遍

第二条路叫渲染,也就是重新编码:把每一帧都解码成完整画面,改完之后,再一帧一帧重新压缩成一个新视频。好比重抄——你要第 50 页,我摊开书一笔一画抄给你。

每一帧都要重新算一遍,这条路自然慢,还特别吃 CPU 和显卡。你用剪映导出大文件时听到风扇起飞,就是它在干这个。

但既然每一帧都是新画的完整画面,限制就全解除了:刀口想落在哪一帧就落在哪一帧,精确到帧。而且反正都要重画,顺手干点别的也不费事——把字幕烧进画面、加滤镜、横屏转竖屏,全是这条路上的活。这也是为什么你在剪辑软件里只要加了字幕,导出就一定转圈:它必须走这条路。

四、我给工具定的规矩:两条路自动选

两条路没有高下,各有各的地盘。所以我在工具里定的规矩是自动选路,分三档:

纯切片、没任何加工——走流复制,毫秒级出片。只动了声音,比如调了音量——画面的数据块照搬,只把音频单独渲染。加了字幕、滤镜、竖屏这些改动画面的东西——老老实实整段渲染。

原则就一句:能不渲染就不渲染,必须渲染才渲染。所以你用的时候有时秒出、有时要等,不是工具抽风,是它在替你省算力——你盯着进度条的时候,它是真的在干活。

五、一个坑:全世界都守规矩,就它不

规矩定好之后,还有个实际问题等着我。流复制只能在关键帧下刀,可我的切点是 AI 按语义定的,可能是任意一秒,怎么办?

ffmpeg 有个聪明办法:实际从切点前面那个关键帧开始搬,保证数据完整;多搬进来的那一小段,在文件里写个标记,注明"开头这 2.4 秒是多余的,播放时请跳过"。

这个标记,系统播放器认,剪映认,抖音的转码也认——全世界都守规矩,除了浏览器内嵌的播放器。它对视频轨和音频轨的"跳过"处理不一致:画面跳过了 2.4 秒,声音没有,结果嘴型和声音差了 2.4 秒,跟译制片似的。

我排查了半天,切法改了好几轮,最后发现刀没问题,是看刀的人眼神不好。解法还是分场景:交给外部世界的导出文件,保持精确起点,反正大家都认那个标记;要给自家播放器直接播的,就把起点挪到前面最近的关键帧,代价是片段开头可能多出零点几秒。这点取舍,我在开源版的 README 里明写了。

六、最后

走到这一步,KnowClip 的链路就齐了:耳朵听懂内容,脑子挑出精彩片段,最后一刀毫秒级落下。

做这一环我有个越来越强的体会:AI 工具的快和省,一半靠模型,一半靠知道哪些算力根本不用花。上一篇是"不让 AI 看视频、让它读稿子",这一篇是"能不渲染就不渲染"——道理是同一个:把没用的活删掉。

这套导出实现,我开源到了 GitHub,供大家学习参考。

把这套流程交给 AI

KnowClip 智能剪辑,macOS / Windows 免费下载。视频本地剪辑导出不上传,只有云端语音识别按用量计费,无订阅、无水印。

免费下载 KnowClip 了解KnowClip 官网 →