# Audio Quality

**URL:** <https://mediasoup.discourse.group/t/audio-quality/3537>\
**Category:** Off Topic\
**Created:** [November 8, 2021, 12:15pm UTC](https://mediasoup.discourse.group/t/audio-quality/3537 "2021-11-08T12:15:19Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![metasebiya](https://avatars.discourse-cdn.com/v4/letter/m/b77776/32.png) [@metasebiya](https://mediasoup.discourse.group/u/metasebiya)\
**Post date:** [November 8, 2021, 12:15pm UTC](https://mediasoup.discourse.group/t/audio-quality/3537/1 "2021-11-08T12:15:19Z")

</div>

Hello, I been using mediasoup as a mediaserver for my project (Live Streaming Events) but there are background noises, echos and this sounds are unpleasing for the hearing side, is there any ways to solve this problem with mediasoup, thanks in advance

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/nazar-pc/32/369_2.png) [@nazar-pc](https://mediasoup.discourse.group/u/nazar-pc)\
**Post date:** [November 8, 2021, 12:16pm UTC](https://mediasoup.discourse.group/t/audio-quality/3537/2 "2021-11-08T12:16:43Z")

</div>

This has nothing to do with mediasoup since mediasoup does no audio or video processing whatsoever.

Typical WebRTC implementation has both echo cancellation and noise suppression built-in, use it.

---

<div class="post-metadata">

**Author:** ![aetheon](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/aetheon/32/39_2.png) [@aetheon](https://mediasoup.discourse.group/u/aetheon)\
**Post date:** [November 8, 2021, 4:31pm UTC](https://mediasoup.discourse.group/t/audio-quality/3537/3 "2021-11-08T16:31:57Z")

</div>

You can try searching for Web Audio APIs filters to remove environment noise. I remember seeing some promising libraries/solutions that could be used before uploading by audio producers.

The other solution is to process the audio server side by piping it, processing it and routing it after.

---

<div class="post-metadata">

**Author:** ![Normando](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/normando/32/1046_2.png) [@Normando](https://mediasoup.discourse.group/u/Normando)\
**Post date:** [November 10, 2021, 6:16am UTC](https://mediasoup.discourse.group/t/audio-quality/3537/4 "2021-11-10T06:16:13Z")

</div>

Look at this:

> [@Audio artifacts (commpression noise)](https://mediasoup.discourse.group/t/audio-artifacts-commpression-noise/3070/5):
>
> Try useDtx: false (it’s boolean, not number) Also try disabling autoGainControl and echoCancellation. Client snippet code: async function getUserMedia() { let stream; try { stream = await navigator.mediaDevices.getUserMedia({ audio: { autoGainControl: false, noiseSuppression: true, echoCancellation: false }, video: false }) } catch (err) { console.error('getUserMedia() failed:', err.message); throw err; } return stream; } Also test di…

---

<div class="post-metadata">

**Author:** ![BronzedBroth](https://avatars.discourse-cdn.com/v4/letter/b/ad7895/32.png) [@BronzedBroth](https://mediasoup.discourse.group/u/BronzedBroth)\
**Post date:** [November 10, 2021, 6:33am UTC](https://mediasoup.discourse.group/t/audio-quality/3537/5 "2021-11-10T06:33:04Z")

</div>

echoCancellation,  
autoGainControl,  
noiseSuppression

Are all supported by the browsers, some may or may not be allowed but you can still pass the parameters when opening the audio device. You can set channelCount. This is done 100% client side, server side processing is expensive in these regards…

Additionally, audio realm is not perfect, many users have issues with daily audio driving. It’s not the norm to have professional studio recording gear and to that, some filters exist for user on client side but overall leave quality up to the user and the client. If it’s bad, they’ll upgrade their setup or leave no big deal…

This is non mediasoup related.
