以ffmpeg -i%04d.png模式重复图像

巴吉

我做20秒的视频在FPS = 25,500帧它们是0000.png0001.png,... 0499.png这有效:

ffmpeg -framerate 25 -i images/%04d.png out.mp4

但实际上,视频仅有一些更改,在我的情况下为0000、0122、0288、0312、0450帧。与此同时,PNG相同

问题:只有5个不同的文件就足够生成500个PNG文件了!我只想生成这5个PNG文件,并从中生成视频。

当我尝试上述命令images/包含 0000.png0122.png0288.png0312.png0450.png 而不是495人,显然它失败:

[image2 @ 00000000006d4040]无法打开文件:images / 0001.png

问题:在使用时,有没有办法告诉ffmpeg您忽略丢失的帧并使用最新的可用帧而不是失败-i images/%04d.png

如果没有,那么有什么其他方法可以生成仅带有这5个PNG的视频,这些视频应该在准确的时间范围内到达?

方法1:concat筛选器

使用-t输入选项声明持续时间,然后使用concat过滤器连接

ffmpeg -loop 1 -framerate 25 -t 4.88 -i 0000.png -loop 1 -framerate 25 -t 6.64 -i 0122.png -loop 1 -framerate 25 -t 0.96 -i 0288.png -loop 1 -framerate 25 -t 00:00:05.52 -i 0312.png -filter_complex "[0][1][2][3]concat=n=4:v=1:a=0,format=yuv420p" output.mp4

方法2:Concat分离器

durationconcat多路分解器输入文件列表中使用指令声明持续时间,然后与concat多路分解器连接。

这可能是最快的方法。

  1. 使input.txt包含以下内容:

    file 0000.png
    duration 4.88
    file 0122.png
    duration 6.64
    file 0288.png
    duration 0.96
    file 0312.png
    duration 5.52
    
  2. 串联:

    ffmpeg -f concat -i input.txt -vf format=yuv420p output.mp4
    

方法3:修剪滤镜

此方法使您可以以帧为单位(和/或根据需要使用时间值)来声明持续时间。

调整滤镜中使用帧持续时间并与concat滤镜连接的示例

ffmpeg -loop 1 -framerate 25 -i 0000.png -loop 1 -framerate 25 -i 0122.png -loop 1 -framerate 25 -i 0288.png -loop 1 -framerate 25 -i 0312.png -filter_complex "[0]trim=start_frame=0:end_frame=121,setpts=PTS-STARTPTS[v0];[1]trim=start_frame=122:end_frame=287,setpts=PTS-STARTPTS[v1];[2]trim=start_frame=288:end_frame=311,setpts=PTS-STARTPTS[v2];[3]trim=start_frame=312:end_frame=449,setpts=PTS-STARTPTS[v3];[v0][v1][v2][v3]concat=n=4:v=1:a=0,format=yuv420p" output.mp4

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ffmpeg屏幕混合模式使透明png粉红色

来自分类Dev

ffmpeg:加载图像的功能

来自分类Dev

FFMPEG在image2pipe模式下等待图像

来自分类Dev

ffmpeg PNG到mp4-黑屏

来自分类Dev

使用FFmpeg时删除顺序重复的帧

来自分类Dev

ffmpeg:以自定义透明度在视频上覆盖png图像?

来自分类Dev

以ffmpeg -i%04d.png模式重复图像

来自分类Dev

ffmpeg如何从视频输出图像

来自分类Dev

将FFMPEG帧写入png / jpeg文件

来自分类Dev

ffmpeg管道图像重做

来自分类Dev

使用ffmpeg从png文件制作电影

来自分类Dev

ffmpeg中的图像序列处理

来自分类Dev

ffmpeg实时流显示图像

来自分类Dev

FFMPEG-将3D视频拆分为2张图像的集合

来自分类Dev

ffmpeg:使用ffmpeg将图像/音频转换为视频

来自分类Dev

ffmpeg使用alpha填充调整PNG图像序列的大小

来自分类Dev

如何使用FFMPEG图像创建图像?

来自分类Dev

观看不适用于“ pkill ffmpeg; ffmpeg -i”

来自分类Dev

用ffmpeg旋转图像

来自分类Dev

使用FFMPEG重复/循环滚动文本

来自分类Dev

FFMPEG图像级联基于PNG文件中的颜色给出不同的结果

来自分类Dev

ffmpeg以帧类型保存图像

来自分类Dev

ffmpeg比例输入图像

来自分类Dev

FFMPEG-在视频中心缩放叠加的PNG

来自分类Dev

ffmpeg:放大平方的图像

来自分类Dev

使用 ffmpeg 在视频上叠加图像和可调整的 png 图像

来自分类Dev

FFmpeg 流动态 png

来自分类Dev

在 ffmpeg 中延迟图像转换

来自分类Dev

ffmpeg:连接图像和视频