Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przykładzie użyto interfejsów API core audio do przechwytywania wysokiej jakości strumienia głosowego. Przykład obsługuje anulowanie echa akustycznego (AEC) i przetwarzanie tablicy mikrofonów przy użyciu AEC DMO, nazywanej również dsP przechwytywania głosu, dostarczone przez firmę Microsoft .
Ten temat zawiera następujące sekcje.
- opis
- wymagania dotyczące
- pobieranie przykładowej
- tworzenie przykładu
- uruchamianie przykładowej
- Tematy pokrewne
Opis
W tym przykładzie przedstawiono następujące funkcje.
- MMDevice w przypadku wyliczenia i wyboru urządzenia multimedialnego.
- WASAPI dla operacji zarządzania strumieniem, takich jak uruchamianie i zatrzymywanie strumienia, przełączanie strumienia.
- DeviceTopology na potrzeby wyliczania kart audio.
- EndpointVolume kontrolować poziomy głośności sesji audio .
Wymagania
| Produkt | Wersja |
|---|---|
| zestaw Windows SDK | Windows Vista lub nowszy |
| Visual Studio | 2005 (wersje inne niż express) |
Pobieranie przykładu
Ten przykład jest dostępny w następujących lokalizacjach.
| Lokalizacja | Ścieżka/adres URL |
|---|---|
| Windows SDK | \Program Files\Microsoft SDKs\Windows\v7.0\Samples\Multimedia\Audio\AECMicArray\... |
Kompilowanie przykładu
Aby skompilować przykład AecSDKDemo, wykonaj następujące kroki:
Otwórz okno polecenia zestawu SDK.
Wpisz cd %MSSDK%\Setup.
Uruchom VCIntegrate.exe.
Od tego momentu okna poleceń będą miały odpowiednie ustawienia środowiska, aby utworzyć aplikację korzystającą z zestawu SDK.
Skompiluj przykład.
Uruchamianie przykładu
Jeśli aplikacja demonstracyjna zostanie utworzona pomyślnie, zostanie wygenerowany plik wykonywalny AecSDKDemo.exe. Aby go uruchomić, wpisz AecSDKDemo w oknie polecenia, a następnie wymagane lub opcjonalne argumenty, jak opisano poniżej.
AecSDKDemo -out mic_out.pcm -mod system_mode [-option value]
W poniższej tabeli przedstawiono argumenty.
| Argument | Opis |
|---|---|
| -na zewnątrz | Wymagane. Określa nazwę pliku wyjściowego. |
| -mod | Wymagane. Określa tryb systemowy przechwytywania głosu. Szczegółowe informacje można znaleźć w sekcji "Konfigurowanie funkcji DMO przechwytywania głosu" w przykładowym pliku readme. |
| -wyczyn | Fakultatywny. Włącza tryb funkcji (1) lub wyłączony (0). |
| -Ns | Fakultatywny. Włącza tłumienie szumu (1) lub wyłączone (0). Aby to określić, tryb funkcji musi być włączony. |
| -Agc | Fakultatywny. Włącza cyfrową grupę dostępności (1) lub wyłącz (0). Aby to określić, tryb funkcji musi być włączony. |
| -cntrclip | Fakultatywny. Włącza wycinek środkowy (1) lub wyłączony (0). Aby to określić, tryb funkcji musi być włączony. |
| -spkdev | Fakultatywny. Określa indeks urządzenia mówiącego. Jeśli nie zostanie określony, użytkownik zostanie poproszony o wybranie. |
| -micdev | Fakultatywny. Określa indeks urządzenia mikrofonu. Jeśli nie zostanie określony, użytkownik zostanie poproszony o wybranie. |
| -czas trwania | Fakultatywny. Określa, jak długo działa aplikacja. |
Ta przykładowa aplikacja nie odtwarza żadnych sygnałów. Aby prawidłowo uruchomić pokaz dla trybów z włączoną usługą AEC (tryb 0 i 4), użytkownicy muszą odtwarzać niektóre sygnały audio za pośrednictwem tego samego urządzenia głośnika określonego dla dmo (czyli urządzenia określonego przez opcję "-spkdev"), który symuluje głos skrajny w dwukierunkowym scenariuszu rozmów. Użytkownicy mogą używać dowolnego odtwarzacza do odtwarzania dowolnych sygnałów dźwiękowych. Jeśli na wybranym urządzeniu głośnikowym nie ma aktywnego strumienia renderowania, proces DMO zakończy się niepowodzeniem.
Tematy pokrewne
-
przykłady zestawu SDK korzystające z podstawowych interfejsów API audio