Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este tópico fornece três exemplos de uso para solucionar problemas de áudio WDM usando o utilitário KSStudio. Para obter mais informações, consulte Utilitário KSStudio.
Exemplo 1: O áudio parece não funcionar
Cenário:
O desenvolvedor instala o driver de dispositivo de áudio, mas o aplicativo player (por exemplo, Windows Media Player) indica que nenhum dispositivo de áudio está disponível.
Resolução de problemas:
O dispositivo aparece no gerenciador de dispositivos? Se sim, vá para a etapa (2), caso contrário, há um problema com o arquivo INF usado para instalar o dispositivo.
O dispositivo tem um ponto de exclamação amarelo? Se sim, então o dispositivo não foi instalado com êxito (veja as propriedades do dispositivo para obter mais informações), caso contrário, vá para a etapa (3).
Inicie o KSStudio. Enumerar filtros de classe KSCATEGORY_AUDIO e KSCATEGORY_AUDIO_DEVICE. O(s) filtro(s) correspondente(s) ao dispositivo de áudio aparece(m) em KSCATEGORY_AUDIO? Se sim, vá para (4), caso contrário, a fábrica de filtros não está sendo registrada corretamente. A causa mais comum disso é uma incompatibilidade entre o GUID XXX no INF e o GUID XXX no código-fonte do filtro.
Os filtros KSCATEGORY_AUDIO_DEVICE são filtros virtuais que representam partes do gráfico de áudio construído pelo sistema. Para obter mais informações, consulte Kernel-Mode Componentes de áudio WDM e dispositivos de áudio virtual. Em geral, esses filtros virtuais são o que as APIs de nível superior acessam.
Existe uma fábrica de filtros virtual correspondente à fábrica de filtros _AUDIO acima mencionada (será óbvio se existirem)? Se sim, vá para (5), caso contrário, o driver tem um problema que fez com que o sysaudio o rejeitasse. Instanciar o dispositivo _AUDIO correspondente. Isso fará com que o KSStudio analise o filtro. Procure erros (texto vermelho) nas janelas de registo. Examine o filtro na visualização "Objetos instanciados". Compare com um filtro (talvez um dos drivers de exemplo do Kit de Desenvolvimento de Drivers ou um de outro fabricante) que funcione.
- Execute mmsys.cpl e veja se algum dispositivo correspondente ao filtro em desenvolvimento é mostrado. Esta é a visualização do dispositivo através das APIs MMSystem. Se nenhum dispositivo é mostrado aqui, então há algo peculiar sobre o dispositivo que fez MMSystem rejeitá-lo. Volte ao KSStudio e instancie a fábrica de filtros virtuais KSCATEGORY_AUDIO_DEVICE correspondente ao seu dispositivo. Procure erros (texto vermelho) nas janelas de registo. Examine o filtro na visualização "Objetos instanciados". Compare com um filtro que está a funcionar (talvez um dos drivers de áudio de exemplo do WDK ou de outro fabricante).
Exemplo 2: Linhas do mixer de áudio estão faltando
Cenário:
O dispositivo de áudio está instalado. Uma ou mais linhas de misturador esperadas estão faltando no SndVol32 (ou outra aplicação de misturador)
Resolução de problemas:
A topologia do filtro parece correta no KSStudio? Inicie o KSStudio e enumere KSCATEGORY_AUDIO. Instancie seu filtro de topologia e escolha a opção Exibir nós na exibição de topologia de objeto. A topologia do filtro parece correta? Em caso afirmativo, repita para o filtro correspondente KSCATEGORY_AUDIO_DEVICE. Se essa topologia parecer razoável, vá para (2), caso contrário, há algum problema no filtro de topologia que impede a expressão da topologia para componentes mais altos na pilha de áudio. Para obter mais informações sobre como a topologia de filtro é convertida em linhas de misturador, consulte a documentação do DDK.
As linhas do misturador aparecem como esperado no MixApp? O MixApp é um aplicativo de exemplo do SDK do Windows muito simples, mas útil. Se as linhas do mixer parecerem corretas no MixApp, mas não no aplicativo mixer problemático citado anteriormente, então é provável que seja um bug do aplicativo.
Exemplo 3: Os controles do mixer de áudio estão ausentes ou não funcionam
Cenário:
Os controles do mixer (MMSystem mixer API) não estão aparecendo ou não parecem funcionar no SndVol32 ou em outro aplicativo mixer.
Resolução de problemas:
Percorra a solução de problemas no Exemplo 2 acima.
O suporte a eventos de hardware parece funcionar no KSStudio? Encontre o nó ou pino que dá suporte ao evento KSEVENT_CONTROL_CHANGE e ative esse evento conforme descrito em KSStudio - KSProperties and Events. Alterne os controles de hardware. Isso deve fazer com que o ícone da lâmpada de evento pisque.
Ver também
KSStudio - Fábricas de Filtros e Filtros