我可以从带时间戳的图像创建 VFR 视频吗?

Can I create a VFR video from timestamped images?

首先,我对从图像制作视频的经验几乎为零。

我有一组 BMP 时间戳图像,我想从中生成视频。 由于时间戳不是等距的,我不能简单地使用从图像创建恒定帧速率视频的软件。

一个可能的解决方案是在固定的时间间隔创建人工图像,但如果我无法制作 VFR 视频,我宁愿将其作为最后的手段。

关于如何实现我想要的有什么建议吗?

看看这个link。 http://avisynth.nl/index.php/VFR#encoding_to_vfr_.28mkv.29

它现在可能有点过时了,因为您现在正在执行从 mkvtoolnix(而不是 mkvmerge)导入时间码格式文件的过程,但它应该允许您这样做。

您可以结合使用两种工具来执行此操作:ffmpeg 和 mp4fpsmod

第一步是使用ffmpeg生成恒定帧率文件

ffmpeg -i images%d.bmp -pix_fmt yuv420p ffmpeg-cfr.mp4

第 2 步 是生成如下所示的时间码文件,每一行包含以毫秒为单位的帧的相对时间戳。

# timecode format v2

0
33
88
100
120
160
200
230
330
347

第三步是使用mp4fpsmod生成VFR文件

mp4fpsmod -o vfr.mp4 -t timecodes.txt ffmpeg-cfr.mp4 

此文件在 ffplay 中可以正常播放,但在某些播放器中可能无法播放,在这种情况下 运行

步骤 4 使用 FFmpeg 从 VFR 生成 CFR MP4

ffmpeg -i vfr.mp4 final-cfr.mp4

这是一个CFR文件,但是时间关系是按照VFR保存的,尽管如果时间码间隔非常不规则,会有一些PTS调整。这可以通过指定高帧率 -r N

来解决