# Fluence
Source: [https://docs.qualcomm.com/doc/80-70014-16/topic/fluence.html](https://docs.qualcomm.com/doc/80-70014-16/topic/fluence.html)
Echo and noise related problems are quite common in VoIP systems. Speech originates
from the far-end speaker and echoes back with a time delay, causing perception problems. The
method to decrease the echo from the far-end speaker during communication is echo
cancellation and the method to decrease the noise from the microphone channel is noise
suppression. Fluence echo cancellation and noise suppression (ECNS) algorithm provides
stationary and nonstationary noise suppression and echo cancellation.
## ECNS overview
Acoustic echo is significant for hands-free and teleconferencing applications. Echo
generated due to the acoustic path (acoustic coupling) between the loudspeaker and
microphone of a communication device is known as acoustic echo.

- **Echo Canceller** – A simple adaptive filter with self-adjusting
coefficients to cancel out echo. Every echo has an echo path, and is
characterized by an impulse response. The echo canceller adapts its filter
coefficients to the network echo path such that it cancels out the echo.
- Noise Suppression – As devices are used in dynamic environments, a noise
suppressor in the SMECNS helps to suppresses the surrounding stationary
noise
## Recording use case
In recording use cases, Fluence maintains the speech quality in the recording path by
suppressing background noise captured by the microphone.
In single-microphone recording use cases, it is only possible to handle stationary
noise suppression – That is, noise whose frequency content does not change over
time, such as road noise or white noise.

To enable the SMECNS in recording path:
setenforce 0
pactl set-source-port regular0 speaker-mic
parec --rate=48000 --format=s16le --channels=1 --file-format=wav /opt/rec3.wav --device=regular0
Copy to clipboard
## VoIP use case
Fluence is used to reduce noise and eliminate echo in VoIP communication. It can
suppress noise and acoustic echo on the microphone signal.
The SDK provides support for a PulseAudio VoIP source and sink, which developers can
use to develop their own application.

To enable SMECNS on the VoIP path:
| **Record** | setenforce 0
pactl set-source-port voip-tx0 speaker-mic
parec --rate=48000 --format=s16le --channels=1 --file-format=wav /opt/rec3.wav --device=voip-tx0
Copy to clipboard |
| --- | --- |
| **Playback** | setenforce 0
paplay /opt/.wav --device=voip-rx0Copy to clipboard |
**Note:** Be sure to push some PCM file (<FileName>.wav)
to the /opt/ folder.
**Parent Topic:** [Detailed Feature Descriptions](https://docs.qualcomm.com/doc/80-70014-16/topic/detailed_feature_description.html)
Last Published: Jul 15, 2024
[Previous Topic
Detailed Feature Descriptions](https://docs.qualcomm.com/bundle/publicresource/80-70014-16/topics/detailed_feature_description.md)