Thanks! Sounds really promising!>at http://citeseerx.ist.psu.edu/viewdoc/summary?doi=3D10.1.1.52.1149 > >(Unfortunately, the third page of this article is not readable)Unfortunatelly the link is broken. But here: http://en.scientificcommons.org/145329 I've found the same paper I guess... with some text survived at p 3.
Any lazy/dirty FFT technique available?
Started by ●March 21, 2009
Reply by ●March 21, 20092009-03-21
Reply by ●March 21, 20092009-03-21
hq9000 <psy-nn@mail.ru> wrote:> I want to see a spectrum of the audio signal but there are not > requirements for it to be extremely precise. I mean no backward conversion > to time domain is supposed to be performed. The fourier transform is for > visual picture of frequency distribution only.How are you doing it, and how much faster should it be? If you do the FFT in 16 bit fixed point it could be a lot faster than in 32 bit or 64 bit floating point. What processor are you using? You might look at the ICT, which was specifically designed for processors without hardware multiply, and especially without floating point. (google for ict site:jpl.nasa.gov and it should come out.) -- glen
Reply by ●March 21, 20092009-03-21
Rune Allnor wrote:> On 21 Mar, 14:54, Vladimir Vassilevsky <antispam_bo...@hotmail.com> > wrote: >>>And you want the log frequency scale, right? Something like 20 - 30 >>bands, right? All idiots writing audio plugins are asking about that. > > > Ah. I didn't catch the context of the question. > > >>Use Goertzel for lower bins, use short term real value FFT for higher bins. > > > If one really is talking about 20-30 bands over > the audio band, use a bank of constant-Q'ish IIR > filters, followed by an amplitude detector (or > maybe just a squared amplitude term).Utter punk method to produce something that looks like auduo spectrum: 1. Whiten the signal by [1 -1] filter. 2. Measure the distances between zero crossings. Make a histogram. The histogram it is. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Reply by ●March 21, 20092009-03-21
>How are you doing it, and how much faster should >it be? > >If you do the FFT in 16 bit fixed point it could >be a lot faster than in 32 bit or 64 bit floating >point. > >What processor are you using?Actually the final goal is to create cross-platform application, thus there could be no any assumtions. I can say for sure though that the input will be most likely provided as double precision float. In this case... Does it worth converting the data to 16 bit integer prior to FFTizing it? 16 bit int would be more than enough goood approximation. The question is - how much will I gain? Taking into consideration the cost of preliminary conversion.
Reply by ●March 21, 20092009-03-21
On Mar 21, 4:17�pm, "hq9000" <psy...@mail.ru> wrote:> >How are you doing it, and how much faster should > >it be? > > >If you do the FFT in 16 bit fixed point it could > >be a lot faster than in 32 bit or 64 bit floating > >point. � > > >What processor are you using? > > Actually the final goal is to create cross-platform application, thus > there could be no any assumtions. > > I can say for sure though that the input will be most likely provided as > double precision float. > > In this case... Does it worth converting the data to 16 bit integer prior > to FFTizing it? 16 bit int would be more than enough goood approximation. > > The question is - how much will I gain? Taking into consideration the cost > of preliminary conversion.If you are working on a modern Pentium-based PC, consider converting to single precision floating point.






