ffmpeg - 將一個視訊疊加到另一個視訊上

ffmpeg - 將一個視訊疊加到另一個視訊上

我想將一個視頻疊加到另一個視頻上。

目的是使上層影片稍微透明,以便人們可以看到背景影片中發生的情況。

我在下面嘗試過命令:

String command="ffmpeg -y -i /sdcard/videokit/two.mp4 -i /sdcard/videokit/inone.mp4 -filter_complex [0:v][1:v]overlay=100:100:eof_action=pass[v] -map [v] /sdcard/videokit/output.mp4";

在此命令中,上方視訊與後面的視訊不符(在高度和寬度的上下文中)。

錯亂 : 背景影片可能與上方影片的高度寬度不同,因為它是動態出現的,在這種情況下我應該如何管理..!

任何幫助或建議將不勝感激。

答案1

下面的命令調整上方視頻的大小以匹配基礎視頻,並為其提供透明度。

ffmpeg -y -i /sdcard/videokit/two.mp4 -i /sdcard/videokit/inone.mp4 -filter_complex "[1:v][0:v]scale2ref[ua][b];[ua]setsar=1,format=yuva444p,colorchannelmixer=aa=0.5[u];[b][u]overlay=eof_action=pass[v]" -map [v] /sdcard/videokit/output.mp4

調整scale2ref第二個影片的大小以符合第一個影片的尺寸。然後colorchannelmixer調整 Alpha 通道以賦予其 50% 的透明度。

相關內容