【问题标题】:Change image overlay on demand按需更改图像叠加
【发布时间】:2020-04-21 02:00:45
【问题描述】:

我需要你的帮助。我使用以下命令流式传输到 Twitch:

ffmpeg -i input.mp4 -i image.jpg -filter_complex 'overlay=x=10:x=10' -s \
  1920x1200 -framerate 15  -c:v libx264 -preset ultrafast -pix_fmt yuv420p \
  -threads 0 -f flv 'rtmp://'

如何在可变时间将image.jpg 图片更改为另一张图片?我不会重新启动 FFMPEG 命令。

【问题讨论】:

    标签: ffmpeg


    【解决方案1】:

    为图像输入添加-f image2 -loop 1 输入选项,然后在需要时自动替换image.jpg,例如使用mv

    基本示例:

    ffmpeg -i input.mp4 -f image2 -loop 1 -i image.jpg -filter_complex overlay output.mp4
    

    流式传输示例:

    ffmpeg -re -i input.mp4 -f image2 -loop 1 -i image.jpg -filter_complex "overlay,format=yuv420p" -c:v libx264 -preset fast -g 50 -b:v 4000k -maxrate 4000k -bufsize 8000k -f flv 'rtmp://'
    

    【讨论】:

      【解决方案2】:

      要回答问题的“可变时间”部分,请使用 cron 作业运行在指定时间(即每 5 分钟)更新覆盖图像的脚本。例如,您可以创建一个包含各种叠加层的文件夹,然后每 5 分钟随机选择一个并将其复制到 image.jpg。然后 FFMPEG 会将新图像渲染到您的流中。

      使用-f image 2 -loop 1 -thread_queue_size 512 -i image.jpg 很重要,尤其是在渲染其他图像格式时。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-11-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多