Lägg till förbättringar av ljudkvaliteten i ljudsamtalsupplevelsen

Funktionerna för ljudeffekter i Azure Communication Services kan förbättra ljudsamtalen genom att filtrera bort oönskade bakgrundsljud. Brusreducering är en teknik som tar bort bakgrundsljud från ljudsamtal. Om du eliminerar bakgrundsbrus blir det lättare att prata och lyssna. Brusdämpning kan också minska distraktioner och trötthet som orsakas av bullriga platser. Om du till exempel tar ett Azure Communication Services WebJS-samtal i ett bullrigt kafé kan du göra samtalsupplevelsen bättre om du aktiverar brusreducering.

Använd ljudeffekter: Installera NPM-paketet för samtalseffekter

Viktigt!

I den här självstudien används Azure Communication Services Calling SDK-versionen 1.28.4 eller senare, tillsammans med Azure Communication Services Calling Effects SDK-versionen 1.1.1 eller senare. Den stabila versionen 1.28.4 av allmän tillgänglighet (GA) och senare av calling SDK stöder funktioner för brusreducering. Om du väljer att använda den offentliga förhandsversionen stöder anropande SDK-versioner 1.24.2-beta.1 och senare även brusreducering.

Aktuellt webbläsarstöd för att lägga till ljudbrusundertryckningseffekter är endast tillgängligt i Chrome- och Edge-skrivbordswebbläsare.

Biblioteket för anropseffekter kan inte användas fristående. Det fungerar bara när det används med Azure Communication Services Calling-klientbiblioteket för WebJS.

npm install Använd kommandot för att installera Azure Communication Services Audio Effects SDK för JavaScript.

Om du använder GA-versionen av Calling SDK måste du använda GA-versionen av Calling Effects SDK.

@azure/communication-calling-effects@1.1.1

Om du använder den offentliga förhandsversionen av Calling SDK måste du använda betaversionen av Calling Effects SDK.

@azure/communication-calling-effects@1.1.1-beta

Läs in biblioteket för brusundertryckningseffekter

Information om gränssnittet som beskriver egenskaper och metoder för ljudeffekter finns på dokumentationssidan för API för api för ljudeffekter .

Om du vill använda ljudeffekter för brusreducering i Azure Communication Services Calling SDK behöver du den LocalAudioStream egenskap som för närvarande finns i anropet. Du behöver åtkomst till -API:et AudioEffects för LocalAudioStream egenskapen för att starta och stoppa ljudeffekter.

import * as AzureCommunicationCallingSDK from '@azure/communication-calling'; 
import { DeepNoiseSuppressionEffect } from '@azure/communication-calling-effects'; 

// Get LocalAudioStream from the localAudioStream collection on the call object.
// 'call' here represents the call object.
const localAudioStreamInCall = call.localAudioStreams[0];

// Get the audio effects feature API from LocalAudioStream
const audioEffectsFeatureApi = localAudioStreamInCall.feature(AzureCommunicationCallingSDK.Features.AudioEffects);

// Subscribe to useful events that show audio effects status
audioEffectsFeatureApi.on('effectsStarted', (activeEffects: ActiveAudioEffects) => {
    console.log(`Current status audio effects: ${activeEffects}`);
});


audioEffectsFeatureApi.on('effectsStopped', (activeEffects: ActiveAudioEffects) => {
    console.log(`Current status audio effects: ${activeEffects}`);
});


audioEffectsFeatureApi.on('effectsError', (error: AudioEffectErrorPayload) => {
    console.log(`Error with audio effects: ${error.message}`);
});

Kontrollera vilka ljudeffekter som är aktiva

Om du vill kontrollera vilka brusundertryckningseffekter som för närvarande är aktiva kan du använda activeEffects egenskapen .

Egenskapen activeEffects returnerar ett objekt med namnen på de aktuella aktiva effekterna.

// Use the audio effects feature API.
const currentActiveEffects = audioEffectsFeatureApi.activeEffects;

// Create the noise suppression instance.
const deepNoiseSuppression = new DeepNoiseSuppressionEffect();
// We recommend that you check support for the effect in the current environment by using the isSupported API 
// method. Remember that noise supression is only supported on desktop browsers for Chrome and Edge.

const isDeepNoiseSuppressionSupported = await audioEffectsFeatureApi.isSupported(deepNoiseSuppression);
if (isDeepNoiseSuppressionSupported) {
    console.log('Noise supression is supported in local browser environment');
}

// To start Communication Services Deep Noise Suppression
await audioEffectsFeatureApi.startEffects({
    noiseSuppression: deepNoiseSuppression
});

// To stop Communication Services Deep Noise Suppression
await audioEffectsFeatureApi.stopEffects({
    noiseSuppression: true
});

Starta ett samtal med brusreducering automatiskt aktiverat

Du kan starta ett samtal med brusreducering aktiverat. Skapa en ny LocalAudioStream egenskap med AudioDeviceInfo (källan LocalAudioStream ska inte vara en rå MediaStream egenskap för att använda ljudeffekter) och skicka den i CallStartOptions.audioOptions:

// As an example, here we're simply creating LocalAudioStream by using the current selected mic on DeviceManager.
const audioDevice = deviceManager.selectedMicrophone;
const localAudioStreamWithEffects = new AzureCommunicationCallingSDK.LocalAudioStream(audioDevice);
const audioEffectsFeatureApi = localAudioStreamWithEffects.feature(AzureCommunicationCallingSDK.Features.AudioEffects);

// Start effect
await audioEffectsFeatureApi.startEffects({
    noiseSuppression: deepNoiseSuppression
});

// Pass LocalAudioStream in audioOptions in call start/accept options.
await call.startCall({
    audioOptions: {
        muted: false,
        localAudioStreams: [localAudioStreamWithEffects]
    }
});

Aktivera brusdämpning under ett pågående samtal

Du kan starta ett samtal och inte ha brusundertryckning aktiverat. Miljön kan bli bullrig så att du måste aktivera brusreducering. Om du vill aktivera brusundertryckning kan du använda API:et audioEffectsFeatureApi.startEffects .

// Create the noise supression instance 
const deepNoiseSuppression = new DeepNoiseSuppressionEffect();

// Get LocalAudioStream from the localAudioStream collection on the call object
// 'call' here represents the call object.
const localAudioStreamInCall = call.localAudioStreams[0];

// Get the audio effects feature API from LocalAudioStream
const audioEffectsFeatureApi = localAudioStreamInCall.feature(AzureCommunicationCallingSDK.Features.AudioEffects);

// We recommend that you check support for the effect in the current environment by using the isSupported method on the feature API. Remember that noise supression is only supported on desktop browsers for Chrome and Edge.
const isDeepNoiseSuppressionSupported = await audioEffectsFeatureApi.isSupported(deepNoiseSuppression);
if (isDeepNoiseSuppressionSupported) {
    console.log('Noise supression is supported in the current browser environment');
}

// To start Communication Services Deep Noise Suppression
await audioEffectsFeatureApi.startEffects({
    noiseSuppression: deepNoiseSuppression
});

// To stop Communication Services Deep Noise Suppression
await audioEffectsFeatureApi.stopEffects({
    noiseSuppression: true
});

Mer information om api-funktioner finns på dokumentationssidan för funktionsgränssnittet för ljudeffekter.

Lär dig hur du konfigurerar ljudfilter med interna anropande SDK:er

Azure Communication Services-ljudeffekterna erbjuder filter som kan förbättra ditt ljudsamtal. För interna plattformar (Android, iOS och Windows) kan du konfigurera följande filter.

Ekoreducering

Du kan eliminera akustiskt eko som orsakas av att uppringarens röst ekar tillbaka in i mikrofonen efter att den har genererats från högtalaren. Ekoreducering garanterar tydlig kommunikation.

Du kan konfigurera filtret före och under ett anrop. Du kan endast växla ekoreducering om musikläget är aktiverat. Som standard är det här filtret aktiverat.

Brusreducering

Du kan förbättra ljudkvaliteten genom att filtrera bort oönskade bakgrundsljud som att skriva, luftkonditionering eller gatuljud. Den här tekniken säkerställer att rösten är skarp och tydlig för att underlätta effektivare kommunikation.

Du kan konfigurera filtret före och under ett anrop. De lägen som är tillgängliga för närvarande är Av, Auto, Låg och Hög. Som standard är den här funktionen inställd på Hög.

Automatisk vinstkontroll

Du kan automatiskt justera mikrofonens volym för att säkerställa konsekventa ljudnivåer under hela samtalet.

  • Analog automatisk gain-kontroll är ett filter som endast är tillgängligt före ett anrop. Som standard är det här filtret aktiverat.
  • Digital automatisk kontroll är ett filter som endast är tillgängligt före ett anrop. Som standard är det här filtret aktiverat.

Musikläge

Musikläge är ett filter som är tillgängligt före och under ett anrop. Mer information om musikläge finns i Musikläge på Native Calling SDK. Musikläget fungerar bara på interna plattformar över en-mot-en- eller gruppsamtal. Det fungerar inte i en-till-en-anrop mellan interna plattformar och webben. Som standard är musikläget inaktiverat.

Förutsättningar

Installera SDK:n

Leta upp filen på projektnivå build.gradle och lägg till mavenCentral() i listan med lagringsplatser under buildscript och allprojects:

buildscript {
    repositories {
    ...
        mavenCentral()
    ...
    }
}
allprojects {
    repositories {
    ...
        mavenCentral()
    ...
    }
}

Lägg sedan till följande rader i modulnivåfilen build.gradle i dependencies avsnittet:

dependencies {
    ...
    implementation 'com.azure.android:azure-communication-calling:1.0.0'
    ...
}

Initiera nödvändiga objekt

Om du vill skapa en CallAgent instans måste du anropa createCallAgent metoden på en CallClient instans. Det här anropet returnerar asynkront ett CallAgent instansobjekt.

Metoden createCallAgent tar CommunicationUserCredential som ett argument som kapslar in en åtkomsttoken.

Om du vill komma åt DeviceManagermåste du skapa en callAgent instans först. Sedan kan du använda CallClient.getDeviceManager metoden för att hämta DeviceManager.

String userToken = '<user token>';
CallClient callClient = new CallClient();
CommunicationTokenCredential tokenCredential = new CommunicationTokenCredential(userToken);
android.content.Context appContext = this.getApplicationContext(); // From within an activity, for instance
CallAgent callAgent = callClient.createCallAgent(appContext, tokenCredential).get();
DeviceManager deviceManager = callClient.getDeviceManager(appContext).get();

Om du vill ange ett visningsnamn för anroparen använder du den här alternativa metoden:

String userToken = '<user token>';
CallClient callClient = new CallClient();
CommunicationTokenCredential tokenCredential = new CommunicationTokenCredential(userToken);
android.content.Context appContext = this.getApplicationContext(); // From within an activity, for instance
CallAgentOptions callAgentOptions = new CallAgentOptions();
callAgentOptions.setDisplayName("Alice Bob");
DeviceManager deviceManager = callClient.getDeviceManager(appContext).get();
CallAgent callAgent = callClient.createCallAgent(appContext, tokenCredential, callAgentOptions).get();

Du kan använda ljudfilterfunktionen för att tillämpa olika alternativ för förbearbetning av ljud på utgående ljud. De två typerna av ljudfilter är OutgoingAudioFilters och LiveOutgoingAudioFilters. Använd OutgoingAudioFilters för att ändra inställningarna innan anropet startar. Använd LiveOutgoingAudioFilters för att ändra inställningarna medan ett anrop pågår.

Du måste först importera den anropande SDK:n och de associerade klasserna:

import com.azure.android.communication.calling.OutgoingAudioOptions;
import com.azure.android.communication.calling.OutgoingAudioFilters;
import com.azure.android.communication.calling.LiveOutgoingAudioFilters;

Innan ett samtal startar

Du kan använda OutgoingAudioFilters när ett samtal startar.

Börja med att skapa en OutgoingAudioFilters egenskap och skicka den till OutgoingAudioOptions, som du ser i följande kod:

OutgoingAudioOptions outgoingAudioOptions = new OutgoingAudioOptions();
OutgoingAudioFilters filters = new OutgoingAudioFilters();
filters.setNoiseSuppressionMode(NoiseSuppressionMode.HIGH);
filters.setAnalogAutomaticGainControlEnabled(true);
filters.setDigitalAutomaticGainControlEnabled(true);
filters.setMusicModeEnabled(true);
filters.setAcousticEchoCancellationEnabled(true); 
outgoingAudioOptions.setAudioFilters(filters);

Under samtalet

Du kan ansöka LiveOutgoingAudioFilters när ett samtal har startats. Du kan hämta det här objektet från anropsobjektet under anropet. Om du vill ändra inställningen i LiveOutgoingAudioFiltersanger du medlemmarna i klassen till ett giltigt värde och de tillämpas.

Endast en delmängd av filtren som är tillgängliga från OutgoingAudioFilters är tillgängliga under ett aktivt anrop. De är musikläge, ekoreducering och brusreduceringsläge.

LiveOutgoingAudioFilters filters = call.getLiveOutgoingAudioFilters();
filters.setMusicModeEnabled(false);
filters.setAcousticEchoCancellationEnabled(false);
filters.setNoiseSuppressionMode(NoiseSuppressionMode.HIGH);

Lär dig hur du konfigurerar ljudfilter med interna anropande SDK:er

Azure Communication Services-ljudeffekterna erbjuder filter som kan förbättra ditt ljudsamtal. För interna plattformar (Android, iOS och Windows) kan du konfigurera följande filter.

Ekoreducering

Du kan eliminera akustiskt eko som orsakas av att uppringarens röst ekar tillbaka in i mikrofonen efter att den har genererats från högtalaren. Ekoreducering garanterar tydlig kommunikation.

Du kan konfigurera filtret före och under ett anrop. Du kan endast växla ekoreducering om musikläget är aktiverat. Som standard är det här filtret aktiverat.

Brusreducering

Du kan förbättra ljudkvaliteten genom att filtrera bort oönskade bakgrundsljud som att skriva, luftkonditionering eller gatuljud. Den här tekniken säkerställer att rösten är skarp och tydlig för att underlätta effektivare kommunikation.

Du kan konfigurera filtret före och under ett anrop. De lägen som är tillgängliga för närvarande är Av, Auto, Låg och Hög. Som standard är den här funktionen inställd på Hög.

Automatisk vinstkontroll

Du kan automatiskt justera mikrofonens volym för att säkerställa konsekventa ljudnivåer under hela samtalet.

  • Analog automatisk gain-kontroll är ett filter som endast är tillgängligt före ett anrop. Som standard är det här filtret aktiverat.
  • Digital automatisk kontroll är ett filter som endast är tillgängligt före ett anrop. Som standard är det här filtret aktiverat.

Musikläge

Musikläge är ett filter som är tillgängligt före och under ett anrop. Mer information om musikläge finns i Musikläge på Native Calling SDK. Musikläget fungerar bara på interna plattformar över en-mot-en- eller gruppsamtal. Det fungerar inte i en-till-en-anrop mellan interna plattformar och webben. Som standard är musikläget inaktiverat.

Förutsättningar

Konfigurera systemet

Följ de här stegen för att konfigurera systemet.

Skapa Xcode-projektet

I Xcode skapar du ett nytt iOS-projekt och väljer mallen Enkel vyapp . Den här artikeln använder SwiftUI-ramverket, så du bör ange Language till Swift och ange Gränssnitt till SwiftUI.

Du kommer inte att skapa tester i den här artikeln. Avmarkera kryssrutan Inkludera tester .

Skärmbild som visar fönstret för att skapa ett projekt i Xcode.

Installera paketet och beroenden med hjälp av CocoaPods

  1. Skapa en Podfile för ditt program, som i det här exemplet:

    platform :ios, '13.0'
    use_frameworks!
    target 'AzureCommunicationCallingSample' do
        pod 'AzureCommunicationCalling', '~> 1.0.0'
    end
    
  2. Kör pod install.

  3. Öppna .xcworkspace med Xcode.

Begär åtkomst till mikrofonen

För att få åtkomst till enhetens mikrofon måste du uppdatera appens egenskapslista för information med hjälp NSMicrophoneUsageDescriptionav . Ange det associerade värdet till en sträng som ingår i dialogrutan som systemet använder för att begära åtkomst från användaren.

Högerklicka på posten Info.plist i projektträdet och välj sedan Öppna som>källkod. Lägg till följande rader i avsnittet på den översta nivån <dict> och spara sedan filen.

<key>NSMicrophoneUsageDescription</key>
<string>Need microphone access for VOIP calling.</string>

Konfigurera appramverket

Öppna projektets ContentView.swift fil. Lägg till en import deklaration överst i filen för att importera AzureCommunicationCalling biblioteket. Importera dessutom AVFoundation. Du behöver den för begäranden om ljudbehörighet i koden.

import AzureCommunicationCalling
import AVFoundation

Initiera CallAgent

Om du vill skapa en CallAgent instans från CallClientmåste du använda en callClient.createCallAgent metod som asynkront returnerar ett CallAgent objekt när det har initierats.

Skicka ett CommunicationTokenCredential objekt för att skapa en anropsklient:

import AzureCommunication

let tokenString = "token_string"
var userCredential: CommunicationTokenCredential?
do {
    let options = CommunicationTokenRefreshOptions(initialToken: token, refreshProactively: true, tokenRefresher: self.fetchTokenSync)
    userCredential = try CommunicationTokenCredential(withOptions: options)
} catch {
    updates("Couldn't created Credential object", false)
    initializationDispatchGroup!.leave()
    return
}

// tokenProvider needs to be implemented by Contoso, which fetches a new token
public func fetchTokenSync(then onCompletion: TokenRefreshOnCompletion) {
    let newToken = self.tokenProvider!.fetchNewToken()
    onCompletion(newToken, nil)
}

Skicka objektet CommunicationTokenCredential som du skapade till CallClientoch ange visningsnamnet:

self.callClient = CallClient()
let callAgentOptions = CallAgentOptions()
options.displayName = " iOS Azure Communication Services User"

self.callClient!.createCallAgent(userCredential: userCredential!,
    options: callAgentOptions) { (callAgent, error) in
        if error == nil {
            print("Create agent succeeded")
            self.callAgent = callAgent
        } else {
            print("Create agent failed")
        }
})

Du kan använda ljudfilterfunktionen för att tillämpa olika alternativ för förbearbetning av ljud på utgående ljud. De två typerna av ljudfilter är OutgoingAudioFilters och LiveOutgoingAudioFilters. Använd OutgoingAudioFilters för att ändra inställningarna innan anropet startar. Använd LiveOutgoingAudioFilters för att ändra inställningarna medan ett anrop pågår.

Du måste först importera den anropande SDK:n:

import AzureCommunicationCalling

Innan samtalet startar

Du kan använda OutgoingAudioFilters när ett samtal startar.

Börja med att skapa en OutgoingAudioFilters egenskap och skicka den till OutgoingAudioOptions, som du ser här:

let outgoingAudioOptions = OutgoingAudioOptions()
let filters = OutgoingAudioFilters()
filters.NoiseSuppressionMode = NoiseSuppressionMode.high
filters.analogAutomaticGainControlEnabled = true
filters.digitalAutomaticGainControlEnabled = true
filters.musicModeEnabled = true
filters.acousticEchoCancellationEnabled = true
outgoingAudioOptions.audioFilters = filters

Under samtalet

Du kan ansöka LiveOutgoingAudioFilters när ett samtal har startats. Du kan hämta det här objektet från anropsobjektet under anropet. Om du vill ändra inställningen i LiveOutgoingAudioFiltersanger du medlemmarna i klassen till ett giltigt värde och de tillämpas.

Endast en delmängd av filtren som är tillgängliga från OutgoingAudioFilters är tillgängliga under ett aktivt anrop. De är musikläge, ekoreducering och brusreduceringsläge.

LiveOutgoingAudioFilters filters = call.liveOutgoingAudioFilters
filters.musicModeEnabled = true
filters.acousticEchoCancellationEnabled = true
filters.NoiseSuppressionMode = NoiseSuppressionMode.high

Lär dig hur du konfigurerar ljudfilter med interna anropande SDK:er

Azure Communication Services-ljudeffekterna erbjuder filter som kan förbättra ditt ljudsamtal. För interna plattformar (Android, iOS och Windows) kan du konfigurera följande filter.

Ekoreducering

Du kan eliminera akustiskt eko som orsakas av att uppringarens röst ekar tillbaka in i mikrofonen efter att den har genererats från högtalaren. Ekoreducering garanterar tydlig kommunikation.

Du kan konfigurera filtret före och under ett anrop. Du kan endast växla ekoreducering om musikläget är aktiverat. Som standard är det här filtret aktiverat.

Brusreducering

Du kan förbättra ljudkvaliteten genom att filtrera bort oönskade bakgrundsljud som att skriva, luftkonditionering eller gatuljud. Den här tekniken säkerställer att rösten är skarp och tydlig för att underlätta effektivare kommunikation.

Du kan konfigurera filtret före och under ett anrop. De lägen som är tillgängliga för närvarande är Av, Auto, Låg och Hög. Som standard är den här funktionen inställd på Hög.

Automatisk vinstkontroll

Du kan automatiskt justera mikrofonens volym för att säkerställa konsekventa ljudnivåer under hela samtalet.

  • Analog automatisk gain-kontroll är ett filter som endast är tillgängligt före ett anrop. Som standard är det här filtret aktiverat.
  • Digital automatisk kontroll är ett filter som endast är tillgängligt före ett anrop. Som standard är det här filtret aktiverat.

Musikläge

Musikläge är ett filter som är tillgängligt före och under ett anrop. Mer information om musikläge finns i Musikläge på Native Calling SDK. Musikläget fungerar bara på interna plattformar över en-mot-en- eller gruppsamtal. Det fungerar inte i en-till-en-anrop mellan interna plattformar och webben. Som standard är musikläget inaktiverat.

Förutsättningar

Konfigurera systemet

Följ de här stegen för att konfigurera systemet.

Skapa Visual Studio-projektet

För en Universell Windows-plattform app skapar du i Visual Studio 2022 ett nytt projekt för Tom app (Universell Windows). När du har angett projektnamnet kan du välja valfri Windows SDK senare än 10.0.17763.0.

För en WinUI 3-app skapar du ett nytt projekt med mallen Tom app, Paketerad (WinUI 3 i Desktop) för att konfigurera en WinUI 3-app med en enda sida. SDK för Windows-appar version 1.3 eller senare krävs.

Installera paketet och beroendena med hjälp av NuGet Package Manager

Anropande SDK-API:er och bibliotek är offentligt tillgängliga via ett NuGet-paket.

Så här hittar du, laddar ned och installerar det anropande SDK NuGet-paketet:

  1. Öppna NuGet Package Manager genom att välja Verktyg>NuGet Package Manager>Hantera NuGet-paket för lösning.
  2. Välj Bläddra och ange sedan Azure.Communication.Calling.WindowsClient i sökrutan.
  3. Kontrollera att kryssrutan Inkludera förhandsversion är markerad.
  4. Välj paketet Azure.Communication.Calling.WindowsClient och välj sedan Azure.Communication.Calling.WindowsClient 1.4.0-beta.1 eller en nyare version.
  5. Markera kryssrutan som motsvarar Azure Communication Services-projektet i den högra rutan.
  6. Välj Installera.

Du kan använda funktionen för ljudfilter för att tillämpa olika förbearbetning av ljud på utgående ljud. De två typerna av ljudfilter är OutgoingAudioFilters och LiveOutgoingAudioFilters. Använd OutgoingAudioFilters för att ändra inställningarna innan anropet startar. Använd LiveOutgoingAudioFilters för att ändra inställningarna medan ett anrop pågår.

Du måste först importera den anropande SDK:n:

using Azure.Communication;
using Azure.Communication.Calling.WindowsClient;

Innan ett samtal startar

Du kan använda OutgoingAudioFilters när ett samtal startar.

Börja med att skapa en OutgoingAudioFilters egenskap och skicka den till OutgoingAudioOptions, som du ser i följande kod:

var outgoingAudioOptions = new OutgoingAudioOptions();
var filters = new OutgoingAudioFilters()
{
    AnalogAutomaticGainControlEnabled = true,
    DigitalAutomaticGainControlEnabled = true,
    MusicModeEnabled = true,
    AcousticEchoCancellationEnabled = true,
    NoiseSuppressionMode = NoiseSuppressionMode.High
};
outgoingAudioOptions.Filters = filters;

Under samtalet

Du kan ansöka LiveOutgoingAudioFilters när ett samtal har startats. Du kan hämta det här objektet från anropsobjektet när anropet har påbörjats. Om du vill ändra inställningen i LiveOutgoingAudioFiltersanger du medlemmarna i klassen till ett giltigt värde och de tillämpas.

Endast en delmängd av filtren som är tillgängliga från OutgoingAudioFilters är tillgängliga under ett aktivt anrop. De är musikläge, ekoreducering och brusreduceringsläge.

LiveOutgoingAudioFilters filter = call.LiveOutgoingAudioFilters;
filter.MusicModeEnabled = true;
filter.AcousticEchoCancellationEnabled = true;
filter.NoiseSuppressionMode = NoiseSuppressionMode.Auto;