The normalize
property of the ConvolverNode
interface is a boolean that controls whether the impulse response from the buffer will be scaled by an equal-power normalization when the buffer
attribute is set, or not.
Its default value is true
in order to achieve a more uniform output level from the convolver, when loaded with diverse impulse responses. If normalize is set to false
, then the convolution will be rendered with no pre-processing/scaling of the impulse response. Changes to this value do not take effect until the next time the buffer
attribute is set.
var audioCtx = new AudioContext(); var convolver = audioCtx.createConvolver(); convolver.normalize = false;
A boolean.
var audioCtx = new (window.AudioContext || window.webkitAudioContext)(); var convolver = audioCtx.createConvolver(); ... // grab audio track via XHR for convolver node var soundSource, concertHallBuffer; ajaxRequest = new XMLHttpRequest(); ajaxRequest.open('GET', 'concert-crowd.ogg', true); ajaxRequest.responseType = 'arraybuffer'; ajaxRequest.onload = function() { var audioData = ajaxRequest.response; audioCtx.decodeAudioData(audioData, function(buffer) { concertHallBuffer = buffer; soundSource = audioCtx.createBufferSource(); soundSource.buffer = concertHallBuffer; }, function(e){"Error with decoding audio data" + e.err}); } ajaxRequest.send(); ... convolver.normalize = false; // must be set before the buffer, to take effect convolver.buffer = concertHallBuffer;
Specification | Status | Comment |
---|---|---|
Web Audio API The definition of 'normalize' in that specification. | Working Draft |
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | 10.0webkit | (Yes) | 25.0 (25.0) | No support | 15.0webkit 22 (unprefixed) | 6.0webkit |
Feature | Android | Edge | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|---|
Basic support | ? | (Yes) | 26.0 | 1.2 | ? | ? | ? | 33.0 |
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ConvolverNode/normalize