Could-based noise cancelling software
- On July 9, 2023
- speech to text
Audio filtering, like noise cancellation and echo cancellation, can be performed on the sending side (i.e. near-end), receiving side (i.e. far-end) or on the network. Each option has its own advantages and disadvantages. In this post, we will discuss the noise cancelling filtering and the cases when it is likely or recommended to perform it in the cloud/network as opposed to preforming it on the client side.
Noise cancelling software is responsible to remove any background noise from the audio. The background noise might be non-human sounds like dog barks and might also be voices of other people talking in the background. The majority of noise cancelling algorithms can provide similar quality regardless if they are executed in the near-end client, cloud or in the far-end client. Therefore, from quality perspective these algorithms are indifferent to the location in which they are executed.
Nevertheless, there are some cases in which running the noise reduction software on the cloud might be required or provide an advantage. Following are the typical use cases for such scenarios:
- Supporting clients that have limited computational power. If the client phone is a desk-phone or a softphones running on a low-end hardware you cannot overload the phone with additional processing and therefore required to perform the noise cancelling in the cloud.
- Supporting far-end clients. The far-end clients are usually outside of your organization and you cannot control them or install anything on them. Therefore, if you want to clean incoming audio the processing must be performed either in the cloud or in the near-end client.
- Supporting Speech To Text (STT) and similar audio analytics engines. When running these engines sometimes the best results are received when their input is the original audio before the noise was removed. In order to allow the flexibility of being able to provide the STT engine with the original audio, the noise cancelling processing must be done in the cloud.
As we can see there are cases, in which you would like or required to run the noise cancellation software in the cloud. As opposed to processing in the client in which only a single call exists at any given point in time, in the cloud there can be many calls running simultaneously. Therefore, the main requirement from the noise cancelling software is that it will be efficient and utilize minimal processing power to allow filtering simultaneous many calls.
In addition, for privacy and regulation purpose it might be required that the cloud, in which the audio processing is done, will be a private cloud and therefore the noise cancellation should be able to work without any connection to the internet.