- From: Joe Berkovitz <joe@noteflight.com>
- Date: Wed, 10 Aug 2016 11:43:43 -0400
- To: Hongchan Choi <hongchan@google.com>
- Cc: Audio Working Group <public-audio@w3.org>
- Message-ID: <CA+ojG-brAxqSsX86if_x6mJCjkOqtKqUxQUqv0N43YK6+16JQg@mail.gmail.com>
Hi Hongchan, It seems as though we are very close to absorbing this feedback from Domenic into the spec. The above two issues still need resolution but the path seems clear. Time is starting to run out prior to TPAC. How close are we to having the TAG feedback that Paul and Ray wanted? I recall that you wanted Alex Russell to give some feedback also. It would be great if we could have all AudioWorklet feedback in hand and a plan for responding to it for tomorrow's call. Best, . . . . . ...Joe Joe Berkovitz President Noteflight LLC +1 978 314 6271 49R Day Street Somerville MA 02144 USA "Bring music to life" www.noteflight.com ---------- Forwarded message ---------- From: Domenic Denicola <notifications@github.com> Date: Mon, Aug 8, 2016 at 11:31 PM Subject: Re: [WebAudio/web-audio-api] Add AudioWorklet section (#869) To: WebAudio/web-audio-api <web-audio-api@noreply.github.com> Cc: Joe Berkovitz <joe@noteflight.com>, Comment <comment@noreply.github.com> It's a subclass derived from AudioWorkletProcessor. This concept of 'two-objects-in-different-threads' is quite new to the world, even for the Worklet. However, we need two objects that represents the 'main thread interface' and the 'audio thread interface' respectively. It might be nice to have your perspective on this because the discussion has been going on only inside of WG. Two objects in different threads seem fine. The problem is that the spec as written creates the objects and then does nothing with them. This means that they can be garbage collected immediately. You need to specify where to store them and what holds references to them and uses them later. Hmm. This is surprising because this process method is the core of AudioWorkletProcessor. As you pointed this must be implemented by the subclass. If you don't, you get the silence out of this node. (or should we throw? this needs to be defined too.) How can we capture the interface of this method if we cannot put it on the IDL? The IDL is just instructions for how bindings generators in implementations should perform conversions and create APIs. It doesn't have anything to do with the web developer-facing interface and requirements for using the API. That is better documented in, well, documentation, not in normative interface definition language. Since the implementation should not have a process method, it must not appear in the IDL.
Received on Wednesday, 10 August 2016 15:44:16 UTC