Microsoft DirectX 9.0


The GetVideoFormats method retrieves the video formats the driver supports.


HRESULT GetVideoFormats(
  LPDWORD pdwNumFormats,



[in, out] Pointer to a variable that specifies the number of DDPIXELFORMAT structures in the pddPixelFormats array. On input, specifies the size of the array (in number of array elements). On output, contains the actual number of DDPIXELFORMAT structures that were copied into the array. If pddPixelFormat is NULL, the method returns the required array size.


[in, out] Pointer to an array of DDPIXELFORMAT structures, allocated by the caller. The device fills in the array with the format information.

Return Values

Returns S_OK if successful, or an error code otherwise.


The client first calls this method with the value NULL for the pddPixelFormats parameter. The device returns the number of DDPIXELFORMAT structures in the pddPixelFormatso parameter. The client allocates an array of that size, and calls the method again, passing the address of the array in the pddPixelFormats parameter. The device copies the format information into the buffer, and returns the actual number of copied structures in the pddPixelFormats parameter.

The DDPIXELFORMAT structure is documented in the Windows DDK. 

The client sets the format by calling the IVPBaseConfig::SetVideoFormat method with an index number, which references one of the format structures returned by this method.

See Also