📄 smbmusicapsyncserverplayerfunc.cpp
字号:
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber63;
_LIT(KServerPlayerFunc63, "SyncServerPlayerFunc::ReleaseRsc Leave AppendL(MW) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc63, err, aRsc);
// ADD-S PTX824 k3-sugimoto
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
// ADD-E PTX824 k3-sugimoto
//儕僜乕僗傪夝曻偡傞偨傔偵嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
}
//偙偙偵棃傞傑偱偵Leave偑敪惗偟偰偄傟偽嫞崌FW偺僋儔僀傾儞僩偼婛偵嶍彍偝傟偰偄傞
if(NULL != iRscMgrClient)
{
//儕僜乕僗夝曻捠抦傪敪峴偡傞
TRAP(err, iRscMgrClient->ReleaseResourceNotifyL(iRscReleaseList));
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber64;
_LIT(KServerPlayerFunc64, "SyncServerPlayerFunc::ReleaseRsc Leave ReleaseResourceNotifyL() [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc64, err, aRsc);
// ADD-S PTX824 k3-sugimoto
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
// ADD-E PTX824 k3-sugimoto
//儕僜乕僗傪夝曻偡傞偨傔偵嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
}
}
break;
//BG儕僜乕僗
case ESmbMusicAPSyncServerPlayerBGRsc:
TRAP(err, iRscReleaseList = new(ELeave)CArrayFixFlat<TSmbRscMgrRsc>(KMusicPlayerRscMaxNumber));
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber65;
_LIT(KServerPlayerFunc65, "SyncServerPlayerFunc::ReleaseRsc Leave new(ELeave) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc65, err, aRsc);
//BG儕僜乕僗偵偮偄偰偼夝曻捠抦偑敪峴偝傟傞傑偱懸偮偺偱壗傕偟傑偣傫
return;
}
// MODIFY-S PTX824 k3-sugimoto
#ifdef __SMBMUSICAPSYNCSERVER_ENABLE_PTX810__
TRAP(err, iRscReleaseList->AppendL(ESmbRscMgrRscMusicBG)); // MusicBG嵞惗尃棙
#else // __SMBMUSICAPSYNCSERVER_ENABLE_PTX810__
TRAP(err, iRscReleaseList->AppendL(ESmbRscMgrRscMusicBG_forBGApp)); // MusicBG嵞惗尃棙(BG傾僾儕梡)
#endif // __SMBMUSICAPSYNCSERVER_ENABLE_PTX810__
// MODIFY-E PTX824 k3-sugimoto
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber66;
_LIT(KServerPlayerFunc66, "SyncServerPlayerFunc::ReleaseRsc Leave AppendL(BG) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc66, err, aRsc);
//BG儕僜乕僗偵偮偄偰偼夝曻捠抦偑敪峴偝傟傞傑偱懸偮偺偱壗傕偟傑偣傫
return;
}
#ifdef __SMBMUSICAP_DESABLE_SUPERDUKE__
TRAP(err, iRscReleaseList->AppendL(ESmbRscMgrRscRtMultimedia)); // Multimedia(G2)
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber69;
_LIT(KServerPlayerFunc69, "SyncServerPlayerFunc::ReleaseRsc Leave AppendL(MW) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc69, err, aRsc);
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
//嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
return;
}
#endif
if(NULL != iAudioRouting)
{
//梫媮傪掆巭偡傞
iAudioRouting->UpdateState(DCM_NAMESPACE::EMMARRequestStopped);
//壒惡僷僗僋儔僀傾儞僩傪嶍彍偡傞
delete iAudioRouting;
iAudioRouting = NULL;
//@@TRK6811懳墳 Add Start
//僉乕壒偺梷惂
iModel.StopKeySound(EFalse);
//@@TRK6811懳墳 Add End
}
//儕僜乕僗夝曻捠抦傪敪峴偡傞
TRAP(err, iRscMgrClient->ReleaseResourceNotifyL(iRscReleaseList));
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber67;
_LIT(KServerPlayerFunc67, "SyncServerPlayerFunc::ReleaseRsc Leave ReleaseResourceNotifyL() [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc67, err, aRsc);
return;
}
//強桳儕僜乕僗MW
iHasRsc = ESmbMusicAPSyncServerPlayerMWRsc;
break;
//慡偰偺儕僜乕僗
case ESmbMusicAPSyncServerPlayerAllRsc:
//傑偡偼忬懺傪強桳儕僜乕僗側偟偵偡傞
iHasRsc = ESmbMusicAPSyncServerPlayerNone;
if(NULL != iAudioRouting)
{
//梫媮傪掆巭偡傞
iAudioRouting->UpdateState(DCM_NAMESPACE::EMMARRequestStopped);
//壒惡僷僗僋儔僀傾儞僩傪嶍彍偡傞
delete iAudioRouting;
iAudioRouting = NULL;
//@@TRK6811懳墳 Add Start
//僉乕壒偺梷惂
iModel.StopKeySound(EFalse);
//@@TRK6811懳墳 Add End
}
//Player惂屼傪廔椆偡傞
DisConnectPlayer();
TRAP(err, iRscReleaseList = new(ELeave)CArrayFixFlat<TSmbRscMgrRsc>(KMusicPlayerRscMaxNumber));
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber68;
_LIT(KServerPlayerFunc68, "SyncServerPlayerFunc::ReleaseRsc Leave new(ELeave) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc68, err, aRsc);
// ADD-S PTX824 k3-sugimoto
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
// ADD-E PTX824 k3-sugimoto
//嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
return;
}
TRAP(err, iRscReleaseList->AppendL(ESmbRscMgrRscMusicMW));
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber69;
_LIT(KServerPlayerFunc69, "SyncServerPlayerFunc::ReleaseRsc Leave AppendL(MW) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc69, err, aRsc);
// ADD-S PTX824 k3-sugimoto
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
// ADD-E PTX824 k3-sugimoto
//嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
return;
}
// MODIFY-S PTX824 k3-sugimoto
#ifdef __SMBMUSICAPSYNCSERVER_ENABLE_PTX810__
TRAP(err, iRscReleaseList->AppendL(ESmbRscMgrRscMusicBG)); // MusicBG嵞惗尃棙
#else // __SMBMUSICAPSYNCSERVER_ENABLE_PTX810__
TRAP(err, iRscReleaseList->AppendL(ESmbRscMgrRscMusicBG_forBGApp)); // MusicBG嵞惗尃棙(BG傾僾儕梡)
#endif // __SMBMUSICAPSYNCSERVER_ENABLE_PTX810__
// MODIFY-E PTX824 k3-sugimoto
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber70;
_LIT(KServerPlayerFunc70, "SyncServerPlayerFunc::ReleaseRsc Leave AppendL(BG) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc70, err, aRsc);
// ADD-S PTX824 k3-sugimoto
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
// ADD-E PTX824 k3-sugimoto
//嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
return;
}
#ifdef __SMBMUSICAP_DESABLE_SUPERDUKE__
TRAP(err, iRscReleaseList->AppendL(ESmbRscMgrRscRtMultimedia)); // Multimedia(G2)
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber69;
_LIT(KServerPlayerFunc69, "SyncServerPlayerFunc::ReleaseRsc Leave AppendL(MW) [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc69, err, aRsc);
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
//嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
return;
}
#endif
//偙偙偵棃傞傑偱偵Leave偑敪惗偟偰偄傟偽嫞崌FW偺僋儔僀傾儞僩偼婛偵嶍彍偝傟偰偄傞
if(NULL != iRscMgrClient)
{
//儕僜乕僗夝曻捠抦傪敪峴偡傞
TRAP(err, iRscMgrClient->ReleaseResourceNotifyL(iRscReleaseList));
if (KErrNone != err)
{
//儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber71;
_LIT(KServerPlayerFunc71, "SyncServerPlayerFunc::ReleaseRsc Leave ReleaseResourceNotifyL() [%d][aRsc=%d]");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc71, err, aRsc);
// ADD-S PTX824 k3-sugimoto
// 嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞偺偱崌傢偣偰嶍彍偡傞
delete iRscAllocWatcher;
iRscAllocWatcher = NULL;
// ADD-E PTX824 k3-sugimoto
//嫞崌FW僋儔僀傾儞僩傪嶍彍偡傞
delete iRscMgrClient;
iRscMgrClient = NULL;
}
}
break;
default:
//偙偙偵偔傞帠偑側偄偺偱儘僌偱傕弌偟傑偡偐
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber56;
_LIT(KServerPlayerFunc56, "SyncServerPlayerFunc::GetResource default");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerFunc56);
break;
}
if (aSetNotify != EFalse)
{ // 儕僜乕僗妉摼娔帇傪峴偆応崌
TInt result(KErrNone);
// 儕僜乕僗妉摼娔帇搊榐張棟
#ifdef __SMBMUSICAP_DESABLE_SUPERDUKE__
TRAPD(error, result = StartRscReleaseNotifyL(ESmbMusicAPSyncServerRscMusicBG_Watcher););
#else
TRAPD(error, result = StartRscReleaseNotifyL(););
#endif
if (result == KErrCompletion)
{ // BG儕僜乕僗偺奐曻傪庴偗偰偄側偐偭偨応崌
// 傎偲傫偳側偄偲偼巚偄傑偡偑儘僌傪丅
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber56;
_LIT(KServerPlayerFunc56, "SyncServerPlayerFunc::ReleaseRsc not include BGRsc");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelNormal, KServerPlayerFunc56);
}
else if ((result != KErrNone) || (error != KErrNone))
{ // 儕僜乕僗妉摼娔帇搊榐偵幐攕
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber56;
_LIT(KServerPlayerFunc56, "SyncServerPlayerFunc::ReleaseRsc StartRscReleaseNotifyL is Error(r:%d, e:%d)");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHigh, KServerPlayerFunc56, result, error);
}
}
}
/**
僾儗僀儎乕惂屼MW偵僀儀儞僩捠抦梫媮偡傞
* @param 側偟
* @return 張棟寢壥
*/
void CSmbMusicAPSyncServerPlayerFunc::RequestEventNotify()
{
//僾儗僀儎乕惂屼MW偵僀儀儞僩捠抦梫媮傪敪峴偡傞
iMWNotifyAct->Start();
}
/**
僀儀儞僩捠抦僉儍儞僙儖梫媮
* @param 側偟
* @return 張棟寢壥
*/
void CSmbMusicAPSyncServerPlayerFunc::CancelEventNotify(RMessage2& aMsg)
{
TInt cnt = iNotifyMessage.Count();
for(TInt i = 0; i < cnt; i++)
{
//僉儍儞僙儖偡傞捠抦儊僢僙乕僕傪扵偡
if(aMsg.Session() == iNotifyMessage[i].Session())
{
//捠抦儊僢僙乕僕傪夝曻偡傞
iNotifyMessage[i].Complete(KErrNone);
iNotifyMessage.Remove(i);
return;
}
}
}
/**
僀儀儞僩傪捠抦偡傞
* @param[in] 捠抦僀儀儞僩
* @return 側偟
*/
void CSmbMusicAPSyncServerPlayerFunc::SendNotify(TSmbMusicAPSyncEnginePlayerEventType aEvent)
{
//墳摎僷僢働乕僕傪梡堄偡傞
TSmbMusicAPSyncEnginePlayerEvent playerEvent;
TPckg<TSmbMusicAPSyncEnginePlayerEvent> eventPkg(playerEvent);
//捠抦僀儀儞僩傪愝掕偡傞
playerEvent.iType = aEvent;
playerEvent.iInfo.iIndex = 0;
playerEvent.iInfo.iCause = ESmbMusicAPSyncEnginePlayerInvalid;
TInt res = KErrNone;
//庢摼偡傞嵞惗僐儞僥僉僗僩
TSmbMusicMWPlayerPlayContext resContext;
//嬋忣曬傪儘僌弌椡偡傞
TInt log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber86;
_LIT(KServerPlayerFunc86, "SyncServerPlayerFunc::SendNotify Info Event = [%d], Index = [%d], IteratorHandle = [%d] ");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelLowest, KServerPlayerFunc86, aEvent,
iPlaySong.iIndex, iPlaySong.iIterator.iIteratorHandle);
//敪峴偡傞捠抦偵傛偭偰張棟傪暘婒偡傞
switch(aEvent)
{
///<僼傽僀儖偺堎忢偵傛傝嵞惗晄壜偱偁傞
case ESmbMusicAPSyncEnginePlayFail:
//嵞惗晄壜梫場傪庢摼偡傞
playerEvent.iInfo.iCause = iMWNotifyAct->GetFailReason();
//僄儔乕忣曬傪儘僌弌椡偡傞
log = EMusicAPSyncServerClassNumber51 | EMusicAPSyncServerLocationNumber88;
_LIT(KServerPlayerFunc88, "SyncServerPlayerFunc::SendNotify ErrSong Info Error = [%d], Index = [%d], IteratorHandle = [%d] ");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelNormal, KServerPlayerFunc88, playerEvent.iInfo.iCause,
iPlaySong.iIndex, iPlaySong.iIterator.iIteratorHandle);
//埲壓偺張棟偼嵞惗奐巒捠抦丄嬋曄峏捠抦偲摨偠
// ADD-S PTX824 k3-sugimoto
// 僌儗乕僗僺儕僆僪婜娫撪僐儞僥儞僣専抦
case ESmbMusicAPSyncEngineGracePeriodContents:
// ADD-E PTX824 k3-sugimoto
///<嬋憲傝丒嬋栠偟摍偵傛傝嵞惗嬋偑曄峏偝傟壒柭摦傪奐巒偟偨
case ESmbMusicAPSyncEngineChangePlaySong:
///<嵞惗傪奐巒偟偨
case ESmbMusicAPSyncEngineStartPlay:
{
//Iterator僴儞僪儖傪庢摼偡傞
TSmbMusicMWPlayerSongInfo songInfo;
//捠抦偝傟偨僀僥儗乕僞忣曬傪庢摼偡傞
iMWNotifyAct->GetSongInfo(songInfo.iIteratorHandle, songInfo.iContainerID);
//TRK4589懳墳 Start
//TRK4106懳墳 Start
//嵞惗忣曬傪峏怴偡傞昁梫偑偁傞偐傪挷傋傞
// if(iPlaySong.iIterator.iIteratorHandle != songInfo.iIteratorHandle)
// {
// //嵞惗嬋忣曬
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -