好的,我在 NextJS 项目中使用 FFMPEG wasm,但我认为一般的 FFMPEG 解决方案会起作用,因为 FFMPEG wasm 将解析正常的 FFMPEG 命令。我要做的是在输入视频的顶部添加一个覆盖视频,我还更改了覆盖视频的不透明度,以便我可以看到下面的主视频。我已经有了这个工作,用这行代码:-i input.mkv -i overlay.mov -filter_complex [1:v]format=argb,geq=r=\'r(X,Y)\':a=\'0.5*alpha(X,Y)\'[zork];[0:v][zork]overlay -pix_fmt yuv420p -preset ultrafast -c:a copy output.mkv
.
问题是 input.mkv
大小可能会改变,overlay.mov
, 我想设置 overlay.mov
大小与 input.mkv
相同(所以解决方案最好也不能使用固定值)。我在stackoverflow中看到了其他关于此的问题,但是由于我已经在使用命令来更改覆盖层的不透明度,因此我无法使用该命令来更改覆盖层的大小,因此我没有使用FFMPEG的经验无论如何,所以即使我已经看到如何更改覆盖的不透明度以及如何更改覆盖的大小,我无法弄清楚如何将这些命令组合成一个同时执行这两个命令的命令。
最佳答案
首先使用 scale2ref 缩放,然后更改不透明度。-i input.mkv -i overlay.mov -filter_complex [1:v][0:v]scale2ref[zork][video]; [zork]format=argb,lutrgb=a=val*0.5[zork];[video][zork]overlay -pix_fmt yuv420p -preset ultrafast -c:a copy output.mkv
关于javascript - FFMPEG - 如何将覆盖视频的大小设置为输入大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72062512/