Symbian3/SDK/Source/GUID-2DC80BA9-7AA2-5CD3-9105-1DE28CE196C1.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Tue, 20 Jul 2010 12:00:49 +0100
changeset 13 48780e181b38
parent 0 89d6a7a84779
permissions -rw-r--r--
Week 28 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 1897 and Bug 1522.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-2DC80BA9-7AA2-5CD3-9105-1DE28CE196C1"><title>Video Client Overview </title><prolog><metadata><keywords/></metadata></prolog><conbody><p>This document provides an overview of the video client library in the multimedia framework component. </p> <section><title>Purpose</title> <p>The Video Client provides basic video file manipulation features. The Video Client enables you to: </p> <ul><li id="GUID-D5BBB300-FC65-57F2-8B6F-C56D978A8834"><p>Record and play back video clips (with and without attached audio). </p> </li> <li id="GUID-B3B78980-7344-5DD2-ABA7-6C8D93F23DB3"><p>Render video to graphics surfaces (with and without an associated target window). </p> </li> <li id="GUID-0BC8538E-787B-5174-871B-B113D99FD81E"><p>Manipulate video file metadata (if supported by the video format being used). </p> </li> </ul> <p><b>Video Client Library Details</b> </p> <p>The DLL that provides the functionality and the library to which your code must link is identified below. </p> <table id="GUID-B893730B-DC80-5C94-86F5-AA1DD33B47FE"><tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><thead><row><entry>DLL</entry> <entry>LIB</entry> <entry>Short Description</entry> </row> </thead> <tbody><row><entry><p> <b>mediaclientvideo.dll</b>  </p> </entry> <entry><p> <b>mediaclientvideo.lib</b>  </p> </entry> <entry><p>These files are used for implementing the Video Client. </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Architectural Relationship</title> <p>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. </p> <p>Clients using the <xref href="GUID-0F1F8AC6-B99F-3274-A785-9977197AF762.dita"><apiname>CVideoPlayerUtility</apiname></xref>, <xref href="GUID-42D1182F-46D8-3C78-8D3C-C1BB465FCA1F.dita"><apiname>CVideoPlayerUtility2</apiname></xref> or <xref href="GUID-8A183C79-0EA4-3A4A-B95F-E2F1BF74238D.dita"><apiname>CVideoRecorderUtility</apiname></xref> classes must have an active scheduler running in their thread because the implementations use active objects and callbacks. </p> <p>The <codeph>CVideoPlayerUtility</codeph> function uses <xref href="GUID-2BE86C43-A982-39BC-B881-C190966A7E77.dita"><apiname>CMediaClientVideoDisplay</apiname></xref> to support video display. This allows clients to use video display functionality separately from the client utilities. </p> </section> <section><title>Description</title> <p>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. </p> </section> <section><title>Key Video Client Classes</title> <p>The video play and record functionality provided by the Video Client is contained within the following key classes: </p> <ul><li id="GUID-1FC8E8FF-D578-5214-9B4E-2A85D029040D"><p> <xref href="GUID-0F1F8AC6-B99F-3274-A785-9977197AF762.dita"><apiname>CVideoPlayerUtility</apiname></xref> - the video player class. This class provides an interface to play sampled video data. </p> </li> <li id="GUID-4B6CBE5B-43FA-5C63-9D46-107FD9DA8843"><p> <xref href="GUID-42D1182F-46D8-3C78-8D3C-C1BB465FCA1F.dita"><apiname>CVideoPlayerUtility2</apiname></xref> - the video player 2 class. This class provides an interface to play sampled video data on graphics surfaces. </p> </li> <li id="GUID-4CCCA725-C6CD-5C38-BACA-4E5BB0E9853A"><p> <xref href="GUID-4D07E7B5-AFDD-3D55-8EB6-EDAB61F8C7F9.dita"><apiname>MVideoPlayerUtilityObserver</apiname></xref> - an interface to a set of video player callback functions. </p> </li> <li id="GUID-2C3BFAC6-3C6F-542D-B2CA-82A226B3B281"><p> <xref href="GUID-8A183C79-0EA4-3A4A-B95F-E2F1BF74238D.dita"><apiname>CVideoRecorderUtility</apiname></xref> - the video recorder class. This class provides an interface to record sampled video data. </p> </li> <li id="GUID-954BB4B8-D8B3-5A66-930D-A0BFFA2B4BFD"><p> <xref href="GUID-3DA683D9-644B-3629-901F-96F1B49EE0C7.dita"><apiname>MVideoRecorderUtilityObserver</apiname></xref> - an interface to a set of video recorder callback functions. </p> </li> </ul> </section> <section><title>Using the Video Client</title> <p>Clients can use the Video Client to: </p> <ul><li id="GUID-34E3471F-C697-5F69-AE01-D69FB53689D3"><p><xref href="GUID-3F0856D9-7B58-5519-9B26-97F1A035E21D.dita">Open and play video clips contained in files, descriptors or URLs</xref>. </p> </li> <li id="GUID-AB036EBA-0F1A-5A62-A0E3-7A3322D200DC"><p><xref href="GUID-D38456FB-BAA2-5473-B669-F44D5627155B.dita"> Open and play video data on graphics surfaces</xref>. </p> </li> <li id="GUID-CB4AF1A7-8EC1-5967-A75F-55CEB726345A"><p><xref href="GUID-37934768-50D0-52A8-B594-B47D5E27722B.dita">Open a recording device and record video clips to files, descriptors or URLs, and manipulate embedded metadata</xref>. </p> </li> <li id="GUID-A3BA2E8D-FFDE-5D82-A271-A4C2F374EE32"><p>Display <xref href="GUID-80E8BA3A-FDF3-50A5-BF44-181C40C31F09.dita">video subtitle CRP</xref> artwork on a video window. </p> </li> </ul> </section> <section><title>See Also</title> <p><xref href="GUID-F370A917-6963-58F6-8876-160A1DC42040.dita">Video Client Tutorials</xref>  </p> <p><xref href="GUID-EB58901D-66BD-56BF-B0CD-5FC4F73F06F3.dita">DevVideo Overview</xref>  </p> </section> </conbody></concept>