Compartilhar via


Método IAMDevMemoryAllocator::GetDevMemoryObject (strmif.h)

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Nota A interface IAMDevMemoryAllocator foi preterida.
 
Recupera um ponteiro de interface IUnknown para um objeto de controle de memória do dispositivo que pode ser agregado com um alocador personalizado.

Sintaxe

HRESULT GetDevMemoryObject(
  [out] IUnknown **ppUnkInnner,
  [in]  IUnknown *pUnkOuter
);

Parâmetros

[out] ppUnkInnner

Endereço de um ponteiro para o IUnknown do objeto de controle recém-criado. Essa interface IUnknown interna deve ser liberada quando o objeto externo é destruído. O alocador personalizado deve chamar o método QueryInterface nesse ponteiro para obter a interface IAMDevMemoryControl .

[in] pUnkOuter

Ponteiro para a própria interface IUnknown do alocador personalizado. Essa interface agrega o objeto de controle de memória do dispositivo dentro do alocador personalizado.

Retornar valor

Retorna um valor HRESULT .

Comentários

O objeto de controle de memória do dispositivo é necessário para agregar com o alocador personalizado, pois os renderizadores que exigem o uso da memória a bordo consultarão IAMDevMemoryControl quando receberem um novo alocador, para verificar se a memória é do mesmo dispositivo. Isso ocorre porque o filtro de hardware receberá um objeto IMemAllocator , que pode ou não usar a memória a bordo. Para decidir se é um alocador compatível, o objeto consultaria a interface IAMDevMemoryControl para acessar métodos específicos. O IAMDevMemoryControl cria um objeto agregado que implementa os métodos de IAMDevMemoryControl (geralmente são específicos de hardware).

Consulte a documentação COM para obter regras sobre como o objeto externo implementa a agregação.

Requisitos

   
Plataforma de Destino Windows
Cabeçalho strmif.h (inclua Dshow.h)

Confira também

Códigos de erro e êxito

IAMDevMemoryAllocator Interface