- From: Marcus Geelnard <mage@opera.com>
- Date: Wed, 13 Jun 2012 16:47:29 +0200
- To: Philip Jägenstedt <philipj@opera.com>, "olivier Thereaux" <olivier.thereaux@bbc.co.uk>
- Cc: "Audio Working Group" <public-audio@w3.org>
Den 2012-06-13 14:19:08 skrev olivier Thereaux <olivier.thereaux@bbc.co.uk>: > Hi Philip, all, > > On 13 Jun 2012, at 10:21, Philip Jägenstedt wrote: >> >> 2. Semantic tests, to verify that the audio graph actually does the >> correct thing. In general, I think we should try to implement all >> native nodes in JavaScript and verify that the output is the same >> within some margin of error, a graph like: > > I agree with the approach, thanks for starting the discussion. The trick > for us may reside in the "margin of error". Given that our API won't > specify exactly all the algorithms used in e.g filters and the > convolution engine, the output of a given graph will not be exactly the > same from one implementation to another, but should "sound roughly the > same". Defining that "roughly" will be the key to the compliance > statements in the spec, and consequently to the testing effort. > Yes, this is the tricky part. But it can be tackled from two angles: 1. How to define the tests to make sure that an implementation complies with the (quite permissive) spec. 2. Make the specification more stringent in terms of algorithm definitions etc. I think that a good compromise between the two is to specify optimal (in terms of quality) algorithms for all operations, and then add some wording about how close to that ideal solution the generated signal should be (e.g. in terms of sample magnitude and phase deviations etc). An example of this is found in the CSS box shadow specification [1], which reads: "A non-zero blur distance indicates that the resulting shadow should be blurred, such as by a Gaussian filter. The exact algorithm is not defined; however the resulting shadow must approximate (with each pixel being within 5% of its expected value) the image that would be generated by applying to the shadow a Gaussian blur with a standard deviation equal to half the blur radius" [1] http://www.w3.org/TR/css3-background/#box-shadow /Marcus
Received on Wednesday, 13 June 2012 14:48:00 UTC