gpt4 book ai didi

使用过滤器复杂的 Ffmpeg 覆盖占用过多的 cpu

转载 作者:行者123 更新时间:2023-12-04 23:20:19 32 4
gpt4 key购买 nike

我正在将输入 rtmp 流中继到不同的服务器。在一个用例中,我使用 filter complex 和 scale2ref 在流的顶部覆盖了一个图像,但与普通 ffmpeg 命令相比,它占用的 CPU 几乎是 10 倍。
覆盖:'ffmpeg -xerror -itsoffset ${delaySeconds} -i ${SOURCERTMP} -i ${overlayUrl} -max_muxing_queue_size 9999 -filter_complex "[1][0]scale2ref[ovr][base];[base][ovr]覆盖=0:0,拆分=1[a]"-map 0:a -map "[a]"-c:v libx264 -c:a aac -f flv -flvflags no_duration_filesize '${forwardUrls[0]}'
简单版本:'ffmpeg -xerror -itsoffset ${delaySeconds} -i ${SOURCERTMP} -max_muxing_queue_size 9999 -c:v copy -c:a copy -f flv -flvflags no_duration_filesize '${forwardUrls[0]}'

最佳答案

它没有占用太多CPU,它占用了它需要的CPU。这是意料之中的。第二个命令做的比第一个少得多。
覆盖命令不仅仅是添加覆盖。它正在对视频进行解码,对叠加层进行 blitting,然后对视频进行重新编码(这非常昂贵),并且可能会进行一些自动色彩空间对话。
“简单版本”只是读取编码帧,然后将其写回而不看它。它基本上是一个文件副本。
坦率地说,我认为它的 CPU 只增加了 10 倍。

关于使用过滤器复杂的 Ffmpeg 覆盖占用过多的 cpu,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68209045/

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