单张图片幻灯片效果的叠加过渡位置计算

单张图片幻灯片效果的叠加过渡位置计算

有人问过类似的问题,只是他们滑动了很多图片,因此无法从他们的答案中找出我的解决方案。我试图通过将一张图片叠加在背景图片上,从右向左滑动它。我的起始位置(640)被移动,因此滑动图片在开始时不可见,但背景图片可见。目标是让图片在 46 秒时开始滑动,并在与背景图片相同的位置时停止,而不是继续滑动直到消失。以下是我尝试过但没有任何成功的方法。

ffmpeg -loop 1 -t 67 -i background.png -loop 1 -t 5 image1.png
       -filter_complex
        "[0:v]scale=640x720,setsar=1/1[v0];[1:v]scale=640x720,setsar=1/1[v1]
        [v0][v1]overlay=shortest=1:x='min(640,-(t-46)*100))'"
       -y output.mp4

我认为这与 (*100) 有关,但我就是想不出解决办法。我已经用尽了所有办法。

答案1

使用

ffmpeg -loop 1 -t 67 -i background.png -loop 1 -t 6.5 image1.png 
  -filter_complex "[0:v]scale=640x720,setsar=1/1[v0];
                   [1:v]scale=640x720,setsar=1/1,setpts=PTS+46/TB[v1];
                   [v0][v1]overlay=shortest=1:x='max(0,640-(t-46)*100))':enable='gte(t,46)'"
  -y output.mp4

相关内容