Přidání vylepšení kvality zvuku do prostředí pro hlasové hovory
Možnosti potlačení zvuku ve službě Azure Communication Services můžou zlepšit hlasové hovory filtrováním nežádoucích šumů na pozadí. Potlačení šumu je technologie, která odstraňuje šumy na pozadí ze zvukových hovorů. Odstranění šumu na pozadí usnadňuje komunikaci a naslouchání. Potlačení šumu může také snížit rušivé a únavy způsobené hlučnými místy. Pokud například používáte volání WebJS služby Azure Communication Services v hlučné kavárně, může zapnutí potlačení šumu zlepšit prostředí volání.
Použití zvukových efektů: Instalace balíčku npm volajících efektů
Důležité
Tento kurz využívá verzi 1.28.4
sady SDK pro volání služeb Azure Communication Services nebo novější společně s verzí 1.1.2
sady SDK pro volání služeb Azure Communication Services nebo novější. Stabilní verze 1.28.4
obecné dostupnosti (GA) a novější verze sady SDK pro volání podporují funkce potlačení šumu. Případně pokud se rozhodnete použít verzi Public Preview, podporují také potlačení šumu verze 1.24.2-beta.1
SDK voláním sady SDK a novějším.
Aktuální podpora prohlížeče pro přidání efektů potlačení šumu zvuku je dostupná jenom v prohlížečích Chrome a Edge pro stolní počítače.
Knihovnu volajících efektů nelze použít samostatně. Funguje jenom v případě, že se používá s klientskou knihovnou volání azure Communication Services pro WebJS.
npm install
Pomocí příkazu nainstalujte sadu AZURE Communication Services Audio Effects SDK pro JavaScript.
Pokud používáte verzi GA volající sady SDK, musíte použít verzi GA sady SDK pro volající efekty.
@azure/communication-calling-effects/v/latest
Pokud používáte verzi Public Preview volající sady SDK, musíte použít beta verzi sady SDK volajících efektů.
@azure/communication-calling-effects/v/next
Načtení knihovny efektů potlačení šumu
Informace o rozhraní, které podrobně popisuje vlastnosti a metody zvukové efekty, naleznete v dokumentaci rozhraní API rozhraní zvukové efekty.
Pokud chcete použít zvukové efekty potlačení šumu v sadě SDK pro volání služeb Azure Communication Services, potřebujete LocalAudioStream
vlastnost, která je aktuálně ve volání. Ke spuštění a zastavení zvukových LocalAudioStream
efektů potřebujete přístup k AudioEffects
rozhraní API vlastnosti.
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}`);
});
Kontrola aktivních zvukových efektů
Pokud chcete zkontrolovat, jaké efekty potlačení šumu jsou aktuálně aktivní, můžete tuto vlastnost použít activeEffects
.
Vlastnost activeEffects
vrátí objekt s názvy aktuálních aktivních efektů.
// 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
});
Spuštění hovoru s automatickým potlačením šumu
Můžete zahájit volání se zapnutým potlačením šumu. Vytvořte novou LocalAudioStream
vlastnost s AudioDeviceInfo
( LocalAudioStream
zdroj by neměl být nezpracovanou MediaStream
vlastností pro použití zvukových efektů) a předejte ji 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]
}
});
Zapnutí potlačení šumu během probíhajícího hovoru
Můžete zahájit hovor a nemáte zapnuté potlačení šumu. Prostředí může být hlučné, takže potřebujete zapnout potlačení šumu. Pokud chcete zapnout potlačení šumu audioEffectsFeatureApi.startEffects
, můžete použít rozhraní API.
// 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
});
Související obsah
Podrobnosti o rozšířených funkcích rozhraní API najdete na stránce dokumentace k rozhraní funkcí zvukové efekty.
Zjistěte, jak nakonfigurovat zvukové filtry pomocí nativních sad SDK pro volání.
Zvukové efekty Azure Communication Services nabízejí filtry, které můžou zlepšit hlasový hovor. Pro nativní platformy (Android, iOS a Windows) můžete nakonfigurovat následující filtry.
Zrušení ozvěny
Můžete eliminovat akustickou ozvěnu způsobenou hlasem volajícího ozvěnou zpět do mikrofonu po jeho vysílání z reproduktoru. Zrušení ozvěny zajišťuje jasnou komunikaci.
Filtr můžete nakonfigurovat před voláním a během hovoru. Zrušení ozvěny můžete přepnout jenom v případě, že je povolený režim hudby. Ve výchozím nastavení je tento filtr povolený.
Potlačení šumu
Kvalitu zvuku můžete zlepšit filtrováním nežádoucích zvuků na pozadí, jako je psaní, klimatizace nebo zvuky ulic. Tato technologie zajišťuje, aby hlas byl ostřejší a jasný, aby usnadnil efektivnější komunikaci.
Filtr můžete nakonfigurovat před voláním a během hovoru. Aktuálně dostupné režimy jsou Vypnuto, Auto, Low a High. Ve výchozím nastavení je tato funkce nastavená na Vysoká.
Automatické řízení získání
Hlasitost mikrofonu můžete automaticky upravit, aby se zajistily konzistentní úrovně zvuku během hovoru.
- Analogové řízení automatického získání je filtr, který je k dispozici pouze před voláním. Ve výchozím nastavení je tento filtr povolený.
- Řízení digitálního automatického získání je filtr, který je k dispozici pouze před voláním. Ve výchozím nastavení je tento filtr povolený.
Hudební režim
Hudební režim je filtr, který je dostupný před voláním a během hovoru. Další informace o hudebním režimu najdete v tématu Režim hudby v nativní sadě SDK pro volání. Režim hudby funguje jenom na nativních platformách přes jedno nebo skupinové hovory. Nefunguje při volání 1:1 mezi nativními platformami a webem. Ve výchozím nastavení je režim hudby zakázaný.
Požadavky
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Nasazený prostředek Azure Communication Services. Vytvořte prostředek Azure Communication Services.
- Přístupový token uživatele pro povolení volajícího klienta. Další informace najdete v tématu Vytváření a správa přístupových tokenů.
- Volitelné: Dokončete rychlý start a přidejte do aplikace hlasové volání.
Nainstalujte sadu SDK .
Vyhledejte soubor na úrovni build.gradle
projektu a přidejte mavenCentral()
ho do seznamu úložišť v části buildscript
a allprojects
:
buildscript {
repositories {
...
mavenCentral()
...
}
}
allprojects {
repositories {
...
mavenCentral()
...
}
}
Potom do souboru na úrovni build.gradle
modulu přidejte do oddílu dependencies
následující řádky:
dependencies {
...
implementation 'com.azure.android:azure-communication-calling:1.0.0'
...
}
Inicializace požadovaných objektů
Pokud chcete vytvořit CallAgent
instanci, musíte metodu createCallAgent
CallClient
volat v instanci. Toto volání asynchronně vrátí CallAgent
objekt instance.
Metoda createCallAgent
přebírá CommunicationUserCredential
jako argument, který zapouzdřuje přístupový token.
Pokud chcete získat přístup DeviceManager
, musíte nejprve vytvořit callAgent
instanci. Pak můžete použít metodu CallClient.getDeviceManager
získat 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();
Pokud chcete nastavit zobrazovaný název volajícího, použijte tuto alternativní metodu:
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();
Pomocí funkce filtru zvuku můžete použít různé možnosti předběžného zpracování zvuku pro odchozí zvuk. Dva typy zvukových filtrů jsou OutgoingAudioFilters
a LiveOutgoingAudioFilters
. Slouží OutgoingAudioFilters
ke změně nastavení před zahájením hovoru. Slouží LiveOutgoingAudioFilters
ke změně nastavení během probíhajícího hovoru.
Nejprve je potřeba naimportovat volající sadu SDK a přidružené třídy:
import com.azure.android.communication.calling.OutgoingAudioOptions;
import com.azure.android.communication.calling.OutgoingAudioFilters;
import com.azure.android.communication.calling.LiveOutgoingAudioFilters;
Před zahájením hovoru
Můžete použít OutgoingAudioFilters
při spuštění hovoru.
Začněte tím, že OutgoingAudioFilters
vytvoříte vlastnost a předáte ji OutgoingAudioOptions
, jak je znázorněno v následujícím kódu:
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);
Během hovoru
Můžete použít LiveOutgoingAudioFilters
po zahájení hovoru. Tento objekt můžete načíst z objektu volání během volání. Pokud chcete změnit nastavení, LiveOutgoingAudioFilters
nastavte členy uvnitř třídy na platnou hodnotu a použijí se.
Během aktivního volání jsou k dispozici pouze podmnožina dostupných filtrů OutgoingAudioFilters
. Jedná se o hudební režim, zrušení ozvěny a režim potlačení šumu.
LiveOutgoingAudioFilters filters = call.getLiveOutgoingAudioFilters();
filters.setMusicModeEnabled(false);
filters.setAcousticEchoCancellationEnabled(false);
filters.setNoiseSuppressionMode(NoiseSuppressionMode.HIGH);
Zjistěte, jak nakonfigurovat zvukové filtry pomocí nativních sad SDK pro volání.
Zvukové efekty Azure Communication Services nabízejí filtry, které můžou zlepšit hlasový hovor. Pro nativní platformy (Android, iOS a Windows) můžete nakonfigurovat následující filtry.
Zrušení ozvěny
Můžete eliminovat akustickou ozvěnu způsobenou hlasem volajícího ozvěnou zpět do mikrofonu po jeho vysílání z reproduktoru. Zrušení ozvěny zajišťuje jasnou komunikaci.
Filtr můžete nakonfigurovat před voláním a během hovoru. Zrušení ozvěny můžete přepnout jenom v případě, že je povolený režim hudby. Ve výchozím nastavení je tento filtr povolený.
Potlačení šumu
Kvalitu zvuku můžete zlepšit filtrováním nežádoucích zvuků na pozadí, jako je psaní, klimatizace nebo zvuky ulic. Tato technologie zajišťuje, aby hlas byl ostřejší a jasný, aby usnadnil efektivnější komunikaci.
Filtr můžete nakonfigurovat před voláním a během hovoru. Aktuálně dostupné režimy jsou Vypnuto, Auto, Low a High. Ve výchozím nastavení je tato funkce nastavená na Vysoká.
Automatické řízení získání
Hlasitost mikrofonu můžete automaticky upravit, aby se zajistily konzistentní úrovně zvuku během hovoru.
- Analogové řízení automatického získání je filtr, který je k dispozici pouze před voláním. Ve výchozím nastavení je tento filtr povolený.
- Řízení digitálního automatického získání je filtr, který je k dispozici pouze před voláním. Ve výchozím nastavení je tento filtr povolený.
Hudební režim
Hudební režim je filtr, který je dostupný před voláním a během hovoru. Další informace o hudebním režimu najdete v tématu Režim hudby v nativní sadě SDK pro volání. Režim hudby funguje jenom na nativních platformách přes jedno nebo skupinové hovory. Nefunguje při volání 1:1 mezi nativními platformami a webem. Ve výchozím nastavení je režim hudby zakázaný.
Požadavky
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Nasazený prostředek Azure Communication Services. Vytvořte prostředek Azure Communication Services.
- Přístupový token uživatele pro povolení volajícího klienta. Další informace najdete v tématu Vytváření a správa přístupových tokenů.
- Volitelné: Dokončete rychlý start a přidejte do aplikace hlasové volání.
Nastavení systému
Podle těchto kroků nastavte systém.
Vytvoření projektu Xcode
V Xcode vytvořte nový projekt pro iOS a vyberte šablonu aplikace s jedním zobrazením . Tento článek používá architekturu SwiftUI, takže byste měli nastavit jazyk na Swift a nastavit rozhraní na SwiftUI.
V tomto článku nebudete vytvářet testy. Zrušte zaškrtnutí políčka Zahrnout testy .
Instalace balíčku a závislostí pomocí CocoaPods
Vytvořte pro aplikaci soubor Podfile, například v tomto příkladu:
platform :ios, '13.0' use_frameworks! target 'AzureCommunicationCallingSample' do pod 'AzureCommunicationCalling', '~> 1.0.0' end
Spusťte
pod install
.Otevřete
.xcworkspace
pomocí Xcode.
Vyžádání přístupu k mikrofonu
Pokud chcete získat přístup k mikrofonu zařízení, musíte aktualizovat seznam vlastností informací aplikace pomocí NSMicrophoneUsageDescription
. Nastavte přidruženou hodnotu na řetězec, který je součástí dialogového okna, který systém používá k vyžádání přístupu od uživatele.
Klikněte pravým tlačítkem myši na položku Info.plist stromu projektu a pak vyberte Open As>Source Code. Do oddílu nejvyšší úrovně <dict>
přidejte následující řádky a pak soubor uložte.
<key>NSMicrophoneUsageDescription</key>
<string>Need microphone access for VOIP calling.</string>
Nastavení architektury aplikace
Otevřete soubor projektu ContentView.swift
. import
Přidejte deklaraci do horní části souboru pro import AzureCommunicationCalling
knihovny. Kromě toho import AVFoundation
. Potřebujete ho pro žádosti o zvuková oprávnění v kódu.
import AzureCommunicationCalling
import AVFoundation
Inicializace callagentu
Chcete-li vytvořit CallAgent
instanci z CallClient
, musíte použít metodu callClient.createCallAgent
, která asynchronně vrátí CallAgent
objekt po inicializaci.
Pokud chcete vytvořit klienta volání, předejte CommunicationTokenCredential
objekt:
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)
}
CommunicationTokenCredential
Předejte objekt, který jste vytvořiliCallClient
, a nastavte zobrazovaný název:
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")
}
})
Pomocí funkce filtru zvuku můžete použít různé možnosti předběžného zpracování zvuku pro odchozí zvuk. Dva typy zvukových filtrů jsou OutgoingAudioFilters
a LiveOutgoingAudioFilters
. Slouží OutgoingAudioFilters
ke změně nastavení před zahájením hovoru. Slouží LiveOutgoingAudioFilters
ke změně nastavení během probíhajícího hovoru.
Nejdřív je potřeba naimportovat volající sadu SDK:
import AzureCommunicationCalling
Před zahájením hovoru
Můžete použít OutgoingAudioFilters
při spuštění hovoru.
Začněte vytvořením vlastnosti a jejím předáním OutgoingAudioFilters
OutgoingAudioOptions
, jak je znázorněno zde:
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
Během hovoru
Můžete použít LiveOutgoingAudioFilters
po zahájení hovoru. Tento objekt můžete načíst z objektu volání během volání. Pokud chcete změnit nastavení, LiveOutgoingAudioFilters
nastavte členy uvnitř třídy na platnou hodnotu a použijí se.
Během aktivního volání jsou k dispozici pouze podmnožina dostupných filtrů OutgoingAudioFilters
. Jedná se o hudební režim, zrušení ozvěny a režim potlačení šumu.
LiveOutgoingAudioFilters filters = call.liveOutgoingAudioFilters
filters.musicModeEnabled = true
filters.acousticEchoCancellationEnabled = true
filters.NoiseSuppressionMode = NoiseSuppressionMode.high
Zjistěte, jak nakonfigurovat zvukové filtry pomocí nativních sad SDK pro volání.
Zvukové efekty Azure Communication Services nabízejí filtry, které můžou zlepšit hlasový hovor. Pro nativní platformy (Android, iOS a Windows) můžete nakonfigurovat následující filtry.
Zrušení ozvěny
Můžete eliminovat akustickou ozvěnu způsobenou hlasem volajícího ozvěnou zpět do mikrofonu po jeho vysílání z reproduktoru. Zrušení ozvěny zajišťuje jasnou komunikaci.
Filtr můžete nakonfigurovat před voláním a během hovoru. Zrušení ozvěny můžete přepnout jenom v případě, že je povolený režim hudby. Ve výchozím nastavení je tento filtr povolený.
Potlačení šumu
Kvalitu zvuku můžete zlepšit filtrováním nežádoucích zvuků na pozadí, jako je psaní, klimatizace nebo zvuky ulic. Tato technologie zajišťuje, aby hlas byl ostřejší a jasný, aby usnadnil efektivnější komunikaci.
Filtr můžete nakonfigurovat před voláním a během hovoru. Aktuálně dostupné režimy jsou Vypnuto, Auto, Low a High. Ve výchozím nastavení je tato funkce nastavená na Vysoká.
Automatické řízení získání
Hlasitost mikrofonu můžete automaticky upravit, aby se zajistily konzistentní úrovně zvuku během hovoru.
- Analogové řízení automatického získání je filtr, který je k dispozici pouze před voláním. Ve výchozím nastavení je tento filtr povolený.
- Řízení digitálního automatického získání je filtr, který je k dispozici pouze před voláním. Ve výchozím nastavení je tento filtr povolený.
Hudební režim
Hudební režim je filtr, který je dostupný před voláním a během hovoru. Další informace o hudebním režimu najdete v tématu Režim hudby v nativní sadě SDK pro volání. Režim hudby funguje jenom na nativních platformách přes jedno nebo skupinové hovory. Nefunguje při volání 1:1 mezi nativními platformami a webem. Ve výchozím nastavení je režim hudby zakázaný.
Požadavky
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Nasazený prostředek Azure Communication Services. Vytvořte prostředek Azure Communication Services.
- Přístupový token uživatele pro povolení volajícího klienta. Další informace najdete v tématu Vytváření a správa přístupových tokenů.
- Volitelné: Dokončete rychlý start a přidejte do aplikace hlasové volání.
Nastavení systému
Podle těchto kroků nastavte systém.
Vytvoření projektu sady Visual Studio
V případě Univerzální platforma Windows aplikace vytvořte v sadě Visual Studio 2022 nový projekt Prázdná aplikace (Universal Windows). Po zadání názvu projektu si můžete vybrat libovolnou sadu Windows SDK později než 10.0.17763.0.
V případě aplikace WinUI 3 vytvořte nový projekt pomocí šablony Prázdná aplikace zabalená (WinUI 3 v desktopové verzi) pro nastavení jednostráňové aplikace WinUI 3. Vyžaduje se sada Windows App SDK verze 1.3 nebo novější.
Instalace balíčku a závislostí pomocí Správce balíčků NuGet
Rozhraní API a knihovny volající sady SDK jsou veřejně dostupné prostřednictvím balíčku NuGet.
Vyhledání, stažení a instalace balíčku NuGet volající sady SDK:
- Otevřete Správce balíčků NuGet výběrem nástrojů>NuGet Správce balíčků> Nabídky NuGet pro řešení.
- Vyberte Procházet a do vyhledávacího pole zadejte Azure.Communication.Calling.WindowsClient .
- Ujistěte se, že je zaškrtnuté políčko Zahrnout předběžné verze .
- Vyberte balíček Azure.Communication.Calling.WindowsClient a pak vyberte Azure.Communication.Calling.WindowsClient 1.4.0-beta.1 nebo novější verzi.
- Zaškrtněte políčko odpovídající projektu Azure Communication Services v pravém podokně.
- Vyberte volbu Instalovat.
Pomocí funkce filtru zvuku můžete použít různé předběžné zpracování zvuku na odchozí zvuk. Dva typy zvukových filtrů jsou OutgoingAudioFilters
a LiveOutgoingAudioFilters
. Slouží OutgoingAudioFilters
ke změně nastavení před zahájením hovoru. Slouží LiveOutgoingAudioFilters
ke změně nastavení během probíhajícího hovoru.
Nejdřív je potřeba naimportovat volající sadu SDK:
using Azure.Communication;
using Azure.Communication.Calling.WindowsClient;
Před zahájením hovoru
Můžete použít OutgoingAudioFilters
při spuštění hovoru.
Začněte vytvořením vlastnosti a jejím předáním OutgoingAudioFilters
OutgoingAudioOptions
, jak je znázorněno v následujícím kódu:
var outgoingAudioOptions = new OutgoingAudioOptions();
var filters = new OutgoingAudioFilters()
{
AnalogAutomaticGainControlEnabled = true,
DigitalAutomaticGainControlEnabled = true,
MusicModeEnabled = true,
AcousticEchoCancellationEnabled = true,
NoiseSuppressionMode = NoiseSuppressionMode.High
};
outgoingAudioOptions.Filters = filters;
Během hovoru
Můžete použít LiveOutgoingAudioFilters
po zahájení hovoru. Tento objekt můžete načíst z objektu volání po zahájení volání. Pokud chcete změnit nastavení, LiveOutgoingAudioFilters
nastavte členy uvnitř třídy na platnou hodnotu a použijí se.
Během aktivního volání jsou k dispozici pouze podmnožina dostupných filtrů OutgoingAudioFilters
. Jedná se o hudební režim, zrušení ozvěny a režim potlačení šumu.
LiveOutgoingAudioFilters filter = call.LiveOutgoingAudioFilters;
filter.MusicModeEnabled = true;
filter.AcousticEchoCancellationEnabled = true;
filter.NoiseSuppressionMode = NoiseSuppressionMode.Auto;