GNOME Bugzilla – Bug 732415
video: Add videoconvert and videoscale API
Last modified: 2015-08-28 18:25:42 UTC
+++ This bug was initially created as a clone of Bug #728443 +++ Patches in the other bug, these probably need to be cleaned up a bit like hiding implementation details (e.g. gstcms.[ch] and the struct content) but should generally be fine. See last comment there. For videoscale a similar API already exists inside the plugin and can also be moved while we're at it.
*** Bug 732464 has been marked as a duplicate of this bug. ***
I think we should try to make a generic API like this GstVideoConvert * gst_video_convert_new (GstVideoInfo *in, GstVideoInfo *out, GstStructure *options); gst_video_convert_frame (GstVideoConvert * convert, GstVideoFrame *in, GstVideoFrame *out); gst_video_convert_free (GstVideoConvert * convert); We would have to implement scaling and conversion in two steps with the existing code but we can combine them in one step later on if we want. But the API should be enough to get all the hard bits such as interlacing, chroma, colorspaces etc handled.
Ah, possibly something to check if we can do in-place conversion for the given converter (and maybe GstVideoFrames).
*** Bug 699181 has been marked as a duplicate of this bug. ***
Vincent, would you like to update your patches? Or Wim, would you like to work on this? I think this should be done for 1.6, having this code duplicated in different places is just not good.
I want to take this before 1.6.
commit b2fd20c41677e93d1b41f435738cfdeaf08b304f Author: Wim Taymans <wtaymans@redhat.com> Date: Wed Sep 24 15:49:42 2014 +0200 video: move videoconvert code to video library Move the conversion code used in videoconvert to the video library and expose a simple but generic API to do arbitrary conversion. It can currently do colorspace conversion but the plan is to add videoscale to it as well. See https://bugzilla.gnome.org/show_bug.cgi?id=732415
mh.. I think the proper spelling is converter, not convertor. Will need to fix.
is this done ?
not completely, the scaling is not merged yet
getting there, code is here: http://cgit.freedesktop.org/~wtay/gst-plugins-base/log/?h=video-scaler
Should be done now.