Compartilhar via


Método IAudioDeviceModulesClient::SetAudioDeviceModulesManager (audioenginebaseapo.h)

Chamado pelo sistema para passar uma instância de AudioDeviceModulesManager para APOs (Objetos de Processamento de Áudio) que implementam a interface IAudioDeviceModulesClient .

Sintaxe

HRESULT SetAudioDeviceModulesManager(
  IUnknown *pAudioDeviceModulesManager
);

Parâmetros

pAudioDeviceModulesManager

Uma interface IUnknown que representa o IAudioDeviceModulesManager.

Retornar valor

Um HRESULT.

Comentários

O exemplo de código a seguir ilustra uma implementação de IAudioDeviceModulesClient.

STDMETHODIMP CTestModuleAPO::SetAudioDeviceModulesManager(_In_ IUnknown* pAudioDeviceModulesManager) 
{
    HRESULT hr = S_OK;
    CComQIPtr<Windows::Media::Devices::IAudioDeviceModulesManager> spModuleManager = pAudioDeviceModulesManager;
    ComPtr<IVectorView<AudioDeviceModule *>> spModules;

    // Cache the audio modules manager for later use within the apo
    m_AudioModulesManager = pAudioDeviceModulesManager;

    // Search the audio modules for a known module
    hr = m_pAudioDeviceModulesMgr->FindAllById(KNOWN_MODULE_ID, &spModules);

    if (SUCCEEDED(hr))
    {
        // do something with the module(s) returned or cache them for later usage
        m_KnownModules = spModules;
    }

    return hr;
}

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10 Build 20348
Cabeçalho audioenginebaseapo.h