MotionMask creates a mask of moving pixels. Every output pixel will be set to the absolute difference between the current frame and the previous frame.
This is a port of the mt_motion filter from pinterf's updated version of the Avisynth plugin MaskTools.
motionmask.MotionMask(clip clip, [int planes=all, int th1=[10, 10, 10], int th2=[10, 10, 10], int tht=10, int sc_value=0])
- A clip to process. It must have constant format and dimensions, 8..16 bit integer sample type, and it must not be RGB.
- Planes to process. Unprocessed planes will be copied.
- th1, th2
Low and high thresholds. Must be between 0 and 255.
Any output pixels less than or equal to th1 will become 0.
Any output pixels greater than th2 will become the maximum value allowed by the format.
Default: 10 for the first plane, and same as the previous plane for the others.
Scene change detection threshold. Must be between 0 and 255.
Lower values will detect more scene changes.
Frames that are considered scene changes will be filled with this value, scaled according to the bit depth. Must be between 0 and 255.
mkdir build && cd build meson ../ ninja
MIT, like the Avisynth+ plugin.