DeviceTopology API
Vedere l'esempio DMO di acquisizione vocale di alta qualità di Microsoft.
L'API DeviceTopology offre alle applicazioni client la possibilità di attraversare le topologie hardware funzionali del rendering e dell'acquisizione di dispositivi audio. Tramite le interfacce e i metodi nell'API DeviceTopology, i client possono individuare le sottounità funzionali (ad esempio, il controllo del volume) che si trovano lungo i percorsi di dati che portano a e da dispositivi endpoint audio. I client possono attraversare le topologie interne di dispositivi adattatori audio e dispositivi endpoint audio e passare attraverso le connessioni che collegano un dispositivo a un altro. Per altre informazioni, vedere Topologie di dispositivo.
Il file di intestazione Devicetopology.h definisce le interfacce nell'API DeviceTopology.
Per accedere alle interfacce API DeviceTopology, un client ottiene innanzitutto un riferimento all'interfaccia IDeviceTopology per un dispositivo endpoint audio seguendo questa procedura:
- Usando una delle tecniche descritte in IMMDevice Interface, ottenere un riferimento all'interfaccia IMMDevice per un dispositivo endpoint audio.
- Chiamare il metodo IMMDevice::Activate con il parametro iid impostato su REFIID IID_IDeviceTopology.
Il client può ottenere riferimenti alle altre interfacce nell'API DeviceTopology chiamando i metodi nell'interfaccia IDeviceTopology .
L'API DeviceTopology implementa le interfacce seguenti.
Interfaccia | Descrizione |
---|---|
IAudioAutoGainControl | Fornisce l'accesso a un controllo AGC (Automatic Gain Control) hardware. |
IAudioBass | Fornisce l'accesso a un controllo a livello di basso hardware. |
IAudioChannelConfig | Fornisce l'accesso a un controllo di configurazione del canale hardware. |
IAudioInputSelector | Fornisce l'accesso a un controllo multiplexer hardware (selettore di input). |
IAudioLoudness | Fornisce l'accesso a un controllo di compensazione "ad alta voce". |
IAudioMidrange | Fornisce l'accesso a un controllo a livello intermedio hardware. |
IAudioMute | Fornisce l'accesso a un controllo di disattivazione dell'hardware. |
IAudioOutputSelector | Fornisce l'accesso a un controllo demultiplexer hardware (selettore di output). |
IAudioPeakMeter | Fornisce l'accesso a un controllo del contatore di picco hardware. |
IAudioTreble | Fornisce l'accesso a un controllo a livello di treble hardware. |
IAudioVolumeLevel | Fornisce l'accesso a un controllo del volume hardware. |
I Connessione or | Rappresenta un punto di connessione tra i componenti. |
IControlInterface | Rappresenta un'interfaccia di controllo in una parte (subunit o connettore). |
IDeviceSpecificProperty | Rappresenta una proprietà specifica del dispositivo di un connettore o di una subunit. |
IDeviceTopology | Fornisce l'accesso alla topologia di un dispositivo audio. |
IKsFormatSupport | Fornisce informazioni sui formati di dati audio supportati da una connessione I/O configurata dal software (in genere un canale DMA) tra il dispositivo audio e la memoria di sistema. |
IKsJackDescription | Fornisce informazioni sui jack o sui connettori interni che forniscono una connessione fisica tra un dispositivo in una scheda audio e un dispositivo endpoint esterno o interno (ad esempio, un microfono o un lettore CD). |
IPart | Rappresenta una parte (connettore o subunit) di una topologia del dispositivo. |
IPartsList | Rappresenta un elenco di parti (connettori e sottouniti). |
IPerChannelDbLevel | Rappresenta un'interfaccia di controllo di subunit generica che fornisce il controllo per canale sul livello del volume, in decibel, di un flusso audio o di una banda di frequenza in un flusso audio. |
ISubunit | Rappresenta una subunit hardware (ad esempio, un controllo a livello di volume) che si trova nel percorso dei dati tra un client e un dispositivo endpoint audio. |
I client API DeviceTopology che richiedono la notifica degli eventi di modifica del controllo nei connettori e nelle sottounit devono implementare l'interfaccia seguente.
Interfaccia | Descrizione |
---|---|
IControlChangeNotify | Fornisce notifiche quando lo stato di una parte (connettore o subunit) cambia. |
Argomenti correlati