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 (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...