This document provides an overview of the video client library in the multimedia framework component.
The Video Client provides basic video file manipulation features. The Video Client enables you to:
Record and play back video clips (with and without attached audio).
Render video to graphics surfaces (with and without an associated target window).
Manipulate video file metadata (if supported by the video format being used).
Video Client Library Details
The DLL that provides the functionality and the library to which your code must link is identified below.
The methods for playing and recording video clips interact with the lower levels of MMF (known as the controller framework). The controller framework is in turn responsible for managing the interface to video and audio hardware. On some phones, this is implemented as a device driver; on others it may be implemented as a connection to lower level hardware controllers.
Clients using the CVideoPlayerUtility, CVideoPlayerUtility2 or CVideoRecorderUtility classes must have an active scheduler running in their thread because the implementations use active objects and callbacks.
The CVideoPlayerUtility function uses CMediaClientVideoDisplay to support video display. This allows clients to use video display functionality separately from the client utilities.
The video classes are plug-in based, leaving the list of supported video formats for input and output open ended. Unlike the audio classes, no default video formats/codecs are provided. It is the responsibility of the device creator to develop and implement appropriate video plug-ins.
The video play and record functionality provided by the Video Client is contained within the following key classes:
CVideoPlayerUtility - the video player class. This class provides an interface to play sampled video data.
CVideoPlayerUtility2 - the video player 2 class. This class provides an interface to play sampled video data on graphics surfaces.
MVideoPlayerUtilityObserver - an interface to a set of video player callback functions.
CVideoRecorderUtility - the video recorder class. This class provides an interface to record sampled video data.
MVideoRecorderUtilityObserver - an interface to a set of video recorder callback functions.
Clients can use the Video Client to: