gpt4 book ai didi

filter - FFMPEG,提取第一帧并保持 5 秒

转载 作者:行者123 更新时间:2023-12-04 23:14:47 26 4
gpt4 key购买 nike

我正在尝试在图像序列的开头覆盖 15 秒的视频过渡(带有 alpha 的 png 序列以显示下面的图像),我可以使用覆盖过滤器来完成。但我想在播放动画之前将图像序列的第一帧保持 5 秒钟。我已经尝试过修剪/选择,但我似乎无法让它持续 5 秒,我似乎也无法将它与其他视频连接起来进行过渡。所以我的问题是:

  • 如何获得第一帧并将其保持 5 秒钟,下面的方法有效,但似乎不是最干净的选项?

  • -framerate 30 -t 60.0 -i input1.%04d.jpg -framerate 30 -t 15.0 -i transition1_%03d.png -filter_complex "color=c=red:d=5:s=480x270:r=30[bg]; [bg][1:v]overlay[transhold]; [0:v][transhold]overlay=repeatlast=0[out]"


  • 在将其叠加到主视频上之前,如何将其与原始视频相连接,我可以使用以下命令使用两个叠加层来完成,其中实际过渡的开始偏移量为保持的长度,但这似乎有点笨拙。

  • -framerate 30 -t 60.0 -i input1.%04d.jpg -framerate 30 -t 15.0 -i transition1_%03d.png -filter_complex "color=c=red:d=5:s=480x270:r=30[bg]; [1:v]split[trans][transhold]; [trans]setpts=PTS+5/TB[trans];[transhold]select=eq(n\0)[transhold];[bg][transhold]overlay[transhold]; [0:v][transhold]overlay=repeatlast=0[tmp1]; [tmp1][trans]overlay[out]"



    这是一个更大命令的一部分,我将四个高清图像编译成一个 4k 提要,每个都有自己的过渡,所以我可以做得越干净越好。我还希望能够为不同的高清输入改变保持的持续时间。如果需要,我可以将第一张图像作为不同的输入引入,但我仍然需要连接它们。我认为必须有一种方法可以使用过滤器来做到这一点......

    最佳答案

    这在另一篇文章中得到了回答:
    https://video.stackexchange.com/questions/23551/ffmpeg-extract-first-frame-and-hold-for-5-seconds

    -framerate 30 -t 60.0 -i input1.%04d.jpg 
    -framerate 30 -t 15.0 -i transition1_%03d.png
    -filter_complex
    "[1]loop=149:1:0[trans];
    [0][trans]overlay=eof_action=pass" out.mp4

    第二个输入的第一帧重复 149 次,因此有 150 个实例(30 fps x 5s)。循环结束时的 0 是要循环的帧的起始索引。中间的 1 是从第三个参数的索引开始循环的帧数。

    关于filter - FFMPEG,提取第一帧并保持 5 秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49173184/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com