[Bug 744763] gltransformation: Make all property into universal [0-1] coordinate

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Feb 18 19:16:04 PST 2015


https://bugzilla.gnome.org/show_bug.cgi?id=744763

--- Comment #3 from Lubosz Sarnecki <lubosz at gmail.com> ---
The gltransformation plugin was designed with a visual editor in mind.
In order to normalize the coordinates to 1 for every aspect ratio, the
translation vector would need to be modified when moving the image with a mouse
cursor, i.e. the X pixels will need to be multiplied with the inverse apect
ratio, so they won't be as fine as with the previous solution.

Also the image is scaled and rotated after being translated. This is
implemented this way to achieve an intuitive scale / rotation operation where
the image is located. Otherwise the image will move while scaled.

The range of your patch needs to be increased, since a scaled image can't be
moved out of the canvas this way. The translation property would be out of
range:

Warning: value "2.709814" of type 'gfloat' is invalid or out of range for
property 'translation-x' of type 'gfloat'

With this in mind the normalized coordinates only make sense for unscaled
images and the question is if this is usefull then.

For a better understanding of the transformation values, you could try my gui
for the plugin:

https://github.com/lubosz/gst-gl-tests

You need gst-plugins-bad on 1200f2f94bfaaffb8e56b9e7bb8eca34c7a765fc, since it
does not work on master currently because of a regression.
Also you need python-cairo from git.

The "pivot" point of the transformation is currently hardcoded to the center of
the image. I was going to make this an option. So the scale and rotation
operations could be made with another origin.

Thanks for finding the typo and your interest in the plugin :)

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list