Re: Music Synthesis

Can you be more specific about the sorts of audio processing algorithms that
would be hard to expose in a library that works on sample arrays?

On Thu, Jun 17, 2010 at 11:34 AM, Chris Rogers <crogers@google.com> wrote:

> Also, I believe it's very important to provide a useful, high-level
> javascript API that's dependable, scalable, and powerful.  Simply providing
> a library of vector calls, and then hoping that javascript will be fast
> enough to take up the slack in a worker thread just doesn't seem realistic.


It would be better to be specific. From experience we don't trust people's
intuitions about what is or isn't possible in Javascript.

It would require all browser vendors to implement worker threads and
> javascript runtimes with real-time constraints in mind to guarantee good
> latency performance and glitch-free operation.  This is extremely difficult
> and is a lot to expect from all the different browser vendors.


We're going to have to go in that direction anyway, for WebGL gaming. (I
assume that no-one's going to suggest we support an entire 3D
first-person-shooter engine API in browsers.) We won't get to hard realtime
guarantees, but we should be able to get pretty good results.

I guess that's a scope question: do we need to have hard latency guarantees
so you can run a performance-quality music synthesizer in a Web browser? I
don't think we do. Not in version 1 anyway.

(If we do need to have such guarantees, this is still "extremely difficult
and is a lot to expect from all the different browser vendors" whatever the
API looks like.)

Rob
-- 
"He was pierced for our transgressions, he was crushed for our iniquities;
the punishment that brought us peace was upon him, and by his wounds we are
healed. We all, like sheep, have gone astray, each of us has turned to his
own way; and the LORD has laid on him the iniquity of us all." [Isaiah
53:5-6]

Received on Thursday, 17 June 2010 00:42:15 UTC