Spectrum Behaviour

Stefan Sauer ensonic at hora-obscura.de
Thu Jun 21 13:20:34 PDT 2012


On 06/21/2012 03:42 AM, Cefn Hoile wrote:
> I've recently been working with the Spectrum element, (thanks for your
> help on this) but trying to get it to work with relatively low-power
> hardware. I'm wondering what I can do to minimise the processing load
> of the spectrum element for a given FFT specification (with the same
> interval and bands).
>
> My pipeline currently looks something like this...
> pulsesrc ! spectrum interval=40000000 bands=8 threshold=-80 ! fakesink
>
> Whilst the pipeline configured in this way has practically
> instantaneous updates on a quad core i7, it's taking up huge amounts
> of CPU and running behind real time until it fails on a 900MHz machine
> ,with some kind of latency destroying the relationship between the
> audio and the 'graphic equaliser' even before it fails. It's possible
> to reduce the frequency of updates, which helps, but that impacts on
> the visual effectiveness of the graphic equaliser.
>
> I'm wondering for example if it's feasible to efficiently (and
> lossily) downsample the audio and save effort in the FFT? Something
> else I can do to make it more responsive?
The fft is running in floating point precision and is not using any
hardware acceleration (like SS2). Allowing it to optionally use integer
fft routines (which we do have) could be worth trying. Alternatively
trying to apply ORC optimizations to the butterfly operation of the FFT
library would speed it up.

Both are not trivial things to do ...

Stefan

>
> Cefn
> http:/cefn.com
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list