FFmpeg图像序列到具有可变图像持续时间的视频

FFmpeg图像序列到具有可变图像持续时间的视频,ffmpeg,Ffmpeg,我一直在寻找一种将PNG序列转换成视频的方法。有几种方法可以使用FFmpeg中的CONCAT函数和脚本来实现这一点。 问题是,我希望显示某些图像的时间比其他图像长。我需要它是准确的。我可以在脚本文件中设置持续时间(秒)。但我需要精确的帧。到目前为止,我还没有成功。 这就是我想做的: 带Transparance的Quicktime视频(Prores4444或其他支持Transparance+alpha通道的编解码器) 每秒25帧 这就是我所拥有的:[目标视频中的TimecodeIn-Timec

我一直在寻找一种将PNG序列转换成视频的方法。有几种方法可以使用FFmpeg中的CONCAT函数和脚本来实现这一点。 问题是,我希望显示某些图像的时间比其他图像长。我需要它是准确的。我可以在脚本文件中设置持续时间(秒)。但我需要精确的帧。到目前为止,我还没有成功。


这就是我想做的:
  • 带Transparance的Quicktime视频(Prores4444或其他支持Transparance+alpha通道的编解码器)
  • 每秒25帧
这就是我所拥有的:[目标视频中的TimecodeIn-TimecodeOut]
  • img001.png[0:00:05:10-0:00:07:24]
  • img002.png[0:00:09:02-0:00:12:11]
  • img003.png[0:00:15:00-0:00:17:20]
  • img120.png[0:17:03:11-0:17:07:01]
当然,这不是脚本文件的格式。我只是想知道我在处理什么样的数据。PNG图像文件是我在应用程序的其他地方生成的字幕。我想能够导出作为一个透明的电影,我可以很容易地在我的视频编辑软件导入字幕。


我还一直在考虑使用空白透明图像作为实际字幕图像之间的间隔。环顾四周后,我认为这可能会有所帮助: 在屏幕上,他们解释如何制作定时幻灯片

在Concat demuxer部分中,他们讨论了基于文本文件制作幻灯片,并参考图像文件和图像的持续时间。 所以,我创建了我需要的所有PNG图像。这些图像具有字幕文本。每个图像包含一个字幕页。 在我想隐藏字幕的时候,我使用了一个空白的PNG

我生成一个文本文件,如FFMPEG网站上所述。
此文本文件将引用所有PNG。在这段时间里,我只计算了outcue-incue。容易的。。。我想…

您尝试了什么命令?您可以定义一个帧速率,然后创建N个将以该帧速率显示的图像。要使某些图像显示得更长,请多次复制同一图像文件,以便显示的帧显示得更长。例如,如果Frame27.png以10 fps的速度持续3帧,那么将相同的图像复制到Frame28.png和Frame29.png。听起来我需要生成图像序列动画。有一堆重复的框架。不是评论的地方。出于好奇,你找到答案了吗?