DeviceTopology API
Lihat sampel DMO pengambilan suara berkualitas tinggi Microsoft.
API DeviceTopology menyediakan aplikasi klien dengan kemampuan untuk melintasi topologi perangkat keras fungsional dari perangkat penyajian dan penangkapan audio. Melalui antarmuka dan metode dalam DEVICETopology API, klien dapat menemukan subunit fungsional (misalnya, kontrol volume) yang terletak di sepanjang jalur data yang mengarah ke dan dari perangkat titik akhir audio. Klien dapat melintasi topologi internal perangkat adaptor audio dan perangkat titik akhir audio dan melangkah melintasi koneksi yang menautkan satu perangkat ke perangkat lain. Untuk informasi selengkapnya, lihat Topologi Perangkat.
File header Devicetopology.h mendefinisikan antarmuka dalam API DeviceTopology.
Untuk mengakses antarmuka DEVICETopology API, klien terlebih dahulu mendapatkan referensi ke antarmuka IDeviceTopology untuk perangkat titik akhir audio dengan mengikuti langkah-langkah berikut:
- Dengan menggunakan salah satu teknik yang dijelaskan dalam Antarmuka IMMDevice, dapatkan referensi ke antarmuka IMMDevice untuk perangkat titik akhir audio.
- Panggil metode IMMDevice::Activate dengan parameter iid diatur ke REFIID IID_IDeviceTopology.
Klien dapat memperoleh referensi ke antarmuka lain di Api DeviceTopology dengan memanggil metode di antarmuka IDeviceTopology.
API DeviceTopology mengimplementasikan antarmuka berikut.
Antarmuka | Deskripsi |
---|---|
IAudioAutoGainControl | Menyediakan akses ke kontrol perolehan otomatis (AGC) perangkat keras. |
IAudioBass | Menyediakan akses ke kontrol tingkat bass perangkat keras. |
IAudioChannelConfig | Menyediakan akses ke kontrol konfigurasi saluran perangkat keras. |
IAudioInputSelector | Menyediakan akses ke kontrol multiplexer perangkat keras (pemilih input). |
IAudioLoudness | Menyediakan akses ke kontrol kompensasi "kenyaringan". |
IAudioMidrange | Menyediakan akses ke kontrol tingkat midrange perangkat keras. |
IAudioMute | Menyediakan akses ke kontrol bisu perangkat keras. |
IAudioOutputSelector | Menyediakan akses ke kontrol demultiplexer perangkat keras (pemilih output). |
IAudioPeakMeter | Menyediakan akses ke kontrol pengukur puncak perangkat keras. |
IAudioTreble | Menyediakan akses ke kontrol tingkat treble perangkat keras. |
IAudioVolumeLevel | Menyediakan akses ke kontrol volume perangkat keras. |
Aku Koneksi or | Mewakili titik koneksi antar komponen. |
IControlInterface | Mewakili antarmuka kontrol pada bagian (subunit atau konektor). |
IDeviceSpecificProperty | Mewakili properti khusus perangkat dari konektor atau subunit. |
IDeviceTopology | Menyediakan akses ke topologi perangkat audio. |
IKsFormatSupport | Menyediakan informasi tentang format data audio yang didukung oleh koneksi I/O yang dikonfigurasi perangkat lunak (biasanya saluran DMA) antara perangkat audio dan memori sistem. |
IKsJackDescription | Menyediakan informasi tentang jack atau konektor internal yang menyediakan koneksi fisik antara perangkat pada adaptor audio dan perangkat titik akhir eksternal atau internal (misalnya, mikrofon atau pemutar CD). |
IPart | Mewakili bagian (konektor atau subunit) dari topologi perangkat. |
IPartsList | Mewakili daftar bagian (konektor dan subunit). |
IPerChannelDbLevel | Mewakili antarmuka kontrol subunit generik yang menyediakan kontrol per saluran atas tingkat volume, dalam desibel, aliran audio atau pita frekuensi dalam aliran audio. |
ISubunit | Mewakili subunit perangkat keras (misalnya, kontrol tingkat volume) yang terletak di jalur data antara klien dan perangkat titik akhir audio. |
Klien DEVICETopology API yang memerlukan pemberitahuan peristiwa perubahan kontrol di konektor dan subunit harus menerapkan antarmuka berikut.
Antarmuka | Deskripsi |
---|---|
IControlChangeNotify | Menyediakan pemberitahuan saat status bagian (konektor atau subunit) berubah. |
Topik terkait