FFmpeg 叠加过滤器更改源 FPS
FFmpeg Overlay Filter Changes Source FPS
我想将一个视频叠加在另一个慢动作视频之上。
令人惊讶的是,叠加层也变得慢动作。
我正在应用以下命令:
ffmpeg
-to 00:00:01.000 -i camera1.mp4 // original video
-ss 00:00:02.000 -to 00:00:09.000 -i confeti.mov // overlay video
-filter_complex '[0]setpts=3.333*PTS[s0]; [s0][1]overlay' // change FPS of original video and overlay
-r 24 out.mp4
输出可以在这里看到:out.mp4
如您所见,“五彩纸屑”叠加在原始视频播放时速度较慢,并在原始视频结束后恢复正常速度。
知道为什么会发生这种情况以及如何解决它吗?
叠加滤镜在第一个输入提供的帧之上绘制叠加视频。如果您使用 setpts space 输出第一个输入的帧,'density' 将会减少并且没有足够的中间帧来绘制来自叠加输入的所有帧。
在 setpts 后添加 fps 过滤器以提供更多基础帧。
[0]setpts=3.333*PTS,fps=24[s0]
我想将一个视频叠加在另一个慢动作视频之上。 令人惊讶的是,叠加层也变得慢动作。
我正在应用以下命令:
ffmpeg
-to 00:00:01.000 -i camera1.mp4 // original video
-ss 00:00:02.000 -to 00:00:09.000 -i confeti.mov // overlay video
-filter_complex '[0]setpts=3.333*PTS[s0]; [s0][1]overlay' // change FPS of original video and overlay
-r 24 out.mp4
输出可以在这里看到:out.mp4
如您所见,“五彩纸屑”叠加在原始视频播放时速度较慢,并在原始视频结束后恢复正常速度。
知道为什么会发生这种情况以及如何解决它吗?
叠加滤镜在第一个输入提供的帧之上绘制叠加视频。如果您使用 setpts space 输出第一个输入的帧,'density' 将会减少并且没有足够的中间帧来绘制来自叠加输入的所有帧。
在 setpts 后添加 fps 过滤器以提供更多基础帧。
[0]setpts=3.333*PTS,fps=24[s0]