RMMFVideoPlaySurfaceSupportCustomCommands Class Reference

class RMMFVideoPlaySurfaceSupportCustomCommands : public RMMFCustomCommandsBase

Client class to access functionality specific to a video surface support playback controller.

The class uses the custom command function of the controller plugin, and removes the necessity for the client to formulate the custom commands.

Inherits from

Constructor & Destructor Documentation

RMMFVideoPlaySurfaceSupportCustomCommands(RMMFController &)

IMPORT_CRMMFVideoPlaySurfaceSupportCustomCommands(RMMFController &aController)

Constructor.

Parameters

RMMFController & aControllerThe client side controller object to be used by this custom command interface.

Member Functions Documentation

GetSurfaceParameters(TSurfaceId &, TRect &, TVideoAspectRatio &)

IMPORT_C TIntGetSurfaceParameters(TSurfaceId &aSurfaceId,
TRect &aCropRect,
TVideoAspectRatio &aPixelAspectRatio
)const

Gets the surface parameters for a display.

The client utility typically calls this in response to KMMFEventCategoryVideoSurfaceCreated and KMMFEventCategoryVideoSurfaceParametersChanged events to retrieve new or updated surface information for a display.

Parameters

TSurfaceId & aSurfaceIdSurface id of the current surface.
TRect & aCropRectCropping rectangle within the surface. The crop rectangle identifies the area of the surface that should be shown on the screen.
TVideoAspectRatio & aPixelAspectRatioVideo picture pixel aspect ratio.

SurfaceRemoved(TSurfaceId &)

IMPORT_C TIntSurfaceRemoved(TSurfaceId &aSurfaceId)const

Indicates that the surface is no longer in use and can be destroyed.

The client utility typically calls this in response to either:

KMMFEventCategoryVideoSurfaceCreated - when a surface is already registered with the utility. This indicates that the client utility should stop using the current surface and use the one supplied in the notification. When the client utility is no longer using the current surface it calls SurfaceRemoved()

KMMFEventCategoryVideoRemoveSurface - when the current surface should be removed. This indicates that the client utility should stop using the current surface immediately. When the client utility is no longer using the current surface it calls SurfaceRemoved()

Parameters

TSurfaceId & aSurfaceIdSurface which is no longer being used by client utility.

UseSurfaces()

IMPORT_C TIntUseSurfaces()const

Enables using graphics surfaces for video playback.

Instructs the controller to use graphics surfaces as destination. Note that direct screen access and graphics surface use is mutually exclusive, enabling one will disable the other.