You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FFmpeg转码后多视频流问题:如何仅输出带Logo的合成视频流

FFmpeg转码后多视频流问题:如何仅输出带Logo的合成视频流

嘿,这个问题我之前也碰到过,核心原因是你的命令里不小心把原始视频流也打包到输出文件里了,导致生成了多个视频流,平台上传时就出现了选流错误的情况。

咱们拆解下问题:你当前命令里的 -map 0:v 会直接把原始输入视频流(没加Logo的那个)也纳入输出,再加上滤镜处理后生成的带Logo合成流,自然就出现了多视频流冲突。虽然你设置了默认流,但Vimeo/YouTube这类平台的流选择逻辑不一定会遵循这个设置,得从根源解决——只输出合成后的那个视频流。

给你修改后的命令:

ffmpeg -i input.mov -i logo.png -c:a aac -c:v libx264 -pix_fmt yuv420p -crf 18 -map 0:a? -filter_complex "yadif,[1]scale=iw*1:-1[wm];[0:v:0][wm]overlay=main_w-overlay_w-5:5[outv]" -map [outv] -disposition:v:0 default output_h264.mov

重点修改了这两处:

  • 在 overlay 滤镜结尾添加了 [outv],给合成后的带Logo视频流起个标记名,方便后续精准映射
  • 删掉了原来的 -map 0:v,改用 -map [outv] 指定只输出这个标记过的合成视频流

这样处理后,输出文件里就只会有:

  • 带Logo的合成视频流(唯一的视频流)
  • 保留的原始音频流(如果输入文件有音频的话)

上传到Vimeo或YouTube时,平台只能识别到这一个视频流,自然不会选错了。

备注:内容来源于stack exchange,提问作者Will

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 10:14:43