W3C home > Mailing lists > Public > public-audio@w3.org > October to December 2012

Re: AudioBuffer mutability

From: Ehsan Akhgari <ehsan.akhgari@gmail.com>
Date: Mon, 29 Oct 2012 18:56:23 -0400
Message-ID: <CANTur_4DTGqepdjrwmPKDhiTKmtdt8-KTQvhajDuhzYWzdfFew@mail.gmail.com>
To: robert@ocallahan.org
Cc: Chris Rogers <crogers@google.com>, public-audio@w3.org
On Mon, Oct 29, 2012 at 5:41 PM, Robert O'Callahan <robert@ocallahan.org>wrote:

> I think in this case this problem is actually easy to solve without even
> changing the API. The typed array spec defines a "neuter" operation on
> ArrayBuffers that makes the underlying data inaccessible through the
> ArrayBuffer and any objects (such as Float32Array) that depend on the
> ArrayBuffer:
> http://www.khronos.org/registry/typedarray/specs/latest/#9.2
> This is used by Web Workers to enable safe zero-copy transfer of ownership
> of the data from one thread to another. We could say that, for a given
> AudioBuffer B, the first time start() is called on an AudioBufferSourceNode
> whose 'buffer' is B, B's channel ArrayBuffers are neutered. Any future
> attempts to modify the data will then fail, probably with an "array index
> out of bounds" error.
> How does that sound?

This makes the most sense to me.

Received on Monday, 29 October 2012 22:57:31 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:03:14 UTC