After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 699181 - video: Add API for GstVideoFrame based scaling/conversion and use in videoscale/videoconvert
video: Add API for GstVideoFrame based scaling/conversion and use in videosca...
Status: RESOLVED DUPLICATE of bug 732415
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal enhancement
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-04-28 20:55 UTC by Douglas Bagnall
Modified: 2014-09-23 20:22 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Douglas Bagnall 2013-04-28 20:55:15 UTC
There are times when a videofilter developer wants to work with a temporary downscaled copy of a frame or a scale pyramid.

While image scaling is not complicated in theory, it is one of those things that is fiddly in practice.  Ad-hoc implementations are unlikely to be simultaneously fast and correct.  One solution would be to borrow an implementation from somewhere, but that involves tedious searching and integration.  Borrowing the videoscale code at source level looks simple (the scaling parts seem to be fairly well separated from the Element parts) but require use of the orc compiler which is something of an adoption barrier.

So I think it would be a good idea to expose the core image scaling functions as a plugins-base library, along the lines of the FFT library.
Comment 1 Sebastian Dröge (slomo) 2013-04-29 08:58:08 UTC
Yes, it should be part of libgstvideo. The conversion functions (i.e. videoconvert) is already accessible via that library, scaling would be another useful general purpose operation. Just needs someone to do it :)

(And the same goes for audioconvert/audioresample routines and other things for audio, and videomixer/etc)
Comment 2 Antonio Ospite 2013-10-28 12:29:54 UTC
Along these lines, the videoscale routines to fill a frame buffer with a given color could become library routines too.

Filling a buffer with a given color is not trivial either when we consider different possible pixel formats.

I've found a couple of bugs of this kind in just a week of GStreamer acquaintance:
https://bugzilla.gnome.org/show_bug.cgi?id=710392
https://bugzilla.gnome.org/show_bug.cgi?id=711003

I hope this is not too much OT :)

Maybe this could be proposed as a GSoC thing?

Thanks,
   Antonio
Comment 3 Sebastian Dröge (slomo) 2013-10-30 17:32:10 UTC
Indeed, that would be useful too.

As discussed at GstConf it would make most sense to provide some kind of API that handles video conversion and scaling in one and is based on GstVideoFrame for the input and output.
Comment 4 Sebastian Dröge (slomo) 2014-09-23 20:22:00 UTC

*** This bug has been marked as a duplicate of bug 732415 ***