diff -r f72c4fccd381 -r b0e4b01681c5 multimediacommscontroller/mmccsubcontroller/src/mccsymulstream.cpp --- a/multimediacommscontroller/mmccsubcontroller/src/mccsymulstream.cpp Wed Sep 15 12:38:06 2010 +0300 +++ b/multimediacommscontroller/mmccsubcontroller/src/mccsymulstream.cpp Wed Oct 13 14:59:15 2010 +0300 @@ -253,6 +253,12 @@ CreatePayloadFormatEncoderL(); + if ( iDatasink->DataSinkType() == KMccRtpSinkUid ) + { + CMccRtpDataSink* dataSink = static_cast( iDatasink ); + dataSink->SetMediaClock( *iRtpMediaClock ); + } + // Just negotiate the codec, load it later static_cast( iDatapath )->NegotiateL( *iFormatEncode ); @@ -272,15 +278,6 @@ } else if ( CurrentCodecState() == EStateCodecPrepared ) { - if ( iDatasink->DataSinkType() == KMccRtpSinkUid ) - { - CMccRtpDataSink* dataSink = - static_cast( iDatasink ); - - // For updating keep alive parameters - TMccCodecInfoBuffer infoBuffer( iCodecInfo ); - dataSink->ConfigureL( infoBuffer, iRtpMediaClock ); - } if ( CodecLoadingAllowed() ) { // Load the codec @@ -291,6 +288,15 @@ UpdateCodecInformationL( iCodecInfo ); } + else if ( iDatasink->DataSinkType() == KMccRtpSinkUid ) + { + CMccRtpDataSink* dataSink = + static_cast( iDatasink ); + + // For updating keep alive parameters + TMccCodecInfoBuffer infoBuffer( iCodecInfo ); + dataSink->ConfigureL( infoBuffer ); + } } else if ( CurrentCodecState() == EStateCodecLoaded || CurrentCodecState() == EStateCodecLoadedAndUpdating ) @@ -302,7 +308,7 @@ // For updating keep alive parameters TMccCodecInfoBuffer infoBuffer( iCodecInfo ); - dataSink->ConfigureL( infoBuffer, iRtpMediaClock ); + dataSink->ConfigureL( infoBuffer ); } // Update codec info SetCodecState( EStateCodecLoadedAndUpdating );