如何用FFmpeg实现类似示例的4×4棋盘格效果?
修改FFmpeg命令生成4×4棋盘格效果
原命令实现的是1像素级交替的2×2棋盘格效果,要生成以4×4像素为单元的棋盘格,只需调整blend滤镜的表达式逻辑,修改后的命令如下:
ffmpeg -i input-image-1.png -i input-image-2.png -filter_complex "[1:v][0:v]blend=all_expr='if(eq(mod(floor(X/4),2),mod(floor(Y/4),2)),A,B)'" output-image.png
关键修改说明:
- 原命令中
mod(X,2)和mod(Y,2)直接对单像素坐标取模,导致每1像素就切换一次图像。 - 修改为
floor(X/4)和floor(Y/4)后,会将每4个连续的X/Y坐标归为同一组,再对分组后的结果取模2,就能实现以4×4像素块为单位的棋盘交替效果。 - 表达式逻辑保持原规则:当X、Y分组后的奇偶性一致时,使用第二个输入图像(A,对应
input-image-2.png),否则使用第一个输入图像(B,对应input-image-1.png)。
内容的提问来源于stack exchange,提问作者bot123412342143
相关产品推荐
相关产品推荐

