A NoiseGate node is intended to sit between a microphone and the outgoing or sending WebRTC connection. It will suppress audio at levels below the adjustable threshold. The NoiseGate node helps remove background noise and reduce the network bandwidth used to send audio. setupHRTF should be called before creating a NoiseGate node.

Example

let noiseGate = new NoiseGate(audioContext);
if (muted) {
noiseGate.setThreshold(0);
} else {
noiseGate.setThreshold(-40);
}
let sourceNode = audioContext.createMediaStreamSource(mediaStream);
sourceNode.connect(noiseGate).connect(destinationNode);

Hierarchy

  • AudioWorkletNode
    • NoiseGate

Constructors

  • Parameters

    • audioContext: AudioContext

      The AudioContext to use. It should be created with a sample-rate of 48000.

    Returns NoiseGate

Properties

channelCount: number
channelCountMode: ChannelCountMode
channelInterpretation: ChannelInterpretation
context: BaseAudioContext
numberOfInputs: number
numberOfOutputs: number
onprocessorerror: ((this: AudioWorkletNode, ev: Event) => any)

Type declaration

    • (this: AudioWorkletNode, ev: Event): any
    • Parameters

      • this: AudioWorkletNode
      • ev: Event

      Returns any

parameters: AudioParamMap
port: MessagePort

Methods

  • Type Parameters

    • K extends "processorerror"

    Parameters

    • type: K
    • listener: ((this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]) => any)
        • (this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]): any
        • Parameters

          • this: AudioWorkletNode
          • ev: AudioWorkletNodeEventMap[K]

          Returns any

    • Optional options: boolean | AddEventListenerOptions

    Returns void

  • Parameters

    • type: string
    • listener: EventListenerOrEventListenerObject
    • Optional options: boolean | AddEventListenerOptions

    Returns void

  • Parameters

    • destinationNode: AudioNode
    • Optional output: number
    • Optional input: number

    Returns AudioNode

  • Parameters

    • destinationParam: AudioParam
    • Optional output: number

    Returns void

  • Returns void

  • Parameters

    • output: number

    Returns void

  • Parameters

    • destinationNode: AudioNode

    Returns void

  • Parameters

    • destinationNode: AudioNode
    • output: number

    Returns void

  • Parameters

    • destinationNode: AudioNode
    • output: number
    • input: number

    Returns void

  • Parameters

    • destinationParam: AudioParam

    Returns void

  • Parameters

    • destinationParam: AudioParam
    • output: number

    Returns void

  • Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.

    Parameters

    • event: Event

    Returns boolean

  • Type Parameters

    • K extends "processorerror"

    Parameters

    • type: K
    • listener: ((this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]) => any)
        • (this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]): any
        • Parameters

          • this: AudioWorkletNode
          • ev: AudioWorkletNodeEventMap[K]

          Returns any

    • Optional options: boolean | EventListenerOptions

    Returns void

  • Parameters

    • type: string
    • listener: EventListenerOrEventListenerObject
    • Optional options: boolean | EventListenerOptions

    Returns void

  • Parameters

    • value: number

      A negative value between -80 and 0 which indicates a minimum decible level for the noise-gate to stop suppressing audio.

    Returns void

© 2023 High Fidelity, Inc. | All rights reserved Terms of Service | Privacy Policy