5

我目前能够将一系列图像转换为视频,但我还需要在它们之间添加过渡/动画。

String[] ffmpegCommand = {"/data/data/mypackage/app_bin/ffmpeg", "-y",
"-qscale", "1", "-r", "" + framerate, "-i", "/data/data/mypackage/app_ipImg/image%3d.jpg",
"-t", "" + (((total_images) * delay_of_each_frame_in_seconds) + 4), //"-s",heightwidth,
"-vcodec", "libx264", "-s", "640x480",
 Environment.getExternalStorageDirectory() + "/photo_directory/myVideo.mp4"};

上面的命令对我有用,可以从图像系列创建视频

现在,我确实想在每个帧之前添加淡入淡出或其他过渡/动画以显示在最终视频中

我google了很多,但还没有找到解决这个问题的方法。

请建议我的方式。

提前致谢。

4

2 回答 2

2

我建议您查找有关Frame BlendingMotion interpolation的更多信息。

例如,这在延时视频中用于平滑渲染。

  • 混合帧,请将 ffmpeg 与 tblend 过滤器一起使用。例如以下命令可以提供帮助 ffmpeg -i {input} -vf "tblend=average,framestep=2,setpts=0.50*PTS" -r {srcfps} -{encoding parameters} {output}:替换{input}为您的输入文件、{output}输出文件的名称、{srcfps}每秒源帧数以及-{encoding parameters}您告诉 ffmpeg 输出的参数。您还可以将minterpolate过滤器添加到过滤器堆栈以添加一些运动模糊。

  • 要基于运动生成新帧,Butterflow 项目可以提供帮助: https ://github.com/dthpham/butterflow

    特征

    制作运动插值视频(通过基于运动渲染中间帧来提高视频的帧速率,使用像素变形和混合的组合)。

    制作流畅的运动视频(帧之间的简单混合)。

    利用插值帧制作流畅的慢动作视频

于 2017-05-12T08:46:03.063 回答
0

两种方法

1)为每个图像/幻灯片创建一个视频,并为每个图像/幻灯片添加淡入淡出,然后将视频添加在一起。此链接说明了如何为图像创建淡入淡出效果。

2) 使用混合过滤器和 -loop 选项,如本链接中所述。

于 2015-04-24T18:55:06.480 回答