微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ffmpeg-顶部编码优先交换vs渐进-顶部1不粘

如何解决ffmpeg-顶部编码优先交换vs渐进-顶部1不粘

请帮助: 我正在对视频进行编码,并且由于我的特定用例,我必须按顺序对其进行两次编码,以使来自ffmpeg第一次运行的输出进入ffmpeg的第二次编码作为输入。我使用“ -顶部1 ”选项强制“顶部编码优先(交换)”。

在对编码的第一次迭代进行编码时,一切正常(来自下面的ffprobe的输出):

Duration: 00:00:22.16,start: 0.000000,bitrate: 61390 kb/s
    Stream #0:0(eng): Video: mpeg2video (4:2:2) (xd5c / 0x63356478),yuv422p(tv,bt709,top coded first (swapped)),1920x1080 ... etc-etc.

但是,当我运行第二次迭代时,“ 最先编码(交换)”会切换为“ 渐进式

我尝试从第一个迭代中删除“ top 1”选项,仅将其添加到第二个中,但没有成功。”我在做什么错? 第一次迭代会在视频上添加特殊的水印,因此filter_complex:

ffmpeg -i pre-input.mov -c:v prores_ks -profile:v 3 -pix_fmt yuv422p10le -b:v 178458816 -maxrate 178458816 -minrate 178458816 -r 29.97 -top 1 -color_primaries bt709 -color_trc bt709 -colorspace bt709 -vtag apch -c:a copy -c:s copy -qscale 0 -filter_complex " my_filter=enable='between(t,2,22)':x=1050:y=108:size=184:contrast=40:string=hello " -y output.mov

请清楚一点,与第二次迭代相同的参数,并产生出我所需要的。

我唯一要添加的是在第二次迭代中我正在使用:

ffmpeg -i input.mov -filter_complex“ [0] [1] overlay = 1504:214:enable ='between(t,2,3.600)'[v1]; [v1] [2] overlay = 1504: 214:enable ='between(t,4,5.500)'[v2]; [v2] [3] overlay = 1504:214:enable ='between(t,6,20)'[v3]“ -map'[ v3]'-map 0:a ... etc-etc。

从我叠加在视频上方的3张图片

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。