Considerazioni sulla topologia KS

Il driver di sistema WDMAud (Wdmaud.sys) converte la topologia del filtro KS nelle linee mixer legacy esposte tramite l'API mixer . Un pin non PCM corrisponde a una linea SRC (MIXERLINE_COMPONENTTYPE_SRC_XXX) nell'API mixer. Se questo pin si trova in un percorso dati che alla fine passa a un pin di bridge (la connessione fisica all'endpoint di un grafico) dedicato ai dati non PCM, l'API mixer espone il pin del bridge come una linea DST aggiuntiva (MIXERLINE_COMPONENTTYPE_DST_XXX), separata dalla linea DST per i dati PCM. Ciò può aggiungere complessità non necessaria ai controlli visibili tramite un client dell'API mixer, ad esempio una sostituzione dell'utilità SndVol32.

Se si preferisce non esporre un pin non PCM in questo modo, un approccio consiste nell'assicurarsi che il percorso dati contenente il pin venga inserito in un nodo SUM condiviso dal percorso dati PCM. Ovvero, unire la linea DST non PCM alla linea DST principale. Sfortunatamente, questa soluzione alternativa rappresenta erroneamente la vera topologia hardware e potrebbe causare problemi futuri con i client che tentano di controllare il flusso di dati non PCM attraverso nodi downstream dal nodo SUM. Un approccio migliore consiste nel modificare il client mixer-API in modo da ignorare semplicemente le righe SRC e DST senza controlli.

Se si usa l'utilità KsStudio per visualizzare il filtro d'onda in KSCATEGORY_AUDIO, è consigliabile visualizzare un pin separato per i dati non PCM. Quando si visualizza il grafico audio di sistema composito in KSCATEGORY_AUDIO_DEVICE, dovrebbero essere visualizzati gli intervalli di dati non PCM nel pin principale di output dell'onda, insieme a qualsiasi intervallo di dati PCM.

SysAudio (Sysaudio.sys) è il dispositivo audio di sistema in Windows Server 2003, Windows XP, Windows 2000 e Windows Me/98. Si noti che SysAudio genera KSCATEGORY_AUDIO_DEVICE automaticamente. Un driver non deve registrarsi manualmente in questa categoria.

Non è necessario connettere un percorso dati non PCM al driver miniport topologia. Questa connessione è utile solo se il percorso dati non PCM interagisce con il resto della topologia del dispositivo; ad esempio, se si inserisce in un mixer comune o un convertitore di frequenza di campionamento. La connessione di un pin di streaming a un pin di bridge, in cui entrambi i pin si trovano nel driver miniport wave, formano una topologia valida e completa per un flusso di dati non PCM che passa direttamente a una porta S/PDIF, ad esempio.