恒定帧率与可变帧率,以及剪辑软件为何频频对手机拍摄的 VFR 素材发出警告
更新于
帧率是视频中每秒的画面数量,常见的值有 24、25、30 或 60。在恒定帧率(CFR)下,每一帧持续的时间完全相同。在可变帧率(VFR)下,帧与帧之间的间隔会在录制过程中发生变化。
大多数观众从未注意到其中的差别,因为视频播放器只是按时间戳显示每一帧。视频剪辑软件就是另一回事了。如果你曾经导入手机拍摄的素材,然后看到音频慢慢变得不同步,或者收到关于可变帧率的警告,本指南会解释其中的原因以及解决方法。
为什么手机和录屏工具采用可变帧率
手机相机必须依靠一块用电池供电的小芯片,实时捕捉、处理和编码每一帧。在光线较暗时,它可能会延长曝光时间,留给每一帧的时间就更少了;在负载很重时,它可能会偶尔丢掉一帧。手机不会为了保持完美的节奏而凭空造出帧来,而是按真实的时间戳记录每一帧。结果就是名义上为 30 fps,实际却在变化,比如在 28 到 30 之间波动。
录屏工具、游戏录制和视频通话录制则是有意这样做:屏幕上什么都没变时,存储完全相同的帧毫无意义,所以它们会少录一些帧。这样可以节省空间和处理开销,这也正是 VFR 在人们拿去剪辑的这类素材中如此常见的原因。
为什么剪辑软件难以处理 VFR
剪辑软件是围绕一条划分为等长帧格的时间线构建的。当片段的帧不是以均匀的速率到来时,剪辑软件就必须决定如何把它们对应到这张网格上。有些程序会根据平均值假定一个固定帧率,然后拉伸或压缩片段,这就是为什么以自身采样率连续录制的音频会逐渐失去同步,而且往往要到长录像播放了好几分钟后才变得明显。
其他症状还包括:时间线中播放卡顿、某些帧出现两次或被跳过、片段时长与原始文件略有出入,以及剪切点落在离你所选位置一帧之外的地方。例如,Adobe Premiere Pro 会检测到 VFR 素材,并提供一个保持音频同步的设置,这在很多情况下有帮助,但并不总能产生流畅的运动画面。在各种剪辑软件中,最可靠的解决方法都是在导入前把片段转换为恒定帧率。
如何判断视频是否为 VFR
免费的 MediaInfo 应用会为每条视频轨显示“帧率模式”(Frame rate mode)字段;对于 VFR 文件,该字段显示为“可变”(Variable),并且通常会列出最低和最高帧率。有些剪辑软件会在导入时显示 VFR 警告或标记。如果这两者你都没有,那么在得到证实之前,可以先假定手机录像、录屏和游戏片段都是 VFR。
将 VFR 转换为恒定帧率
转换为 CFR 意味着以固定帧率重新编码视频。源视频中出现间隔的地方,编码器会重复上一帧;帧与帧之间的间隔比目标帧率所允许的更密集时,编码器会丢掉一帧。由于每一帧都按其真实的时间戳放置,音频会保持同步,时长也保持不变。
在 MediaConverter.io 上,视频转换器和视频压缩器通常会输出恒定帧率的视频。当你的浏览器能够解码该片段,且输出格式为 MP4、MOV、MKV 或 WebM 时(典型的手机素材都属于这种情况),它们会根据源视频的平均帧率设定一个固定帧率,并向上取整为整数(29.97 fps 变为 30),然后把每一帧都放到这张网格上。这些工具没有单独的帧率设置。其他输出格式,或浏览器无法解码的文件,则会改用后备编码器:压缩器的后备编码器仍会强制使用恒定帧率,但最高为 30 fps;转换器的后备编码器则可能原样复制原始视频流,包括其 VFR 时间信息。视频编辑器则让你直接选择导出帧率,范围为 20 至 60 fps。
选择帧率
尽可能保持素材拍摄时的帧率。把 30 fps 转换为 24 fps,或把 60 fps 转换为 25 fps,会迫使编码器不均匀地丢帧,可能让运动画面看起来一顿一顿的。如果你在一个项目中混用多个片段,请把项目帧率设为大部分素材所用的帧率,其余的交给剪辑软件转换。
对于网络视频,30 fps 是稳妥的默认值;游戏画面、体育运动和快速的镜头运动则值得保留 60 fps。电影风格的 24 fps 只有在素材本身就是这样拍摄时才有意义。
从源头避免 VFR
一些手机相机应用和大多数专业相机会以恒定帧率录制,还有一些录屏工具在设置中提供了恒定帧率选项。良好的光线也有助于手机保持稳定的帧率。但对于你已经拍好的素材,在剪辑前快速转换为 CFR 通常是最省事的办法。
本指南使用的工具
常见问题
01
02
03