mmdevapi audioendpoints

mmdevapi audioendpoints: Bir Bakış

Giriş

mmdevapi audioendpoints, Windows işletim sisteminde ses cihazlarını ve akışlarını yönetmek için kullanılan bir API’dir (Uygulama Programlama Arayüzü). Geliştiricilerin ses giriş ve çıkış cihazlarını kontrol etmelerine, ses akışlarını yönetmelerine ve ses cihazlarının özelliklerini alma ve ayarlama olanağı sağlar.

mmdevapi audioendpoints’in Özellikleri

mmdevapi audioendpoints, aşağıdakiler de dahil olmak üzere çok çeşitli özellikler sunar:

  • Ses cihazlarını listeleme: Geliştiriciler, sisteme bağlı tüm ses cihazlarının bir listesini alabilir.
  • Ses cihazı özelliklerini alma: Geliştiriciler, her ses cihazının örnekleme hızı, bit derinliği ve kanal sayısı gibi özelliklerini alabilir.
  • Ses cihazı varsayılanlarını ayarlama: Geliştiriciler, varsayılan ses giriş ve çıkış cihazlarını ayarlayabilir.
  • Ses akışlarını yönetme: Geliştiriciler, ses akışlarını oluşturabilir, başlatabilir, durdurabilir ve kapatabilir.
  • Ses akışı özelliklerini ayarlama: Geliştiriciler, ses akışlarının örnekleme hızını, bit derinliğini ve kanal sayısını ayarlayabilir.

mmdevapi audioendpoints’in Kullanımı

mmdevapi audioendpoints, C/C++ ve .NET dillerinde kullanılabilir. API, aşağıdaki gibi çeşitli işlevler sağlar:

  • IMMDeviceEnumerator: Ses cihazlarını listeler.
  • IMMDevice: Bir ses cihazını temsil eder.
  • IAudioClient: Bir ses akışını temsil eder.
  • IAudioCaptureClient: Ses giriş akışını temsil eder.
  • IAudioRenderClient: Ses çıkış akışını temsil eder.

Örnek Kod

Aşağıdaki C++ kodu örneği, mmdevapi audioendpoints’i kullanarak varsayılan ses çıkış cihazını nasıl alacağınızı gösterir:

“`cpp

include

int main()
{
IMMDeviceEnumerator deviceEnumerator = nullptr;
IMMDevice
defaultDevice = nullptr;

HRESULT hr = CoCreateInstance(__uuidof(MMDeviceEnumerator), nullptr, CLSCTX_INPROC_SERVER, __uuidof(IMMDeviceEnumerator), (void**)&deviceEnumerator);
if (FAILED(hr))
{
    return hr;
}

hr = deviceEnumerator->GetDefaultAudioEndpoint(eRender, eConsole, &defaultDevice);
if (FAILED(hr))
{
    deviceEnumerator->Release();
    return hr;
}

// Varsayılan ses çıkış cihazının özelliklerini alın.

deviceEnumerator->Release();
defaultDevice->Release();

return 0;

}
“`

Faydalı Kaynaklar


Yayımlandı

kategorisi