W3C home > Mailing lists > Public > public-audio@w3.org > January to March 2012

RE: fftSize requirement for RealtimeAnalyserNode

From: Chuck Adams <cadams@fender.com>
Date: Fri, 23 Mar 2012 13:18:22 -0700
Message-ID: <BA7323721D505F41BA5E5464FB3361AD059E3FD6@exchangeus.inside.fender>
To: "Raymond Toy" <rtoy@google.com>, "Jussi Kalliokoski" <jussi.kalliokoski@gmail.com>
Cc: "Wei, James" <james.wei@intel.com>, <public-audio@w3.org>
Power of two isn't an arbitrary limit in the FFT, it's a fundamental
piece of what makes it the Fast Fourier Transform.     If you want an
arbitrary number then you can't use the  FFT algorithm, you need the
discrete Fourier transform or the like.

 

 

Chuck Adams

Director - Fender R&D

Fender Musical Instruments

17600 N. Perimeter Drive, Suite 100
Scottsdale, AZ 85255 (480) 845 5229

cadams@fender.com

 

From: Raymond Toy [mailto:rtoy@google.com] 
Sent: Friday, March 23, 2012 9:34 AM
To: Jussi Kalliokoski
Cc: Wei, James; public-audio@w3.org
Subject: Re: fftSize requirement for RealtimeAnalyserNode

 

 

On Thu, Mar 22, 2012 at 4:36 PM, Jussi Kalliokoski
<jussi.kalliokoski@gmail.com> wrote:

On Thu, Mar 22, 2012 at 11:27 PM, Raymond Toy <rtoy@google.com> wrote:

	 

	Do you have a specific need for a non-power of two analysis?
I'm just curious.


It just seems like an arbitrary limit. Most of the time, you probably
want to set the length in seconds, not samples, and then you won't get a
power-of-two.

 

Yes, I'll agree that it's an arbitrary limit.  And, yes, seconds (or
more lilkely, fractions of a second) is probably more useful and scales
better if the sample rate changes.

 

	 

		Also, FFTW uses the GPL license, so if the browser is
also not GPL, there are potential legal issues.  This is where you go
ask a lawyer. 

	
	There are other ones as well (kissfft is BSD 3-clause for
example, IIRC), but I don't think the licensing of certain FFT
implementations is a valid argument to base the spec on.

 

No, but you mentioned using FFTW in particular which has some licensing
issues. 

	
	Also, the algorithm isn't complex, you could implement it
without a library.

 

Agreed.  But getting a fast one is complex.

 

Thanks for the info,

 

Ray

 




CONFIDENTIALITY NOTICE:  This e-mail and any accompanying documents contain
confidential information intended for a specific individual purpose. This
information is private and protected by law.  If you are not the intended
recipient, you are hereby notified that any disclosure, copying or
distribution, or the taking of any action based on the contents of this
information, is strictly prohibited.  If you have received this transmission in
error, please delete it.  Thank you.
Received on Friday, 23 March 2012 20:18:54 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 23 March 2012 20:18:58 GMT