Noise Suppression technology mutes unwanted background noise, providing clear audio for communication. Applying noise suppression to recorded audio is not a trivial task in Android.
Android provides built-in features and solutions to noise suppression which only works with Android's
Processing other methods and sources of audio is a problem left for a user to solve.
Picovoice's Koala Noise Suppression provides a fast and easy method for processing and suppressing audio on device.
Koala Noise Suppression engine is available for Android versions 5.0 (SDK 21) and later.
Koala Android SDK
To integrate the
Koala Noise Suppression SDK into your Android project, ensure you have included
mavenCentral() in your top-level
build.gradle file, then add the following dependency to your app’s
This example uses AndroidVoiceProcessor to record audio.
Sign up for Picovoice Console
Sign up for Picovoice Console for free and copy your
AccessKey. It handles authentication and authorization.
AccessKey validation and recording with your Android device's microphone, add the following to the app's AndroidManifest.xml file:
Create an instance of the engine with the Koala Builder class by passing in the
AccessKey from the previous step and the Android app context,
and get the singleton instance of
Processing Audio Frames
Koala processes audio in chunks, also known as
audio frames. The
.frameLength property gives the number of audio samples per frame that are required by Koala, while the
.sampleRate property gives the audio sample rate that is required. Audio samples must be 16-bit integers.
VoiceProcessor.addFrameListener to add a listener to
VoiceProcessor that receives audio frames and passes them along to
Koala for processing:
In the case that the next audio frame does not follow the previous one, call
reset before processing audio.
Start processing audio using
VoiceProcessor.start by passing
Koala's frame length and sample rate as arguments:
This will start
VoiceProcessor and the audio frames are passed to the listeners as mentioned above.
To stop processing audio, call
Koala.delete to clear any allocated resources:
For a complete working project, take a look at the Koala Android Demo .
For more information, check out the Koala Noise Suppression product page or refer to the Koala Noise Suppression Android SDK quick start guide.