gpt4 book ai didi

FFMPEG:在ffmpeg中通过ZeroMQ控制overlay

转载 作者:行者123 更新时间:2023-12-04 22:46:16 28 4
gpt4 key购买 nike

对于一个项目,我们需要手动控制视频流顶部的叠加层(静态图像)。我们得出结论,我们将需要 ZeroMQ 来控制它,并且我们已经成功地通过 ZeroMQ 控制了一个音频过滤器。

为实现这一目标,我们考虑了两种选择:

  1. 使用滤色器控制前景(图像)透明度
  2. “移动”视频流前面的叠加图像,并将其从视频 Canvas 中移除

不幸的是,我们已经设法让两者都能正常工作,但没有与 ZeroMQ 结合使用。

例子:

ffmpeg -loglevel verbose    \
-i $STREAM \
-i overlay.png \
-bsf:a aac_adtstoasc \
-threads 12 \
-vf "zmq=bind_address=tcp\\\://127.0.0.1\\\:1235, [0:v][1:v]overlay=25:25" \
-c:a aac \
-af "azmq=bind_address=tcp\\\://127.0.0.1\\\:1235,volume=1" \
-c:v h264 output

上面的例子产生了以下错误:

Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument

非常感谢有关如何实现这一目标的建议!

最佳答案

工作解决方案:


更新
设法让它工作:

ffmpeg -loglevel verbose    \
-i $STREAM \
-i overlay.png \
-bsf:a aac_adtstoasc \
-threads 12 \
-filter_complex "[0:v][1:v]overlay=x=0:y=0,zmq=bind_address=tcp\\\://127.0.0.1\\\:1236" \
-c:a aac \
-af "azmq=bind_address=tcp\\\://127.0.0.1\\\:1235,volume=1" \
-c:v libx264

我可以通过 ZeroMQ 发送消息来移除(控制)覆盖层:

Parsed_overlay_0 x 1280

关于FFMPEG:在ffmpeg中通过ZeroMQ控制overlay,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62822965/

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