Ports gleffects "fisheye" filter to geometrictransform.
Fake fisheye lens filter. Somewhat empiric implementation because I
didn't find any good algorithm that does it with nice results.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
Ports gleffects "mirror" filter to geometrictransform.
Simple yet effective mirror effect, splits the image into halves and
reflect the first into the second.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
Ports gleffects "square" filter to geometrictransform.
Maps a region around the center into a zoomed square and smoothly get
back to normal zoom. With faces it makes a funny "cube-face" effect.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
Ports gleffects "stretch" filter to geometrictransform.
Shrinks the image around the center and gradually return to normal zoom
creating funny caricatures.
https://bugzilla.gnome.org/show_bug.cgi?id=625722
Use explicit format macros from gstvideo to avoid exposing
unsupported formats on template pads. Using the macros
also give us complete caps (width/height/framerate).
And add support for AYUV.
Fixes#620717
Adds a prepare function to make subclasses precalculate values
that will be used throughout the mapping functions.
Also adds a missing cleanup to fix a memleak
Renames some variables and adds a minimum doc to the
mapping function for a little clarity.
Also uses gstvideo functions for the row and pixel strides
instead of hardcoded values
Adds a new plugin that has elements that perform geometric
transformations to images. By geometric transformations I mean
that the operations are functions that given the output pixel
position, get the pixel position in the input image. This pixel
is then copied from input to output.
The gstgeometrictransform baseclass makes it easy to write
such elements. It boils down to write the mapping function
and exposing properties
Already added the first of the elements, 'pinch'. It's a common
effect in image editors, like gimp (distort -> pinch)