--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tsrc/mceclientstub/src/mcevideocodec.cpp Fri Jun 11 13:36:18 2010 +0300
@@ -0,0 +1,158 @@
+/*
+* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "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:
+*
+* Description:
+*
+*/
+
+
+#include "mcevideocodec.h"
+
+// Avc config keys for all the .
+// Getter is not virtual so keys must be returned from base class and
+// the level values defined in mceavccodec.h are redefined.
+_LIT8( KMceStubAvcBitrateLevel1ConfigKey, "TestTextForAvcBrL1Level" );
+_LIT8( KMceStubAvcBitrateLevel1bConfigKey, "TestTextForAvcBrL1bLevel" );
+_LIT8( KMceStubAvcBitrateLevel1_1ConfigKey, "TestTextForAvcBrL1_1Level" );
+_LIT8( KMceStubAvcBitrateLevel1_2ConfigKey, "TestTextForAvcBrL1_2Level" );
+_LIT8( KMceStubAvcBitrateLevel1_3ConfigKey, "TestTextForAvcBrL1_3Level" );
+_LIT8( KMceStubAvcBitrateLevel2ConfigKey, "TestTextForAvcBrL2Level" );
+const TUint KMceStubAvcBitrateLevel1 = 0x0001;
+const TUint KMceStubAvcBitrateLevel1b = 0x0002;
+const TUint KMceStubAvcBitrateLevel1_1 = 0x0004;
+const TUint KMceStubAvcBitrateLevel1_2 = 0x0008;
+const TUint KMceStubAvcBitrateLevel1_3 = 0x0010;
+const TUint KMceStubAvcBitrateLevel2 = 0x0020;
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+
+// -----------------------------------------------------------------------------
+// CMceVideoCodec::~CMceVideoCodec
+// -----------------------------------------------------------------------------
+//
+CMceVideoCodec::~CMceVideoCodec()
+ {
+ delete iConfigKey;
+ }
+
+
+// -----------------------------------------------------------------------------
+// CMceVideoCodec::AllowedFrameRates
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TUint CMceVideoCodec::AllowedFrameRates() const
+ {
+ return iAllowedFrameRates;
+ }
+
+
+// -----------------------------------------------------------------------------
+// CMceVideoCodec::FrameRate
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TReal CMceVideoCodec::FrameRate() const
+ {
+ return iFrameRate;
+ }
+
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C HBufC8* CMceVideoCodec::ConfigKeyL() const
+ {
+ HBufC8* configKey = NULL;
+
+ if ( iConfigKey )
+ {
+ configKey = iConfigKey->AllocL();
+ }
+
+ if ( !configKey && SdpName() == KMceSDPNameH264() )
+ {
+ if ( AllowedBitrates() & KMceStubAvcBitrateLevel1 )
+ {
+ configKey = KMceStubAvcBitrateLevel1ConfigKey().AllocL();
+ }
+ else if ( AllowedBitrates() & KMceStubAvcBitrateLevel1b )
+ {
+ configKey = KMceStubAvcBitrateLevel1bConfigKey().AllocL();
+ }
+ else if ( AllowedBitrates() & KMceStubAvcBitrateLevel1_1 )
+ {
+ configKey = KMceStubAvcBitrateLevel1_1ConfigKey().AllocL();
+ }
+ else if ( AllowedBitrates() & KMceStubAvcBitrateLevel1_2 )
+ {
+ configKey = KMceStubAvcBitrateLevel1_2ConfigKey().AllocL();
+ }
+ else if ( AllowedBitrates() & KMceStubAvcBitrateLevel1_3 )
+ {
+ configKey = KMceStubAvcBitrateLevel1_3ConfigKey().AllocL();
+ }
+ else if ( AllowedBitrates() & KMceStubAvcBitrateLevel2 )
+ {
+ configKey = KMceStubAvcBitrateLevel2ConfigKey().AllocL();
+ }
+ else
+ {
+ User::Leave( KErrNotFound );
+ }
+ }
+
+ return configKey;
+ }
+
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TUint CMceVideoCodec::MaxBitRate() const
+ {
+ return iMaxBitRate;
+ }
+
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TUint CMceVideoCodec::AllowedResolutions() const
+ {
+ return iAllowedResolutions;
+ }
+
+
+// -----------------------------------------------------------------------------
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TSize CMceVideoCodec::Resolution() const
+ {
+ return TSize( iResolutionWidth,
+ iResolutionHeight );
+ }
+
+
+// -----------------------------------------------------------------------------
+// CMceVideoCodec::CMceVideoCodec
+// -----------------------------------------------------------------------------
+//
+CMceVideoCodec::CMceVideoCodec()
+ {
+ iType = KMceVideoCodec;
+ }
+