FFmpeg: Generate an image of tiled results from all 'blend' filter types



Two rudimentary bash scripts, which take two file paths as input for an FFmpeg instance, which in turn uses these files as sources for 'blend' filters. Image dimensions are irrelevant as both input images are scaled to '320x320' (for ease of formatting). Multiple for-loops generate the bulk of the filtergraph. There are more elegant ways of doing this, using multiple outputs and secondary applications, but these solutions here are based on a single instance of FFmpeg.

Note the "$format" variable in the scripts. Different pixel formats will produce different results, which is part of the reason why these scripts do not produce "all possible blend results".

There are two versions: one outputs "all_mode" only results [image above], and the other outputs the results of all blend modes. The "all_mode" only version is probably the more useful of the two. Even if neither script is used, the image examples included here could be useful as references, as they give a general idea of the effect of each 'blend' type.

script: ffmpeg-tiled-blend-results-all_mode-only.sh
script: ffmpeg-tiled-blend-results.sh

The scripts were written to aid with choosing the most suitable blend filter for tasks/projects, which can sometimes be hard to comprehend beforehand. The images produced allow for quick a assessment of possibilities between two test frames.



Input A source: https://www.flickr.com/photos/38983646@N06/15545146285/
Input B source: https://www.flickr.com/photos/archer10/4244381931/