我正在尝试从视频中提取第二帧的第一帧。我尝试了不同的方法来实现这一目标,但我失败了。这是我尝试过的命令。
ffmpeg -i input.ts -s 400x222 -q:v 3 -start_number 0 -vf fps=1 %d.jpg
后来,我尝试使用特定那一秒的以下命令再次提取帧。这里我提取了第 210 秒的帧。
ffmpeg -ss 210 -i input.ts -s 300x250 -t 1 -start_number 0 images.%d.jpg
我只想提取第二个的起始帧。假设从该特定秒的 0.001 开始。
当我比较第一个命令提取的 210 秒帧与第二个命令提取的第一帧完全不同时。
为了以后使用,为了防止冲突,我只想提取原始输入视频的第一帧。我尝试使用过去 stackoverflow 专家告诉的命令here。但是当我运行它时。它只提取起始帧(仅 1 帧)。
如何提取每秒视频的起始帧?
尝试这个命令:
ffmpeg -i input.mp4 -vf "select=between(mod(n\, 25)\, 0\, 0), setpts=N/24/TB" output-%04d.png
你必须通过你的视频帧速率或fps
in between(mod(n\, 25)\, 0\, 0)
我的视频 fps 是25
所以我通过了25
如果你的 fps 60 那么你必须通过 60between(mod(n\, 60)\, 0\, 0)
另外,如果您想要每秒的第 5 帧,则使用between(mod(n\, 25)\, 0\, 4)
它会给出每秒的前 5 帧。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)