Udostępnij przez


KsStudio — przykłady użycia

Ten temat zawiera trzy przykłady użycia do rozwiązywania problemów z dźwiękiem WDM przy użyciu narzędzia KSStudio. Aby uzyskać więcej informacji, zobacz KSStudio Utility (Narzędzie KSStudio).

Przykład 1: Dźwięk nie działa

Scenariusz:

Deweloper instaluje sterownik urządzenia audio, ale aplikacja odtwarzacza (na przykład Windows Media Player) wskazuje, że żadne urządzenie audio nie jest dostępne.

Rozwiązywanie problemów:

  1. Czy urządzenie jest wyświetlane w Menedżerze urządzeń? Jeśli tak, przejdź do kroku (2), w przeciwnym razie występuje problem z plikiem INF używanym do zainstalowania urządzenia.

  2. Czy urządzenie ma żółty wykrzyknik? Jeśli tak, urządzenie nie zostało pomyślnie zainstalowane (wyświetl właściwości urządzenia, aby uzyskać więcej informacji), w przeciwnym razie przejdź do kroku (3).

  3. Uruchom aplikację KSStudio. Wymień filtry klasy KSCATEGORY_AUDIO i KSCATEGORY_AUDIO_DEVICE. Czy filtry odpowiadające urządzeniu audio są wyświetlane w KSCATEGORY_AUDIO? Jeśli tak, goto (4), w przeciwnym razie fabryka filtrów nie jest poprawnie zarejestrowana. Najczęstszą przyczyną jest niezgodność między identyfikatorem GUID XXX w pliku INF a identyfikatorem GUID XXX w kodzie źródłowym filtra.

  4. Filtry KSCATEGORY_AUDIO_DEVICE to wirtualne filtry reprezentujące części grafu audio zbudowanego przez system. Aby uzyskać więcej informacji, zobacz Kernel-Mode składniki audio WDM i wirtualne urządzenia audio. pl-PL: Ogólnie rzecz biorąc, te filtry wirtualne są tym, do czego dostęp mają interfejsy API wyższego poziomu.

Czy istnieje fabryka filtrów wirtualnych odpowiadająca wyżej wymienionej fabryce filtrów _AUDIO (co będzie oczywiste, jeśli tak)? Jeśli tak, przejdź do (5), w przeciwnym razie sterownik ma problem, który spowodował odrzucenie go przez sysaudio. Zainicjuj odpowiednie urządzenie _AUDIO. Spowoduje to profilowanie filtru przez program KSStudio. Poszukaj błędów (czerwony tekst) w oknach rejestrowania. Sprawdź filtr w widoku "Utworzone obiekty". Porównaj z filtrem (na przykład jednym z przykładowych sterowników DDK lub sterownikiem od innego producenta), który działa.

  1. Uruchom mmsys.cpl i sprawdź, czy są wyświetlane jakiekolwiek urządzenia odpowiadające filtrowi w obszarze programowania. Jest to widok urządzenia za pośrednictwem interfejsów API MMSystem. Jeśli w tym miejscu nie jest wyświetlane żadne urządzenie, istnieje coś osobliwego w przypadku urządzenia, które spowodowało odrzucenie go przez system MMSystem. Wróć do aplikacji KSStudio i utwórz wystąpienie wirtualnej fabryki filtrów KSCATEGORY_AUDIO_DEVICE odpowiadającej twojemu urządzeniu. Poszukaj błędów (czerwony tekst) w oknach rejestrowania. Sprawdź filtr w widoku "Utworzone obiekty". Porównaj z filtrem, który działa (może to być jeden z przykładowych sterowników audio z zestawu WDK lub pochodzący od innego producenta).

Przykład 2. Brak linii miksera audio

Scenariusz:

Urządzenie audio jest zainstalowane. Brakuje co najmniej jednej oczekiwanej linii miksera z SndVol32 (lub innej aplikacji miksera)

Rozwiązywanie problemów:

  1. Czy topologia filtru wygląda poprawnie w programie KSStudio? Uruchom program KSStudio i wylicz KSCATEGORY_AUDIO. Utwórz wystąpienie filtru topologii i wybierz opcję Wyświetl węzły w widoku topologii obiektów. Czy topologia filtru wygląda poprawnie? Jeśli tak, powtórz to dla odpowiedniego filtru KSCATEGORY_AUDIO_DEVICE. Jeśli ta topologia wygląda rozsądnie, przejdź do (2), w przeciwnym razie występuje jakiś problem w filtrze topologii, który uniemożliwia wyrażenie topologii składnikom wyższym w stosie audio. Aby uzyskać więcej informacji na temat sposobu tłumaczenia topologii filtru na linie miksera, zobacz dokumentację zestawu DDK.

  2. Czy linie miksera są wyświetlane zgodnie z oczekiwaniami w aplikacji MixApp? MixApp to bardzo prosta, ale przydatna przykładowa aplikacja zestawu Windows SDK. Jeśli linie miksera wyglądają poprawnie w MixApp, ale nie w problematycznej aplikacji miksera cytowanej wcześniej, prawdopodobnie jest to usterka aplikacji.

Przykład 3: brak kontrolek miksera audio lub brak funkcjonalności

Scenariusz:

Elementy sterujące miksera (API miksera MMSystem) nie są wyświetlane lub nie wydają się działać w SndVol32 lub innej aplikacji miksera.

Rozwiązywanie problemów:

  1. Zapoznaj się z rozwiązywaniem problemów w przykładzie 2 powyżej.

  2. Czy wydaje się, że obsługa zdarzeń sprzętowych działa w programie KSStudio? Znajdź węzeł lub końcówkę obsługującą zdarzenie KSEVENT_CONTROL_CHANGE i włącz ją zgodnie z opisem w KSStudio — KSProperties i Zdarzenia. Przełącz kontrolki sprzętowe. To powinno spowodować, że ikona żarówki zdarzeń zacznie migać.

Zobacz także

Narzędzie KSStudio

KSStudio — filtry i fabryki filtrów

KSStudio — piny i węzły

KSStudio — KSProperties i Events

KSStudio - KS Monitor