Learn how to add Noise Suppression, like the Krisp noise cancelling app, to any web app. In this tutorial, We use Picovoice Koala Noise Suppression Web SDK. Koala performs speech enhancement locally, keeping your voice data private (i.e. GDPR and HIPPA compliant by design). Furthermore, by running on the device, Koala guarantees real-time processing with minimum latency.

Noise Suppression is also known as Noise Cancellation and Speech Enhancement.


  1. Create a new folder and initialize an NPM project:
  1. Install the dependencies:
  1. Install http-server as a development dependency:
  1. Download the Koala model (i.e. Deep Neural Network). From the project folder, run the following to turn the binary model into a base64 string. Remember to replace ${DOWNLOADED_MODEL_PATH} with the path to the model you downloaded (e.g. ~/Downloads/koala_params.pv on my Ubuntu machine).
  1. Create a boilerplate HTML file called index.html with the content below:
  1. Run the local server to load the page:

You can see the page at http://localhost:5000.

  1. Sign up for Picovoice Console

Log in to (sign up for) Picovoice Console . It is free, and no credit card is required! Copy your AccessKey to the clipboard.

  1. Add JavaScript code to initialize Koala, record audio using the microphone, and process in real-time using Koala. Remember to replace ${ACCESS_KEY} with your AccessKey copied from the Picovoice Console.
  1. Add start button:
  1. Press the start button and monitor the console logs.

Source Code

The source code for a fully-working demo with Koala is available on GitHub .