diff -r 4ce423f34688 -r e267340986c9 mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocksCallbacks.cpp --- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocksCallbacks.cpp Fri Sep 17 08:33:15 2010 +0300 +++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocksCallbacks.cpp Mon Oct 04 00:51:56 2010 +0300 @@ -19,11 +19,15 @@ #include "TmsAudioServicesTestClass.h" #include "debug.h" +// CONSTANTS +const TUint KLoopCount = 1000; + +//From TMSStreamObserver void CTmsAudioServicesTestClass::TMSStreamEvent(const TMSStream& stream, TMSSignalEvent event) { iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::TMSStreamEvent")); - switch (const_cast(stream).GetStreamType()) + switch (const_cast (stream).GetStreamType()) { case TMS_STREAM_UPLINK: { @@ -110,34 +114,44 @@ //From TMSClientSourceObserver void CTmsAudioServicesTestClass::FillBuffer(TMSBuffer& buffer) { - iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::FillBuffer")); - ProcessEvent(EFillBuffer, KErrNone); - iPlayBufReady = ETrue; - iPlayBuf = &buffer; - if (iDnLinkStatus == STARTED) + //iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::FillBuffer")); + + // Note: Playback will continue until KLoopCount is reached or until timer + // timeout occurs set in the .cfg file by SetTimeout. + + if (iLoopCounter < KLoopCount) { - DoLoopback(); + iPlayBufReady = ETrue; + iPlayBuf = &buffer; + if (iDnLinkStatus == STARTED) + { + DoLoopback(); + } } } void CTmsAudioServicesTestClass::BufferProcessed(const TMSBuffer* /*buffer*/, gint /*reason*/) { - iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::BufferProcessed")); + //iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::BufferProcessed")); } //From TMSClientSinkObserver void CTmsAudioServicesTestClass::ProcessBuffer(const TMSBuffer* buffer) { - iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::ProcessBuffer")); - ProcessEvent(EEmptyBuffer, KErrNone); - iRecBufReady = ETrue; - iRecBuf = const_cast(buffer); - if (iUpLinkStatus == STARTED) + //iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::ProcessBuffer")); + + // Note: Recording will continue until KLoopCount is reached or until timer + // timeout occurs set in the .cfg file by SetTimeout. + + if (iLoopCounter < KLoopCount) { - // Process recorded buffer here. - DoLoopback(); - //static_cast(iTmsSink)->BufferProcessed(iRecBuf); + iRecBufReady = ETrue; + iRecBuf = const_cast (buffer); + if (iUpLinkStatus == STARTED) + { + DoLoopback(); + } } } @@ -146,11 +160,20 @@ { iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::EffectsEvent")); TMSEffectType effecttype; - const_cast(tmseffect).GetType(effecttype); + const_cast (tmseffect).GetType(effecttype); switch (effecttype) { case TMS_EFFECT_VOLUME: + ProcessEvent(EStreamVolChange, KErrNone); + break; case TMS_EFFECT_GAIN: + ProcessEvent(EStreamGainChange, KErrNone); + break; + case TMS_EFFECT_GLOBAL_VOL: + ProcessEvent(EGlobalVolChange, KErrNone); + break; + case TMS_EFFECT_GLOBAL_GAIN: + ProcessEvent(EGlobalGainChange, KErrNone); break; default: break; @@ -236,11 +259,11 @@ switch (event.type) { case TMS_EVENT_INBAND_TONE_STARTED: - //ProcessEvent(EInbToneStarted, KErrNone); + ProcessEvent(EInbToneStarted, KErrNone); iLog->Log(_L("Inband Tone Started")); break; case TMS_EVENT_INBAND_TONE_STOPPED: - //ProcessEvent(EInbToneStopped, KErrNone); + ProcessEvent(EInbToneStopped, KErrNone); iLog->Log(_L("Inband Tone Stopped")); break; default: