[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-datatype-cvs
Subject: [Datatype-cvs] mdf/video/renderer/pub mdfpluginmanager.h, 1.2.2.7,
From: jwei () helixcommunity ! org
Date: 2007-06-28 21:55:23
Message-ID: 200706282155.l5SLtg4B010745 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/datatype/mdf/video/renderer/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv23873/video/renderer/pub
Modified Files:
Tag: hxclient_2_1_0_cayennes
mdfpluginmanager.h mdfpluginpackage.h
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with \
RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 18-June-2007
Project: SymbianMmf_Rel
TSW: TBD
Synopsis: MDF Video Renderer - fix decoder and postprocessor mismatch
In the file \datatype\mdf\video\format\common\mdfpayloadformat.cpp,
Before 4/7/07, following method was declared as
==================================================
XBOOL CMdfPluginManager::IsDecoderSupportMimeTypeL( const CVideoDecoderInfo* \
pDecoderInfo, const TDesC8& aMimeType, const CCompressedVideoFormat*& \
pCCompressedVideoFormat ) const ==================================================
After 4/7/07, it is modified as following to accommodate WM:
==================================================
HXBOOL CMdfPluginManager::IsDecoderSupportMimeTypeL( const CVideoDecoderInfo* \
pDecoderInfo, const CPayloadFormatInfo* aPayloadInfo , const CCompressedVideoFormat*& \
pCCompressedVideoFormat ) const ==================================================
This method is used in the way as follows:
==================================================
for( TInt m = 0; m < payloadformatCount; m++ )
{
if( payloadformatinfo->SupportMimeType( aMimeType ) )
{
for( TInt j = 0; j < decoderCount; j++ )
{
if( IsDecoderSupportMimeTypeL( decoderInfo, *convertedMimeType, format ) ) //before \
4/7/07
if( IsDecoderSupportMimeTypeL( decoderInfo, payloadformatinfo, format ) ) //after \
4/7/07
{
==================================================
IsDecoderSupportMimeTypeL() is meant to check if decoder supports a particular \
mimetype. However modified version is made to check if decoder and payloadformat have \
common mimetype, instead of this particular mimetype. This causes decoders could be \
paired wrongly with postprocessors, which resulting in video not played at all for \
affected mimetypes.
This CR proposes to fix the bug stated above.
Files Modified:
/cvsroot/datatype/mdf/video/format/common/mdfpayloadformat.cpp
/cvsroot/datatype/mdf/video/format/common/pub/mdfpayloadformat.h
/cvsroot/datatype/mdf/video/format/h263/mdfh263payloadformat.cpp
/cvsroot/datatype/mdf/video/format/h264/mdfh264payloadformat.cpp
/cvsroot/datatype/mdf/video/format/mp4/mdfmp4payloadformat.cpp
/cvsroot/datatype/mdf/video/format/rm/mdfrvxpayloadformat.cpp
/cvsroot/datatype/mdf/video/format/wmv/mdfwmvpayloadformat.cpp
/cvsroot/datatype/mdf/video/renderer/mdfpluginmanager.cpp
/cvsroot/datatype/mdf/video/renderer/pub/mdfpluginmanager.h
/cvsroot/datatype/mdf/video/renderer/mdfpluginarchive.cpp
/cvsroot/datatype/mdf/video/renderer/pub/mdfpluginpackage.h
/cvsroot/datatype/mdf/video/renderer/mdfpluginpackage.cpp
/cvsroot/datatype/mdf/video/renderer/mdfvideoadapter.cpp
======================================================
Image Size and Heap Use impact: minor
Module Release testing (STIF) : Passed
Test case(s) Added : None
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: mdfpluginpackage.h
===================================================================
RCS file: /cvsroot/datatype/mdf/video/renderer/pub/mdfpluginpackage.h,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -u -d -r1.1.2.4 -r1.1.2.5
--- mdfpluginpackage.h 27 Mar 2007 16:00:49 -0000 1.1.2.4
+++ mdfpluginpackage.h 28 Jun 2007 21:55:21 -0000 1.1.2.5
@@ -72,6 +72,7 @@
const TDesC8& GetHelixMimeType() const;
const TDesC8& GetVideoHwMimeType() const;
+ const TDesC8& GetMimeTypeKey() const;
TUid GetHwDecoderId() const;
TUid GetHwPostProcessorId() const;
const TUncompressedVideoFormat& GetHwUncompressedVideoFormat() const;
@@ -79,6 +80,7 @@
TUid Uid() const;
void SetHelixMimeTypeL( const TDesC8& aMimeType );
void SetVideoHwMimeTypeL( const TDesC8& aMimeType );
+ void SetMimeTypeKeyL( const TDesC8& aMimeType );
void SetVideoDataUnitType( TVideoDataUnitType aVideoDataUnitType );
void SetVideoDataUnitEncapsulation( TVideoDataUnitEncapsulation \
aVideoDataUnitEncapsulation ); TVideoDataUnitType GetVideoDataUnitType() \
const; @@ -108,6 +110,7 @@
private:
HBufC8* m_pMimeTypeHelix;
HBufC8* m_pMimeTypeVidHw;
+ HBufC8* m_pMimeTypeKey;
TUid m_HwDecoderId;
TUid m_HwPostProcessorId;
TUncompressedVideoFormat m_UncompressedVideoFormat;
Index: mdfpluginmanager.h
===================================================================
RCS file: /cvsroot/datatype/mdf/video/renderer/pub/mdfpluginmanager.h,v
retrieving revision 1.2.2.7
retrieving revision 1.2.2.8
diff -u -d -r1.2.2.7 -r1.2.2.8
--- mdfpluginmanager.h 7 Apr 2007 22:09:23 -0000 1.2.2.7
+++ mdfpluginmanager.h 28 Jun 2007 21:55:21 -0000 1.2.2.8
@@ -119,7 +119,7 @@
virtual void MdvppStreamEnd(){}
private:
- HXBOOL IsDecoderSupportMimeTypeL( const CVideoDecoderInfo* pDecoderInfo, const \
CPayloadFormatInfo* aPayloadInfo , const CCompressedVideoFormat*& \
pCCompressedVideoFormat ) const; + HXBOOL IsDecoderSupportMimeTypeL( const \
CVideoDecoderInfo* pDecoderInfo, const TDesC8& aMimeType, const \
CCompressedVideoFormat*& pCCompressedVideoFormat ) const; HXBOOL \
ImplementRulesIfMet( CPluginPackage& pluginPackage ) const;
void GetPackagesByMimeTypeL( const TDesC8& aMimeType, \
RPointerArray<CPluginPackage>& packageList );
_______________________________________________
Datatype-cvs mailing list
Datatype-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/datatype-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic