[Bug 773073] audioconvert: endian conversion optimization

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Oct 22 08:52:44 UTC 2016


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

--- Comment #20 from Petr Kulhavy <brain at jikos.cz> ---
Thank you for the review and the extra info.

How is the ORC integrated into the code? Does it have to be enclosed in
something like #if ORC_ENABLED and otherwise use the C implementation? Or does
it take care of everything automatically?

And then where to store the ORC code?

In ORC I have not found anything for 24-bit handling other than 24->32 bit
expansion. 24 bits is the actual difficult part that needs optimization. How
would that be written?

Regarding the in-place implementation my idea is the following:
* gst_audio_converter_new() gets an extra boolean * parameter, where it returns
if the conversion can be done in-place

* gst_audio_convert_transform() calls gst_base_transform_set_in_place() if the
above returned value is true

* new function gst_audio_convert_transform_ip() needs to be added into
gstaudioconvert.c - here I'm not sure if it has to be completely separate
implementation or it can just call gst_audio_convert_transform(base, buf, buf);
The convert_endian() function can already handle in==out

-- 
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