[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ja/docs/Web/API/AudioWorkletProcessor/process [Back]  [Original]

AudioWorkletProcessor: process() - Web API | MDN

MDN Web Docs

View in English Always switch to English

AudioWorkletProcessor: process()

AudioWorkletProcessor process()

AudioWorkletProcessor AudioWorkletProcessor process()

AudioWorkletNode (rendering quantum ) process()

: 128 128 32 ( CPU )

js
process(inputs, outputs, parameters)

inputs

128 Float32Array inputs[n][m][i] n m i

[-1 .. 1]

(AudioWorkletNode ) n inputs[n] (0 )

channelCount channelCountMode

outputs

inputs process()

parameters

Float32Array parameterDescriptors AudioParam name Float32Array

"a-rate" 128 1 128 1

"k-rate" 1 128

AudioWorkletNode Boolean

AudioWorkletProcessor process()

true API false

3

  1. AudioWorkletProcessor process true false AudioBufferSourceNode process true false ( AudioBufferSourceNode play )
  2. process false GainNode
  3. (0 ) ( 0 ) process true DelayNode delayTime

: return undefined false return

process() processorerror

AudioWorkletProcessor customGain

js
class WhiteNoiseProcessor extends AudioWorkletProcessor {
  process(inputs, outputs, parameters) {
    // 
    const output = outputs[0];
    // 
    output.forEach((channel) => {
      for (let i = 0; i < channel.length; i++) {
        // 
        // Math.random  [0; 1)  [-1; 1] 
        // 1 
        channel[i] =
          (Math.random() * 2 - 1) *
          // 
          //  k-rate  a-rate 
          // 1  128 
          (parameters["customGain"].length > 1
            ? parameters["customGain"][i]
            : parameters["customGain"][0]);
      }
    });
    // 
    // 
    //  true 
    return true;
  }
  // process  customGain 
  static get parameterDescriptors() {
    return [
      {
        name: "customGain",
        defaultValue: 1,
        minValue: 0,
        maxValue: 1,
        automationRate: "a-rate",
      },
    ];
  }
}

Web Audio API
# process


Web Proxy Viewer  |  New URL  |  Original Page