--- a/mmfenh/advancedaudiocontroller/audiocontrollerpluginsvariant/AdvancedAudioController/Src/AdvancedAudioPlayController.cpp Tue May 25 13:16:00 2010 +0300
+++ b/mmfenh/advancedaudiocontroller/audiocontrollerpluginsvariant/AdvancedAudioController/Src/AdvancedAudioPlayController.cpp Wed Jun 09 10:15:38 2010 +0300
@@ -1352,6 +1352,21 @@
{// we got preempted during a seek
// we're already seeking to a position. When we get there we'll come here again, but handle it below
DP0(_L("CAdvancedAudioPlayController::DoPauseL got a preemption during seek"));
+
+ // if we are seeking, we need to flush the devsound buffers regardless of loop play
+ DP0(_L("CAdvancedAudioPlayController::DoPauseL AudioOutput->StopL()"));
+ iAudioOutput->StopL();
+
+ if (iPlayingForInitPos)
+ {
+ iState = EInitialized;
+ }
+ else
+ {
+ iState = EPaused;
+ }
+ iPlayingForPauseSeek = EFalse;
+ iPlayingForInitPos = EFalse;
return;
}
--- a/mmmw_plat/telephony_multimedia_service_api/inc/tms.h Tue May 25 13:16:00 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/inc/tms.h Wed Jun 09 10:15:38 2010 +0300
@@ -24,6 +24,7 @@
namespace TMS {
+// FORWARD DECLARATION
class TMSFormat;
// Result codes
--- a/mmmw_plat/telephony_multimedia_service_api/inc/tmsstream.h Tue May 25 13:16:00 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/inc/tmsstream.h Wed Jun 09 10:15:38 2010 +0300
@@ -430,9 +430,10 @@
* IP call: DNL: client source, codec format and speaker sink
*
* @return
+ * Common return codes:
* TMS_RESULT_SUCCESS if stream transitioned to the initialized state.
* TMS_RESULT_INVALID_STATE if stream has not transitioned to the
- * TMS_STREAM_UNINITIALIZED state.
+ * TMS_STREAM_INITIALIZED state.
* TMS_RESULT_FORMAT_TYPE_UNSPECIFIED (IP call only) when stream
* has no format attached to it.
* TMS_RESULT_UNINITIALIZED_OBJECT when stream has no sink or source
@@ -456,10 +457,11 @@
* Note: In TMS Ver 1.0.0.0, pausing stream for CS call is not supported.
*
* @return
- * TMS_RESULT_SUCCESS if stream successfully transitioned to the paused
- * state.
+ * Common return codes:
+ * TMS_RESULT_SUCCESS if stream successfully transitioned to the
+ * paused state.
* TMS_RESULT_INVALID_STATE if stream is not in the
- * TMS_STREAM_INITIALIZED or TMS_STREAM_STARTED state.
+ * TMS_STREAM_INITIALIZED or TMS_STREAM_PAUSED state.
*
*/
IMPORT_C gint Pause();
@@ -481,10 +483,11 @@
* be in the TMS_STREAM_STARTED state.
*
* @return
- * TMS_RESULT_SUCCESS if stream successfully transitioned to the paused
- * state.
+ * Common return codes:
+ * TMS_RESULT_SUCCESS if stream successfully transitioned to the
+ * started state.
* TMS_RESULT_INVALID_STATE if stream is not in the
- * TMS_STREAM_INITIALIZED or TMS_STREAM_PAUSED state.
+ * TMS_STREAM_INITIALIZED or TMS_STREAM_STARTED state.
*
*/
IMPORT_C gint Start();
@@ -502,8 +505,9 @@
* be in the TMS_STREAM_INITIALIZED state.
*
* @return
- * TMS_RESULT_SUCCESS if stream successfully transitioned to the paused
- * state.
+ * Common return codes:
+ * TMS_RESULT_SUCCESS if stream successfully transitioned to the
+ * stopped state.
* TMS_RESULT_INVALID_STATE if stream is not in the
* TMS_STREAM_STARTED or TMS_STREAM_PAUSED state.
*
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/telephony_multimedia_service_api/telephony_multimedia_service_api.metaxml Wed Jun 09 10:15:38 2010 +0300
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<api id="e1fff71a33909022430461d13e338a8f" dataversion="2.0">
+ <name>telephony_multimedia_service_api</name>
+ <description>API to Telephony Multimedia Server</description>
+ <type>c++</type>
+ <collection>mmserv</collection>
+ <libs>
+ <lib name="tmsapi.lib"/>
+ <lib name="tmsfactory.lib"/>
+ </libs>
+ <release category="platform" sinceversion="0"/>
+ <attributes>
+ <htmldocprovided>no</htmldocprovided>
+ <adaptation>no</adaptation>
+ </attributes>
+</api>
--- a/mmserv/radioutility/radioserver/Server/Src/RadioServer.cpp Tue May 25 13:16:00 2010 +0300
+++ b/mmserv/radioutility/radioserver/Server/Src/RadioServer.cpp Wed Jun 09 10:15:38 2010 +0300
@@ -1435,6 +1435,7 @@
iState = EStateTunerOff;
iPreEmpted = ETrue;
iSettings->SetRadioOff(aError);
+ RADIO_RDEBUG(_L("[RADIO-SVR] PlayError() - Call TunerOff and start waiting"));
iTunerControl->TunerOff(); //The adaptation is expected to call TunerOffComplete() upon completion
// wait for TunerOffComplete callback
iSchedulerWait->Start();
@@ -1680,12 +1681,6 @@
return;
}
- if ( iState != EStateStarted )
- {
- CompleteAsyncRequest(KErrAlreadyExists);
- return;
- }
-
TInt err = KErrNone;
if ( !iTunerControl )
{
@@ -1832,7 +1827,7 @@
break;
case EStateTunerOff:
if ( iSettings->IsAntennaAttached() && AllowRadioInOfflineMode()
- && !iSettings->IsTransmitterActive() )
+ && !iSettings->IsTransmitterActive() && !iPreEmpted )
{
RADIO_RDEBUG(_L("[RADIO-SVR] ProcessSetFrequency() - Sent TunerOn request"));
RecreateFmTunerControl();
--- a/mmserv/tms/inc/tmsshared.h Tue May 25 13:16:00 2010 +0300
+++ b/mmserv/tms/inc/tmsshared.h Wed Jun 09 10:15:38 2010 +0300
@@ -114,18 +114,10 @@
ECmdUplinkPaused,
ECmdFillBuffer,
ECmdEmptyBuffer,
- ECmdDTMFOpenDnlinkComplete,
- ECmdDTMFOpenUplinkComplete,
- ECmdDTMFTonePlayFinished,
- ECmdRingToneOpenComplete,
- ECmdRingTonePlayComplete,
- ECmdRingToneDeinitComplete,
ECmdDownlinkClosed,
ECmdUplinkClosed,
ECmdGlobalRoutingChange,
- ECmdGlobalEffectChange,
- ECmdInbandToneStarted,
- ECmdInbandToneStopped
+ ECmdGlobalEffectChange
};
// -----------------------------------------------------------------------------
--- a/mmserv/tms/tmscallserver/group/tmscallserver.mmp Tue May 25 13:16:00 2010 +0300
+++ b/mmserv/tms/tmscallserver/group/tmscallserver.mmp Wed Jun 09 10:15:38 2010 +0300
@@ -55,9 +55,6 @@
USERINCLUDE ../inc
USERINCLUDE ../../inc
-#ifdef __USE_GSTREAMER__
-USERINCLUDE /sf/mw/gstreamer/gst_plugins_symbian/gst/devsound
-#endif //__USE_GSTREAMER__
MW_LAYER_SYSTEMINCLUDE
OS_LAYER_LIBC_SYSTEMINCLUDE
@@ -69,10 +66,7 @@
#ifdef __USE_GSTREAMER__
MW_LAYER_GSTREAMER_SYSTEMINCLUDE
-//SYSTEMINCLUDE /sf/mw/gstreamer/include/gstreamer
-//SYSTEMINCLUDE /sf/mw/gstreamer/include/gstreamer/gst
-//SYSTEMINCLUDE /sf/mw/gstreamer/include/gstreamer/gst/app
-//SYSTEMINCLUDE /epoc32/include/stdapis/glib-2.0/gobject
+MW_LAYER_GSTREAMER_SYSTEMINCLUDE(gst_plugins_symbian/gst/devsound)
LIBRARY libgobject.lib
LIBRARY libgstreamer.lib
--- a/mmserv/tms/tmscallserver/src/tmscallipadpt.cpp Tue May 25 13:16:00 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmscallipadpt.cpp Wed Jun 09 10:15:38 2010 +0300
@@ -100,7 +100,6 @@
iNextStreamId = 1;
iUplinkInitialized = FALSE;
iDnlinkInitialized = FALSE;
-
TRACE_PRN_FN_EXT;
return status;
}
@@ -990,11 +989,18 @@
gint TMSCallIPAdpt::OpenDownlinkL(const RMessage2& message)
{
TRACE_PRN_FN_ENT;
- gint status(TMS_RESULT_SUCCESS);
+ gint status(TMS_RESULT_UNINITIALIZED_OBJECT);
// Clients must have MultimediaDD capability to use this priority/pref.
// TODO: Also, TMS will monitor for emergency call and if detected it
// will deny access to audio resources.
+
+ /* Clarify with adaptation team which prio/pref values should be used.
+ * 1) KAudioPrefUnknownVoipAudioDownlink -3rd party VoIP?
+ * KAudioPriorityUnknownVoipAudioDownlink -3rd party VoIP?
+ * 2) KAudioPrefVoipAudioDownlink -NOK native VoIP?
+ * KAudioPriorityVoipAudioDownlink -NOK native VoIP?
+ */
iPriority.iPref = KAudioPrefVoipAudioDownlink;
iPriority.iPriority = KAudioPriorityVoipAudioDownlink;
@@ -1018,7 +1024,6 @@
iIPDownlink->SetMsgQueue(iMsgQueueDn);
}
}
-
TRACE_PRN_IF_ERR(status);
TRACE_PRN_FN_EXT;
return status;
@@ -1032,9 +1037,16 @@
gint TMSCallIPAdpt::OpenUplinkL(const RMessage2& message)
{
TRACE_PRN_FN_ENT;
- gint status(TMS_RESULT_SUCCESS);
+ gint status(TMS_RESULT_UNINITIALIZED_OBJECT);
+
+ // Clients must have MultimediaDD capability to use this priority/pref
- // Ensure clients have MultimediaDD capability to use this priority/pref
+ /* Clarify with adaptation team which prio/pref values should be used.
+ * 1) KAudioPrefUnknownVoipAudioUplink -3rd party VoIP?
+ * KAudioPriorityUnknownVoipAudioUplink -3rd party VoIP?
+ * 2) KAudioPrefVoipAudioUplink -NOK native VoIP?
+ * KAudioPriorityVoipAudioUplink -NOK native VoIP?
+ */
iPriority.iPref = KAudioPrefVoipAudioUplink;
iPriority.iPriority = KAudioPriorityVoipAudioUplink;
--- a/mmserv/tms/tmsutility/src/tmsutility.cpp Tue May 25 13:16:00 2010 +0300
+++ b/mmserv/tms/tmsutility/src/tmsutility.cpp Wed Jun 09 10:15:38 2010 +0300
@@ -74,10 +74,10 @@
result = TMS_RESULT_GENERAL_ERROR;
break;
case KErrDied: //-13
- case KErrInUse: //-14
case KErrServerTerminated: //-15
result = TMS_RESULT_FATAL_ERROR;
break;
+ case KErrInUse: //-14
case KErrServerBusy: //-16
case KErrCompletion: //-17
case KErrNotReady: //-18
--- a/mmserv/voipaudioservices/VoIPServer/src/VoIPServerSession.cpp Tue May 25 13:16:00 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/src/VoIPServerSession.cpp Wed Jun 09 10:15:38 2010 +0300
@@ -1907,14 +1907,12 @@
if (aError == KErrNone)
{
TMMFPrioritySettings pSet;
- iShared.iMutex.Wait();
- pSet.iPref = iShared.iPreference;
- pSet.iPriority = iShared.iPriority;
- iShared.iMutex.Signal();
if (iDTMFTonePlayer && iDTMFTonePlayerInitRequest)
{
// initialized DTMF player
+ pSet.iPref = KAudioDTMFString;
+ pSet.iPriority = KAudioPriorityDTMFString;
iDTMFTonePlayer->SetPrioritySettings(pSet);
iDTMFTonePlayer->SetVolume(iMaxVolume);
iToneLenOn = KDTMFToneLengthOn;
@@ -1934,6 +1932,10 @@
else if (iDevSound && iDevSoundInitRequest)
{
// initialized standard player to check G711 frame rate
+ iShared.iMutex.Wait();
+ pSet.iPref = iShared.iPreference;
+ pSet.iPriority = iShared.iPriority;
+ iShared.iMutex.Signal();
iDevSound->SetPrioritySettings(pSet);
iDevSoundInitRequest = EFalse;
--- a/mmserv/voipaudioservices/group/bld.inf Tue May 25 13:16:00 2010 +0300
+++ b/mmserv/voipaudioservices/group/bld.inf Wed Jun 09 10:15:38 2010 +0300
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
+ * Copyright (c) 2007-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"