### IDirectDrawVideoPort::Flip

The IDirectDrawVideoPort::Flip method instructs the DirectDrawVideoPort object to write the next frame of video to a new surface.

HRESULT Flip(

LPDIRECTDRAWSURFACE lpDDSurface,

DWORD dwFlags

);

##### Parameters

lpDDSurface
  Address of the DirectDrawSurface object that will receive the next frame of video.
dwFlags
  Flip options flags. This parameter can be one of the following values.

  DDVPFLIP_VIDEO
  | The specified surface is to receive the normal video data.
  DDVPFLIP_VBI
  | The specified surface is to receive only the data within the vertical blanking interval.

##### Return Values

If the method succeeds, the return value is DD_OK.

If the method fails, the return value may be one of the following error values:

DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS

##### Remarks

This method can be used to prevent tearing. Calls to IDirectDrawVideoPort::Flip are asynchronousūthe actual flip operation will always be synchronized with the vertical blank of the video signal.