IVMRSurfaceAllocator9::InitializeDevice method

The InitializeDevice method is called by the Video Mixing Renderer 9 (VMR-9) when it needs the allocator-presenter to allocate surfaces.

Syntax


HRESULT InitializeDevice(
  [in]      DWORD_PTR          dwUserID,
  [in]      VMR9AllocationInfo *lpAllocInfo,
  [in, out] DWORD              *lpNumBuffers
);

Parameters

dwUserID [in]

Application-defined identifier. This value is the same value that the application passed to the IVMRSurfaceAllocatorNotify9::AdviseSurfaceAllocator method in the dwUserID parameter.

lpAllocInfo [in]

Pointer to a VMR9AllocationInfo structure that contains a description of the surfaces to create.

lpNumBuffers [in, out]

On input, specifies the number of surfaces to create. When the method returns, this parameter contains the number of buffers that were actually allocated.

Return value

The method returns an HRESULT. Possible values include those in the following table.

Return codeDescription
S_OK

The method succeeded.

 

Remarks

Implement this method if you are providing a custom allocator-presenter for the VMR-9. You can use the IVMRSurfaceAllocatorNotify9::AllocateSurfaceHelper method on the VMR-9 to allocate the surfaces.

Include DShow.h and D3d9.h before Vmr9.h.

Requirements

Minimum supported client

Windows XP with SP2 [desktop apps only]

Minimum supported server

Windows Server 2003 R2 [desktop apps only]

Header

Vmr9.h

Library

Strmiids.lib

See also

Error and Success Codes
IVMRSurfaceAllocator9 Interface
Supplying a Custom Allocator-Presenter for VMR-7
Using the Video Mixing Renderer
VMR Renderless Playback Mode (Custom Allocator-Presenters)

 

 

Show: