Interface: NoiseCancellation

NoiseCancellation

NoiseCancellation interface provides methods to control noise cancellation at runtime. This interface is exposed on LocalAudioTrack property noiseCancellation. It is available only when NoiseCancellationOptions are specified when creating a LocalAudioTrack

Example

const { connect, createLocalAudioTrack } = require('twilio-video');

// create a local audio track and have it use
// @twilio/krisp-audio-plugin for noise cancellation processing.
const localAudioTrack = await Video.createLocalAudioTrack({
  noiseCancellationOptions: {
    vendor: 'krisp',
    sdkAssetsPath: '/twilio-krisp-audio-plugin/1.0.0/dist'
  }
});

// publish the track to a room
const room = await connect( token, {
  tracks: [localAudioTrack]
  // ... any other connect options
});

// you can enable/disable noise cancellation at runtime
// using noiseCancellation interface exposed by localAudioTrack
function updateNoiseCancellation(enable: boolean) {
  const noiseCancellation = localAudioTrack.noiseCancellation;

  if (noiseCancellation) {
    enable ? noiseCancellation.enable() : noiseCancellation.disable();
  }
}

Members


isEnabled :boolean

Set to true if noise cancellation is currently enabled

Type:
  • boolean

sourceTrack :MediaStreamTrack

Underlying MediaStreamTrack

Type:
  • MediaStreamTrack

vendor :NoiseCancellationVendor

Identifies the vendor

Type:

Methods


disable()

Disables noise cancellation

Returns:

a promise that resolves when operation is complete.

Type
Promise.<void>

enable()

Enables noise cancellation

Returns:

a promise that resolves when operation is complete.

Type
Promise.<void>