--- a/ipappsrv_info/ipappsrv_metadata/ipappsrv_metadata.mrp Fri May 28 16:08:43 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,6 +0,0 @@
-component ipappsrv_metadata
-source \sf\mw\ipappsrv\ipappsrv_info\ipappsrv_metadata
-source \sf\mw\ipappsrv\package_definition.xml
-source \sf\mw\ipappsrv\distribution.policy.s60
-notes_source \component_defs\release.src
-ipr T
--- a/multimediacommscontroller/mmccfilesourcesink/inc/mccfileaudio.h Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccfilesourcesink/inc/mccfileaudio.h Fri Jun 11 11:20:25 2010 +0300
@@ -100,6 +100,7 @@
#ifdef EUNIT_TEST
friend class UT_CMccFileAudio;
friend class UT_CMccMultiplexer;
+ friend class UT_CMccFileSourceImpl;
#endif
};
--- a/multimediacommscontroller/mmccfilesourcesink/inc/mccfilevideo.h Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccfilesourcesink/inc/mccfilevideo.h Fri Jun 11 11:20:25 2010 +0300
@@ -56,6 +56,7 @@
TFourCC GetFourCC();
TCallBack TickCallBack();
HBufC8* GetConfigKeyL();
+ TUint32 VideoType() const;
public:
static TInt TickVideoL( TAny* aObject );
--- a/multimediacommscontroller/mmccfilesourcesink/src/mccfilesourceimpl.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccfilesourcesink/src/mccfilesourceimpl.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -28,6 +28,7 @@
#include "mccfilevideo.h"
#include "mccinternalevents.h"
#include "mmccinterfacedef.h"
+#include "mccinternaldef.h"
@@ -368,12 +369,14 @@
// Average bitrate is for the whole stream,
// subtract audio average to get video average
- TUint32 averageBitRate = iFileVideo->StreamAverageBitRate() - audioBitRate;
+ TUint32 videoBitRate = iFileVideo->StreamAverageBitRate() - audioBitRate;
+ MccConversionUtility::BitRateSanitize(
+ videoBitRate, videoBitRate, iFileVideo->VideoType() );
__FILESOURCE_CONTROLL_INT1( "CMccFileSourceImpl::VideoBitRateL, videoBitRate",
- averageBitRate )
+ videoBitRate )
- return averageBitRate;
+ return videoBitRate;
}
// -----------------------------------------------------------------------------
--- a/multimediacommscontroller/mmccfilesourcesink/src/mccfilevideo.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccfilesourcesink/src/mccfilevideo.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -231,7 +231,16 @@
ExtractH264ParameterSetNALUsL( &configKey, ETrue );
return configKey;
}
-
+
+// -----------------------------------------------------------------------------
+// CMccFileVideo::VideoType
+// -----------------------------------------------------------------------------
+//
+TUint32 CMccFileVideo::VideoType() const
+ {
+ return iType;
+ }
+
// -----------------------------------------------------------------------------
// CMccFileVideo::Position
// -----------------------------------------------------------------------------
@@ -279,10 +288,9 @@
//
TReal CMccFileVideo::VideoFrameRateL()
{
- // Round to have zero decimals for clearness sake
- TReal roundedFrameRate;
- User::LeaveIfError( Math::Round( roundedFrameRate, iFrameRate, 0 ) );
- return roundedFrameRate;
+ TReal modFrameRate;
+ MccConversionUtility::FrameRateSanitize( modFrameRate, iFrameRate, iType );
+ return modFrameRate;
}
// -----------------------------------------------------------------------------
--- a/multimediacommscontroller/mmccfilesourcesink/tsrc/ut_filesourcesink/Src/UT_CMCCFileSourceImpl.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccfilesourcesink/tsrc/ut_filesourcesink/Src/UT_CMCCFileSourceImpl.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -23,6 +23,7 @@
#include "mmcccodecinformation.h"
#include "mccresourcepool.h"
#include "mmccinterfacedef.h"
+#include "mccinternaldef.h"
#include "mccunittestmacros.h"
@@ -252,6 +253,12 @@
void UT_CMccFileSourceImpl::UT_CMccFileSourceImpl_VideoBitRateLL( )
{
TUint32 videoBitRate = iSourceImp->VideoBitRateL();
+ EUNIT_ASSERT_EQUALS(videoBitRate, KMccH263ProfileZeroMinBitRateIOP); // Low bitrate increased to more interoperable
+
+ // Test situation where no need to make iop modification for bitrate
+ iSourceImp->iFileVideo->iStreamAverageBitRate = 100000;
+ videoBitRate = iSourceImp->VideoBitRateL();
+ EUNIT_ASSERT_EQUALS(videoBitRate, iSourceImp->iFileVideo->iStreamAverageBitRate - iSourceImp->iFileAudio->iAverageBitRate);
}
void UT_CMccFileSourceImpl::UT_CMccFileSourceImpl_PositionLL( )
--- a/multimediacommscontroller/mmccfilesourcesink/tsrc/ut_filesourcesink/Src/UT_CMccFileAudio.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccfilesourcesink/tsrc/ut_filesourcesink/Src/UT_CMccFileAudio.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -32,6 +32,7 @@
#include "mmccinterfacedef.h"
#include "mccresourcepool.h"
#include "Mcculdatapath.h"
+#include "mccinternaldef.h"
// CONSTRUCTION
UT_CMccFileAudio* UT_CMccFileAudio::NewL()
@@ -315,7 +316,20 @@
void UT_CMccFileAudio::UT_CMccFileAudio_VideoFrameRateLL( )
{
TReal videoFrameRate = iAudio->VideoFrameRateL();
+ EUNIT_ASSERT_EQUALS( (TInt)videoFrameRate, 0 );
TReal videoFrameRate2 = iVideo->VideoFrameRateL();
+ EUNIT_ASSERT_EQUALS( (TInt)videoFrameRate2, 5 );
+
+ // Test that framerate is limited to more interoperable value if value is too high for codec type
+ iVideo->iType = MP4_TYPE_H263_PROFILE_0;
+ iVideo->iFrameRate = 21;
+ videoFrameRate2 = iVideo->VideoFrameRateL();
+ EUNIT_ASSERT_EQUALS( (TInt)videoFrameRate2, KMccH263ProfileZeroMaxFramerateIOP );
+
+ iVideo->iType = MP4_TYPE_AVC_PROFILE_BASELINE;
+ iVideo->iFrameRate = 18;
+ videoFrameRate2 = iVideo->VideoFrameRateL();
+ EUNIT_ASSERT_EQUALS( (TInt)videoFrameRate2, 18 ); // Value not changed for AVC
}
void UT_CMccFileAudio::UT_CMccFileAudio_StartTimerL( )
--- a/multimediacommscontroller/mmccshared/inc/mccinternaldef.h Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccshared/inc/mccinternaldef.h Fri Jun 11 11:20:25 2010 +0300
@@ -25,6 +25,8 @@
#include <e32base.h>
#include <mmf/common/mmfcontroller.h>
#include <tconvbase64.h>
+#include <e32math.h>
+#include <3gplibrary/mp4lib.h>
#include "rtpdef.h"
@@ -68,6 +70,10 @@
// Increased RTP socket size in bytes, default socket size is around 4KB
const TInt KMccIncreasedRtpSocketSize = 10000;
+// Values used to force better interoperability against some vendors
+const TReal KMccH263ProfileZeroMaxFramerateIOP = 15;
+const TUint32 KMccH263ProfileZeroMinBitRateIOP = 64001;
+
// MACROS
#ifdef _DEBUG
@@ -782,6 +788,35 @@
User::LeaveIfError( encoder.Encode( aInput, ptrOutput ) );
return output;
}
+
+ static void FrameRateSanitize(
+ TReal& aSanitizedFrameRate, TReal aOrigFrameRate, TUint32 aVideoType )
+ {
+ // Round to have zero decimals for clearness sake
+ User::LeaveIfError( Math::Round( aSanitizedFrameRate, aOrigFrameRate, 0 ) );
+
+ if ( aVideoType == MP4_TYPE_H263_PROFILE_0 &&
+ aSanitizedFrameRate > KMccH263ProfileZeroMaxFramerateIOP )
+ {
+ aSanitizedFrameRate = KMccH263ProfileZeroMaxFramerateIOP;
+ }
+ }
+
+ static void BitRateSanitize(
+ TUint32& aSanitizedBitRate, TUint32 aOrigBitRate, TUint32 aVideoType )
+ {
+ if ( aVideoType == MP4_TYPE_H263_PROFILE_0 &&
+ aOrigBitRate > 0 &&
+ aOrigBitRate < KMccH263ProfileZeroMinBitRateIOP )
+ {
+ aSanitizedBitRate = KMccH263ProfileZeroMinBitRateIOP;
+ }
+ else
+ {
+ aSanitizedBitRate = aOrigBitRate;
+ }
+ }
+
};
#endif
--- a/multimediacommscontroller/mmccsubcontroller/src/mcccodecconfigurator.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommscontroller/mmccsubcontroller/src/mcccodecconfigurator.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -667,14 +667,19 @@
__SUBCONTROLLER( "AVC" )
setting.iVideoFourCC = TFourCC( KMccFourCCIdAVC );
}
- // Round to have zero decimals for clearness sake
- User::LeaveIfError( Math::Round( setting.iVideoFrameRate, frameRate, 0 ) );
+
+ MccConversionUtility::FrameRateSanitize(
+ setting.iVideoFrameRate, frameRate, videoType );
+
setting.iVideoFrameSize.iWidth = videoWidth;
setting.iVideoFrameSize.iHeight = videoHeight;
// Average bitrate is for the whole stream,
// subtract audio average to get video average
setting.iVideoBitRate = videoAverageBitRate - audioAverageBitRate;
+
+ MccConversionUtility::BitRateSanitize(
+ setting.iVideoBitRate, setting.iVideoBitRate, videoType );
}
else
{
--- a/multimediacommsengine/mmceshared/src/mcecomamrwbcodec.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommsengine/mmceshared/src/mcecomamrwbcodec.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -306,6 +306,7 @@
//if offerer codec represents the sent offer and mcc codec the answer
// Bitrates field contains also additional information, mask it away
+ /*
TUint mccBitrates = ( aMccCodec.AllowedBitrates() & KMceAllowedAmrWbBitrateAll );
TUint mceBitrates = ( iAllowedBitrates & KMceAllowedAmrWbBitrateAll );
@@ -314,7 +315,9 @@
mceBitrates > mccBitrates ) :
( mceBitrates && mccBitrates == 0 ||
mceBitrates < mccBitrates );
-
+
+ */
+// User::LeaveIfError( notValid ? KErrNotSupported : KErrNone );
if ( aMccCodec.CodecMode() != (TCodecMode)iCodecMode )
{
// codec-mode was different, fail.
--- a/multimediacommsengine/mmcesrv/mmcemediamanager/src/mcemediasdpcodec.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommsengine/mmcesrv/mmcemediamanager/src/mcemediasdpcodec.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -916,28 +916,43 @@
const TUint8 KAddrOffsetFromNetType = 4;
TInt addr_offset =
value.Match( KMatchIp ) + KAddrOffsetFromNetType;
- TPtrC8 remoteRtcpAddr = value.Mid( addr_offset );
+ TPtrC8 remoteRtcpAddrTxt = value.Mid( addr_offset );
const TUint8 KPortOffsetFromIP = 1;
TInt port_offset =
value.Match( KMatchIN ) - KPortOffsetFromIP;
- TPtrC8 remoteRtcpPort = value.Left( port_offset );
-
+ HBufC8* dataRemoteRtcpPort = value.Left( port_offset ).AllocLC();
+ TPtr8 remoteRtcpPort( dataRemoteRtcpPort->Des() );
+ remoteRtcpPort.TrimAll();
TLex8 lexPT( remoteRtcpPort );
User::LeaveIfError( lexPT.Val( rtcpPort, EDecimal ) );
// copy the address into correct format
TBuf16 <KMaxAddressLength> input;
- input.Copy( remoteRtcpAddr );
-
+ input.Copy( remoteRtcpAddrTxt );
+ input.TrimAll();
MCEMM_DEBUG_SVALUE( "Found RTCP address", input )
- aStream.SetRemoteRtcpMediaAddrL( input );
+ TInetAddr remoteRtcpAddr;
+ User::LeaveIfError( remoteRtcpAddr.Input( input ) );
+ TInetAddr localIpAddr( aStream.Session()->iLocalIpAddress );
+ TBool validRemoteRtcpAddr(
+ remoteRtcpAddr.IsLoopback() || !localIpAddr.Match( remoteRtcpAddr ) );
+ MCEMM_DEBUG_DVALUE( "Remote RTCP addr valid:", validRemoteRtcpAddr )
+ if ( validRemoteRtcpAddr )
+ {
+ aStream.SetRemoteRtcpMediaAddrL( input );
+ }
+ CleanupStack::PopAndDestroy( dataRemoteRtcpPort );
}
else
{
// only port present
- TLex8 lexPT( value );
+ HBufC8* dataRemoteRtcpPort = value.AllocLC();
+ TPtr8 remoteRtcpPort( dataRemoteRtcpPort->Des() );
+ remoteRtcpPort.TrimAll();
+ TLex8 lexPT( remoteRtcpPort );
User::LeaveIfError ( lexPT.Val( rtcpPort, EDecimal ) );
+ CleanupStack::PopAndDestroy( dataRemoteRtcpPort );
}
aStream.SetRemoteRtcpMediaPort( rtcpPort );
@@ -1040,9 +1055,9 @@
else if ( secureSession && aRole == EMceRoleAnswerer && aUpdate )
{
// for long session
- if ( secureSession->iKeyNeedUpdated )
+ if( secureSession->SdpCryptoAttributeCount( aMediaLine ) )
{
- secureSession->DecodeSecureDesSdpUpdateL( aStream, aMediaLine ) ;
+ secureSession->DecodeSecureDesSdpUpdateL( aStream, aMediaLine ) ;
}
}
else if ( secureSession && aRole == EMceRoleOfferer )
--- a/multimediacommsengine/mmcesrv/mmcemediamanager/tsrc/ut_mediamanager/src/UT_cmcemediasdpcodec.cpp Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommsengine/mmcesrv/mmcemediamanager/tsrc/ut_mediamanager/src/UT_cmcemediasdpcodec.cpp Fri Jun 11 11:20:25 2010 +0300
@@ -908,6 +908,42 @@
EUNIT_ASSERT( mediaStream->iRemoteRtcpAddress.IsUnspecified() )
audioLine->AttributeFields().ResetAndDestroy();
+ // Rtcp attribute has incorrectly our local address, it should not be used
+ mediaStream->Session()->iLocalIpAddress.Input( _L("10.20.30.40") );
+ rtcp = CSdpAttributeField::DecodeLC( _L8( "a=rtcp:5020 IN IP4 10.20.30.40\r\n" ) );
+ audioLine->AttributeFields().AppendL( rtcp );
+ CleanupStack::Pop( rtcp );
+ iSdpCodec->DecodeRemoteRtcpFieldL( *audioLine, *mediaStream );
+ EUNIT_ASSERT_EQUALS( 5020, mediaStream->iRemoteRtcpPort )
+ EUNIT_ASSERT( mediaStream->iRemoteRtcpAddress.IsUnspecified() ) // Not changed
+ audioLine->AttributeFields().ResetAndDestroy();
+
+ // Rtcp attrubute is local loopback address, ok to use
+ rtcp = CSdpAttributeField::DecodeLC( _L8( "a=rtcp:5020 IN IP4 127.0.0.1\r\n" ) );
+ audioLine->AttributeFields().AppendL( rtcp );
+ CleanupStack::Pop( rtcp );
+ iSdpCodec->DecodeRemoteRtcpFieldL( *audioLine, *mediaStream );
+ EUNIT_ASSERT_EQUALS( 5020, mediaStream->iRemoteRtcpPort )
+ EUNIT_ASSERT_EQUALS( INET_ADDR( 127,0,0,1 ), mediaStream->iRemoteRtcpAddress.Address() )
+ audioLine->AttributeFields().ResetAndDestroy();
+
+ // Incorrect white space usage
+ rtcp = CSdpAttributeField::DecodeLC( _L8( "a=rtcp: 5050 IN IP4 2.2.2.2 \r\n" ) );
+ audioLine->AttributeFields().AppendL( rtcp );
+ CleanupStack::Pop( rtcp );
+ iSdpCodec->DecodeRemoteRtcpFieldL( *audioLine, *mediaStream );
+ EUNIT_ASSERT_EQUALS( 5050, mediaStream->iRemoteRtcpPort )
+ EUNIT_ASSERT_EQUALS( INET_ADDR( 2,2,2,2 ), mediaStream->iRemoteRtcpAddress.Address() )
+ audioLine->AttributeFields().ResetAndDestroy();
+
+ rtcp = CSdpAttributeField::DecodeLC( _L8( "a=rtcp: 50506\r\n" ) );
+ audioLine->AttributeFields().AppendL( rtcp );
+ CleanupStack::Pop( rtcp );
+ iSdpCodec->DecodeRemoteRtcpFieldL( *audioLine, *mediaStream );
+ EUNIT_ASSERT_EQUALS( 50506, mediaStream->iRemoteRtcpPort )
+ EUNIT_ASSERT_EQUALS( INET_ADDR( 2,2,2,2 ), mediaStream->iRemoteRtcpAddress.Address() )
+ audioLine->AttributeFields().ResetAndDestroy();
+
CleanupStack::PopAndDestroy( sdp );
}
@@ -1349,7 +1385,6 @@
CleanupStack::PopAndDestroy( sdp );
}
-
void UT_CMceMediaSdpCodec::UT_CMceMediaSdpCodec_DecodeDirectionLL()
--- a/multimediacommsengine/tsrc/testdriver/siptester/src/10203353.rss Fri May 28 16:08:43 2010 +0300
+++ b/multimediacommsengine/tsrc/testdriver/siptester/src/10203353.rss Fri Jun 11 11:20:25 2010 +0300
@@ -1,42 +1,42 @@
-/*
-* Copyright (c) 2009 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:
-*
-*/
-// 10203353.RSS
-//
-#include <ecom/registryinfo.rh>
-
-RESOURCE REGISTRY_INFO theInfo
-{
-dll_uid = 0x10203353;
-interfaces =
- {
- INTERFACE_INFO
- {
- interface_uid = 0x10203352;
- implementations =
- {
- IMPLEMENTATION_INFO
- {
- implementation_uid = 0x10203353;
- version_no = 1;
- display_name = "SIPTester";
- default_data = "SIPTester";
- opaque_data = "some extra data";
- }
- };
- }
- };
-}
+/*
+* Copyright (c) 2009 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:
+*
+*/
+// 10203353.RSS
+//
+#include <ecom/registryinfo.rh>
+
+RESOURCE REGISTRY_INFO theInfo
+{
+dll_uid = 0x10203353;
+interfaces =
+ {
+ INTERFACE_INFO
+ {
+ interface_uid = 0x10203352;
+ implementations =
+ {
+ IMPLEMENTATION_INFO
+ {
+ implementation_uid = 0x10203353;
+ version_no = 1;
+ display_name = "SIPTester";
+ default_data = "SIPTester";
+ opaque_data = "some extra data";
+ }
+ };
+ }
+ };
+}
--- a/package_definition.xml Fri May 28 16:08:43 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,214 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<SystemDefinition schema="3.0.0">
- <package id="ipappsrv" name="IP App Services" levels="framework generic server conn plugin">
- <collection id="multimediacommscontroller" name="Multimedia Comms Controller" level="conn">
- <component id="mmccinterface" filter="s60" name="MMCC Interface">
- <!-- <unit bldFile="multimediacommscontroller/mmccinterface/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccinterface/tsrc/ut_interface/group"/> -->
- </component>
- <component id="mmccjitterbuffer" filter="s60" name="Jitter Buffer">
- <!-- <unit bldFile="multimediacommscontroller/mmccjitterbuffer/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccjitterbuffer/tsrc/ut_jitterbuffer/group"/> -->
- </component>
- <component id="mmccqoscontroller" filter="s60" name="QoS Controller">
- <!-- <unit bldFile="multimediacommscontroller/mmccqoscontroller/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccqoscontroller/tsrc/ut_qoscontroller/group"/> -->
- </component>
- <component id="mmccmultiplexer" filter="s60" name="MMCC Multiplexer">
- <!-- <unit bldFile="multimediacommscontroller/mmccmultiplexer/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccmultiplexer/tsrc/ut_multiplexer/group"/> -->
- </component>
- <component id="mmccsubcontroller" filter="s60" name="MMCC Subcontroller">
- <!-- <unit bldFile="multimediacommscontroller/mmccsubcontroller/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccsubcontroller/tsrc/ut_rtpmediaclock/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccsubcontroller/tsrc/ut_subcontroller/group"/> -->
- </component>
- <component id="mmcccontroller" filter="s60" name="MMCC Controller" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmcccontroller/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmcccontroller/tsrc/ut_controller/group"/> -->
- </component>
- <component id="mmccredpayloadformat" filter="s60" name="Redundancy Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccredpayloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccredpayloadformat/tsrc/ut_redpayloadformat/group"/> -->
- </component>
- <component id="mmccamrpayloadformat" filter="s60" name="AMR Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccamrpayloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccamrpayloadformat/tsrc/ut_amrpayloadformat/group"/> -->
- </component>
- <component id="mmccg711payloadformat" filter="s60" name="G711 Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccg711payloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccg711payloadformat/tsrc/ut_g711payloadformat/group"/> -->
- </component>
- <component id="mmccg729payloadformat" filter="s60" name="G729 Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccg729payloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccg729payloadformat/tsrc/ut_g729payloadformat/group"/> -->
- </component>
- <component id="mmccilbcpayloadformat" filter="s60" name="ILBC Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccilbcpayloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccilbcpayloadformat/tsrc/ut_ilbcpayloadformat/group"/> -->
- </component>
- <component id="mmccdtmfpayloadformat" filter="s60" name="DTMF Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccdtmfpayloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccdtmfpayloadformat/tsrc/ut_dtmfpayloadformat/group"/> -->
- </component>
- <component id="mmccrtpsourcesink" filter="s60" name="RTP Source Sink" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccrtpsourcesink/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccrtpsourcesink/tsrc/ut_rtpsourcesink/group"/> -->
- </component>
- <component id="mmccvideosourcesink" filter="s60" name="Video Source Sink" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccvideosourcesink/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccvideosourcesink/tsrc/ut_videosourcesink/group"/> -->
- </component>
- <component id="mmcch263payloadformat" filter="s60" name="H263 Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmcch263payloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmcch263payloadformat/tsrc/ut_h263payloadformat/group"/> -->
- </component>
- <component id="mmccanypayloadformat" filter="s60" name="Any Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccanypayloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccanypayloadformat/tsrc/ut_anypayloadformat/group"/> -->
- </component>
- <component id="mmccfilesourcesink" filter="s60" name="MMCC File Source Sink" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccfilesourcesink/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccfilesourcesink/tsrc/ut_filesourcesink/group"/> -->
- </component>
- <component id="mmccanysourcesink" filter="s60" name="Any Source Sink" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccanysourcesink/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccanysourcesink/tsrc/ut_anysourcesink/group"/> -->
- </component>
- <component id="mmccavcpayloadformat" filter="s60" name="AVC Payload Format" class="plugin">
- <!-- <unit bldFile="multimediacommscontroller/mmccavcpayloadformat/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/mmccavcpayloadformat/tsrc/ut_avcpayloadformat/group"/> -->
- </component>
- <component id="multimediacommscontroller_build" filter="s60" name="Multimedia Comms Controller Build">
- <!-- contents of this component need to be distributed out to the other commented-out bld.infs or the other components need to be collapsed into one -->
- <unit bldFile="multimediacommscontroller/group"/>
- </component>
- <component id="multimediacommscontroller_test" filter="s60" name="Multimedia Comms Controller Test" purpose="development">
- <!-- <unit bldFile="multimediacommscontroller/tsrc/testconsoles/mcpsubthreads/dptests/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/tsrc/testconsoles/mcpsubthreads/clienttests/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/tsrc/componenttests/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/tsrc/subcontrollerstub/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/tsrc/testconsoles/jitterbuffertestconsole/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/tsrc/testconsoles/rtpsourcesink/group"/> -->
- <!-- <unit bldFile="multimediacommscontroller/tsrc/testconsoles/mcpconsole/group"/> -->
- </component>
- </collection>
- <collection id="multimediacommsengine" name="Multimedia Comms Engine" level="generic">
- <component id="mmcesrv" filter="s60" name="Multimedia Comms Engine Server">
- <!-- <unit bldFile="multimediacommsengine/mmcesrv/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcesrv/mmceevent/tsrc/ut_event/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcesrv/mmceevent/tsrc/ut_event/sip_stub/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcesrv/mmcemediamanager/tsrc/ut_mediamanager/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcesrv/mmceserver/tsrc/ut_server/group"/> -->
- </component>
- <component id="mmcecli" filter="s60" name="Multimedia Comms Engine Client">
- <!-- <unit bldFile="multimediacommsengine/mmcecli/group"/> -->
- </component>
- <component id="mmcefloorctrlengine" filter="s60" name="MCE Floor Control Engine">
- <!-- <unit bldFile="multimediacommsengine/mmcefloorctrlengine/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcefloorctrlengine/tsrc/ut_floorctrlengine/fctestpplugin/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcefloorctrlengine/tsrc/ut_floorctrlengine/fctestpplugin2/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcefloorctrlengine/tsrc/ut_floorctrlengine/group"/> -->
- </component>
- <component id="mmcefloorctrlplugin" filter="s60" name="MCE Floor Control Plugin" class="plugin">
- <!-- <unit bldFile="multimediacommsengine/mmcefloorctrlplugin/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/mmcefloorctrlplugin/tsrc/ut_floorctrlplugin/group"/> -->
- </component>
- <component id="multimediacommsengine_build" filter="s60" name="Multimedia Comms Engine Build">
- <!-- contents of this component need to be distributed out to the other commented-out bld.infs or the other components need to be collapsed into one -->
- <unit bldFile="multimediacommsengine/group"/>
- </component>
- <component id="multimediacommsengine_test" filter="s60" name="Multimedia Comms Engine Test" purpose="development">
- <!-- <unit bldFile="multimediacommsengine/tsrc/mcetestui/mcetestuiplugin/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/mcetestui/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/testdriver/siptester/ttcnresolverplugin/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/mmctestdriver/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/mmctestdriver/mcetester/iceplugin_stub/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/mmctestdriver/mcetester/ttcnresolverplugin/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/testdriver/siptester/ttcnresolverplugin2/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/mcetestui/mcetestuiengine/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/testdriver/group/s60_public_sdk"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/mmctestdriver/mcetester/iceplugin_stub/tsrc/test/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/testdriver/group"/> -->
- <!-- <unit bldFile="multimediacommsengine/tsrc/mmctestdriver/mcetester/voipplugin/group"/> -->
- </component>
- </collection>
- <collection id="natfw" name="NAT Framework" level="framework">
- <component id="natfwsettings" filter="s60" name="NAT Framework Settings" introduced="^2">
- <!-- <unit bldFile="natfw/natfwsettings/group"/> -->
- <!-- <unit bldFile="natfw/natfwsettings/tsrc/ut_cnatfwnatsettings/group"/> -->
- </component>
- <component id="natfwconnectionmultiplexer" filter="s60" name="NAT Framework Connection Multiplexer" introduced="^2">
- <!-- <unit bldFile="natfw/natfwconnectionmultiplexer/group"/> -->
- <!-- <unit bldFile="natfw/natfwconnectionmultiplexer/tsrc/muxtestconsole/group"/> -->
- <!-- <unit bldFile="natfw/natfwconnectionmultiplexer/tsrc/ut_connectionmultiplexer/group"/> -->
- </component>
- <component id="natfwclient" filter="s60" name="NAT Framework Client" introduced="^2">
- <!-- <unit bldFile="natfw/natfwclient/group"/> -->
- <!-- <unit bldFile="natfw/natfwclient/tsrc/ut_natfwclient/group"/> -->
- </component>
- <component id="natfwsocketmediaconnwrapper" filter="s60" name="Socket Media Connection Wrapper" introduced="^2">
- <!-- <unit bldFile="natfw/natfwsocketmediaconnwrapper/group"/> -->
- <!-- <unit bldFile="natfw/natfwsocketmediaconnwrapper/tsrc/ut_socketmediaconnwrapper/group"/> -->
- </component>
- <component id="natfwunsaf_protocols" filter="s60" name="UNSAF Protocols" introduced="^2">
- <!-- consider expanding name to UNilateral Self- Address Fixing Protocols -->
- <!-- <unit bldFile="natfw/natfwunsaf_protocols/group"/> -->
- <!-- <unit bldFile="natfw/natfwunsaf_protocols/tsrc/ut_unsaf_codec/group"/> -->
- <!-- <unit bldFile="natfw/natfwunsaf_protocols/tsrc/ut_unsaf_transport/group"/> -->
- </component>
- <component id="natfwstunturnclient" filter="s60" name="STUN TURN Client" introduced="^2">
- <!-- <unit bldFile="natfw/natfwstunturnclient/group"/> -->
- <!-- <unit bldFile="natfw/natfwstunturnclient/tsrc/ut_stunturnclient/group"/> -->
- </component>
- <component id="natfwstunserver" filter="s60" name="STUN Server" introduced="^2">
- <!-- <unit bldFile="natfw/natfwstunserver/group"/> -->
- <!-- <unit bldFile="natfw/natfwstunserver/tsrc/ut_cnatfwstunsrv/group"/> -->
- </component>
- <component id="natfwicecandidatehandler" filter="s60" name="ICE Candidate Handler" class="plugin" introduced="^2">
- <!-- <unit bldFile="natfw/natfwicecandidatehandler/group"/> -->
- <!-- <unit bldFile="natfw/natfwicecandidatehandler/tsrc/ut_icecandidatehandler/group"/> -->
- </component>
- <component id="natfwstunplugin" filter="s60" name="STUN Plugin" class="plugin" introduced="^2">
- <!-- <unit bldFile="natfw/natfwstunplugin/group"/> -->
- <!-- <unit bldFile="natfw/natfwstunplugin/tsrc/ut_cnatfwstunplugin/group"/> -->
- </component>
- <component id="natfwturnplugin" filter="s60" name="TURN Plugin" class="plugin" introduced="^2">
- <!-- <unit bldFile="natfw/natfwturnplugin/group"/> -->
- <!-- <unit bldFile="natfw/natfwturnplugin/tsrc/ut_cnatfwturnplugin/group"/> -->
- </component>
- <component id="natfw_build" filter="s60" name="NAT Framework Build" introduced="^2">
- <!-- contents of this component need to be distributed out to the other commented-out bld.infs or the other components need to be collapsed into one -->
- <unit bldFile="natfw/group"/>
- </component>
- <component id="natfw_test" filter="s60" name="NAT Framework Test" purpose="development" introduced="^2">
- <!-- <unit bldFile="natfw/tsrc/natfwtestconsoles/natfwtestconsole/group"/> -->
- </component>
- </collection>
- <collection id="natplugins" name="NAT Plugins" level="plugin">
- <!-- are the extra test units in here needed at all? Either incorperate into main unit as test projects or remove-->
- <component id="natpcliprovisioningnatfwadapter" filter="s60" name="Client Provisioning NAT Framework Traversal Adapter" class="plugin" introduced="^2">
- <unit bldFile="natplugins/natpcliprovisioningnatfwadapter/group"/>
- <!-- <unit bldFile="natplugins/natpcliprovisioningnatfwadapter/tsrc/t_natfwtraversaladapter/group"/> -->
- </component>
- <component id="natpdevmgmtnatfwadapter" filter="s60" name="Device Management NAT Framework Traversal Adapter" class="plugin">
- <unit bldFile="natplugins/natpdevmgmtnatfwadapter/group"/>
- <!-- <unit bldFile="natplugins/natpdevmgmtnatfwadapter/tsrc/ut_cnsmldmnatfwtraversaladapter/group"/> -->
- </component>
- <component id="natptraversalcontroller" filter="s60" name="NAT Traversal Controller" class="plugin">
- <unit bldFile="natplugins/natptraversalcontroller/group"/>
- <!-- <unit bldFile="natplugins/natptraversalcontroller/tsrc/ut_nattraversalcontroller/group"/> -->
- </component>
- <component id="natpnatfwsdpprovider" filter="s60" name="NAT Framework SDP Provider" class="plugin">
- <unit bldFile="natplugins/natpnatfwsdpprovider/group"/>
- <!-- <unit bldFile="natplugins/natpnatfwsdpprovider/tsrc/testconsole/group"/> -->
- <!-- <unit bldFile="natplugins/natpnatfwsdpprovider/tsrc/ut_natfwsdpprovider/group"/> -->
- </component>
- </collection>
- <collection id="ipappsrv_info" name="IP App Services Info" level="plugin">
- <component id="ipappsrv_metadata" name="IP App Services Metadata" class="config" introduced="^2" purpose="development" target="desktop">
- <unit mrp="ipappsrv_info/ipappsrv_metadata/ipappsrv_metadata.mrp"/>
- </component>
- </collection>
- </package>
-</SystemDefinition>