MMDevice API hakkında
Windows Multimedya Cihazı (MMDevice) API'si, ses istemcilerinin ses uç noktası cihazlarını bulmasına, yeteneklerini belirlemesine ve bu cihazlar için sürücü örnekleri oluşturmasına olanak tanır.
Mmdeviceapi.h üst bilgi dosyası, MMDevice API'sindeki arabirimleri tanımlar.
MMDevice API'sinde çeşitli arabirimler bulunur. Bunlardan ilki IMMDeviceEnumerator arabirimidir. İstemci, MMDevice API'sindeki arabirimlere erişmek için, aşağıdaki kod parçasında gösterildiği gibi CoCreateInstance işlevini çağırarak bir cihaz numaralandırıcı nesnesinin IMMDeviceEnumerator arabirimine başvuru elde eder:
const CLSID CLSID_MMDeviceEnumerator = __uuidof(MMDeviceEnumerator);
const IID IID_IMMDeviceEnumerator = __uuidof(IMMDeviceEnumerator);
hr = CoCreateInstance(
CLSID_MMDeviceEnumerator, NULL,
CLSCTX_ALL, IID_IMMDeviceEnumerator,
(void**)&pEnumerator);
Yukarıdaki kod parçasında CLSID_MMDeviceEnumerator ve IID_IMMDeviceEnumerator, MMDeviceEnumerator sınıf nesnesine ve IMMDeviceEnumerator arabirimine öznitelik olarak eklenen GUID değerleridir.
CoCreateInstance çağrısı bu değerleri başvuru ile geçirir. Değişken hr
HRESULT türündedir ve değişken pEnumerator
, cihaz numaralandırıcı nesnesinin IMMDeviceEnumerator arabirimine yönelik bir işaretçidir.
IMMDeviceEnumerator, ses uç noktası cihazlarını numaralandırmak için yöntemler sağlar.
__uuidof işleci, CoCreateInstance işlevi ve CLSCTX_Xxx sabitleri hakkında bilgi için Windows SDK belgelerine bakın.
İstemci, IMMDeviceEnumerator arabirimi aracılığıyla MMDevice API'sindeki diğer arabirimlere başvurular alabilir. MMDevice API'sinde aşağıdaki arabirimler uygulanır.
Arayüz | Açıklama |
---|---|
IMMDevice | Bir ses cihazını temsil eder. |
IMMDeviceCollection | Ses cihazlarından oluşan bir koleksiyonu temsil eder. |
IMMDeviceEnumerator | Ses cihazlarını listelemek için yöntemler sağlar. |
IMMEndpoint | Ses uç noktası cihazını temsil eder. |
Ayrıca, ses uç noktası cihazlarında durum değişikliklerinin bildirilmesi gereken MMDevice API'sinin istemcileri aşağıdaki arabirimi uygulamalıdır.
Arayüz | Açıklama |
---|---|
IMMNotificationClient | Bir ses uç noktası cihazı eklendiğinde veya kaldırıldığında, cihazın durumu veya özellikleri değiştiğinde veya bir cihaza atanan varsayılan rolde bir değişiklik olduğunda bildirimler sağlar. |
İlgili konular