Chris -

On Aug 24, 2010, at 4:47 PM, Chris Rogers wrote:

Hi Simon, thanks for helping here.

By the way, anybody who is interested can look at the files in:
https://svn.webkit.org/repository/webkit/branches/audio/WebCore/audio/

There are actually a number of audio files which could be considered re-usable, although I know of nothing at this time other than the web audio API which would use them:

AudioBus.cpp
Biquad.cpp
Reverb.cpp
FFTConvolver.cpp (and other FFT-related files)

possibly also in this category are:
Cone.cpp
Distance.cpp
MidSide.cpp
SinWave.cpp
Panner.cpp (and subclasses)
(maybe a few others I've missed)

Basically, these are the lowest-level building blocks which the higher-level parts (such as AudioContext, and AudioNode) use.  These lowest-level building blocks do not (or should not) have any dependencies to the higher-level code which implement the actual API (and have IDL files).  They also don't have any dependencies on other parts of WebCore, although they do use stuff in wtf.

So are you suggesting:

WebCore/webaudio                <--- IDL files and API implementation
WebCore/platform/audio        <--- lower-level building blocks such as AudioBus.cpp

  This sounds good to me!

eric