# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1274959444 -10800 # Node ID 1c0a769d0cc56779724a5ea0ce6a0d0e00d9e8b0 # Parent 72dc595b34a8d9932079e392d1aef55d8e2a1bd7 Revision: 201021 Kit: 2010121 diff -r 72dc595b34a8 -r 1c0a769d0cc5 devsoundextensions/drmaudioplayer/DRMPlayServer/inc/DRMCustomCommandAsyncAO.h --- a/devsoundextensions/drmaudioplayer/DRMPlayServer/inc/DRMCustomCommandAsyncAO.h Fri May 14 17:22:44 2010 +0300 +++ b/devsoundextensions/drmaudioplayer/DRMPlayServer/inc/DRMCustomCommandAsyncAO.h Thu May 27 14:24:04 2010 +0300 @@ -23,7 +23,7 @@ #include #include "DRMPlaySession.h" -// #include +// #include class CDRMPlayServerSession; diff -r 72dc595b34a8 -r 1c0a769d0cc5 imagingandcamerafws/camerafw/Include/distribution.policy --- a/imagingandcamerafws/camerafw/Include/distribution.policy Fri May 14 17:22:44 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -Category E -OSD: Optional Replaceable Multimedia Camera API diff -r 72dc595b34a8 -r 1c0a769d0cc5 imagingandcamerafws/imagingfws/inc/icl/distribution.policy --- a/imagingandcamerafws/imagingfws/inc/icl/distribution.policy Fri May 14 17:22:44 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -Category D -OSD: Common Symbian Image Conversion Library framework diff -r 72dc595b34a8 -r 1c0a769d0cc5 mdfdevvideoextensions/nga_mdf_postprocessor/group/nga_mdf_postprocessor.pkg --- a/mdfdevvideoextensions/nga_mdf_postprocessor/group/nga_mdf_postprocessor.pkg Fri May 14 17:22:44 2010 +0300 +++ b/mdfdevvideoextensions/nga_mdf_postprocessor/group/nga_mdf_postprocessor.pkg Thu May 27 14:24:04 2010 +0300 @@ -20,7 +20,7 @@ &EN ; Header -#{"NGA MDF PostProcessor"},(0x0251318C), 1, 0, 0, TYPE=PU +#{"NGA MDF PostProcessor"},(0x0251318C), 1, 0, 0, TYPE=SA,RU ; Localised Vendor name %{"Nokia"} diff -r 72dc595b34a8 -r 1c0a769d0cc5 mdfdevvideoextensions/nga_mdf_postprocessor/inc/NGAPostProcHwDevice.h --- a/mdfdevvideoextensions/nga_mdf_postprocessor/inc/NGAPostProcHwDevice.h Fri May 14 17:22:44 2010 +0300 +++ b/mdfdevvideoextensions/nga_mdf_postprocessor/inc/NGAPostProcHwDevice.h Thu May 27 14:24:04 2010 +0300 @@ -1069,7 +1069,10 @@ TInt iVideoFrameBufSize; TBool iResourceLost; TBool iRedrawDone; - + // Flag to indicate that the redraw surface has been created, and + // can be used in a subsequent call ro Redraw() + TBool iRedrawSurfaceInUse; + //-- members for buffer management -- MMmfVideoBufferManagementObserver* iVBMObserver; TBufferOptions iVBMBufferOptions; diff -r 72dc595b34a8 -r 1c0a769d0cc5 mdfdevvideoextensions/nga_mdf_postprocessor/src/NGAPostProcHwDevice.cpp --- a/mdfdevvideoextensions/nga_mdf_postprocessor/src/NGAPostProcHwDevice.cpp Fri May 14 17:22:44 2010 +0300 +++ b/mdfdevvideoextensions/nga_mdf_postprocessor/src/NGAPostProcHwDevice.cpp Thu May 27 14:24:04 2010 +0300 @@ -99,6 +99,7 @@ iVideoFrameBufSize(0), iResourceLost(EFalse), iRedrawDone(EFalse), + iRedrawSurfaceInUse(EFalse), iVBMObserver(NULL), count(0), iSurfaceMask(surfaceHints::EAllowAllExternals), @@ -407,7 +408,10 @@ } if(!iFirstPictureUpdated) { - iTimeToPost = EPostIt; + if(iTimeToPost == EDelayIt) + { + iTimeToPost = EPostIt; + } } switch(iTimeToPost) { @@ -441,7 +445,10 @@ if(!iFirstPictureUpdated) { iFirstPictureUpdated = ETrue; - PublishSurfaceCreated(); + if(!iSurfaceCreatedEventPublished) + { + PublishSurfaceCreated(); + } } } break; @@ -848,12 +855,12 @@ { PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:Redraw ++"), this); TInt err = KErrNone; - if(iResourceLost && !iRedrawDone) + if(iRedrawSurfaceInUse && !iRedrawDone) { err = AddHints(); if (err != KErrNone) { - PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:MmvroResourcesLost -- failed to AddHints %d"), + PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:Redraw -- failed to AddHints %d"), this, err); iProxy->MdvppFatalError(this, err); return; @@ -862,7 +869,7 @@ err = RegisterSurface(iSurfaceId); if (err != KErrNone) { - PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:MmvroResourcesLost -- failed to Register Surface %d"), + PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:Redraw -- failed to Register Surface %d"), this, err); iSurfaceHandler->DestroySurface(iSurfaceId); iSurfaceId = TSurfaceId::CreateNullId(); @@ -926,7 +933,10 @@ PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:SetPosition FAILED: Unexpected state"), this); return; } - + if (iPPState == EPaused) + { + iFirstPictureUpdated = EFalse; + } iCurrentPlaybackPosition = aPlaybackPosition; ReleaseInputQ(); @@ -1416,7 +1426,7 @@ if(!aSurfaceId.IsNull()) { PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:MmvssSurfaceRemovedL(): UnregisterSurface ID = 0x%x"), this, aSurfaceId ); - iWsSession.UnregisterSurface(0, iSurfaceId); + iWsSession.UnregisterSurface(0, aSurfaceId); iSurfaceHandler->DestroySurface(aSurfaceId); } @@ -1460,7 +1470,12 @@ ReleaseInputQ(); iSessionManager->CancelUpdate(); ReleaseProcessQ(); - iVideoSurfaceObserver->MmvsoRemoveSurface(); + if(iVideoSurfaceObserver && iSurfaceCreatedEventPublished) + { + PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:MmvroResourcesLost - Telling client to remove surface"), this); + iVideoSurfaceObserver->MmvsoRemoveSurface(); + iSurfaceCreatedEventPublished = EFalse; + } } else if(iResourceLost && iRedrawDone) { @@ -1506,7 +1521,7 @@ void CNGAPostProcHwDevice::MmvshcRedrawBufferToSurface(TPtrC8& aRedrawBuffer) { - PP_DEBUG(_L("CNGAPostProcHwDevice::MmvshcRedrawBufferToSurface ++"), this); + PP_DEBUG(_L("CNGAPostProcHwDevice[%x]::MmvshcRedrawBufferToSurface ++"), this); TSize surfaceSize; TUint8* lPtr; @@ -1550,6 +1565,7 @@ this, err); iSurfaceHandler->DestroySurface(iSurfaceId); iSurfaceId = TSurfaceId::CreateNullId(); + iChunk.Close(); iProxy->MdvppFatalError(this, err); return; } @@ -1561,6 +1577,7 @@ PP_DEBUG(_L("CNGAPostProcHwDevice[%x]::MmvshcRedrawBufferToSurface offset query failed %d"), this, err); iSurfaceHandler->DestroySurface(iSurfaceId); iSurfaceId = TSurfaceId::CreateNullId(); + iChunk.Close(); iProxy->MdvppFatalError(this, err); return; } @@ -1568,7 +1585,9 @@ lPtr = reinterpret_cast(iChunk.Base() + offset); memcpy((TAny *)lPtr, (TAny *)aRedrawBuffer.Ptr(), aRedrawBuffer.Size()); - + + iRedrawSurfaceInUse = ETrue; + PP_DEBUG(_L("CNGAPostProcHwDevice[%x]::MmvshcRedrawBufferToSurface error = %d --"), this, err); } @@ -1578,14 +1597,27 @@ if(!iSurfaceId.IsNull()) { - PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:SetupExternalSurface Cleaning ReDraw Surface"), this); - iVideoSurfaceObserver->MmvsoRemoveSurface(); + if (iVideoSurfaceObserver && iSurfaceCreatedEventPublished) + { + PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:SetupExternalSurface - Telling client to remove old surface"), this); + iVideoSurfaceObserver->MmvsoRemoveSurface(); + iSurfaceCreatedEventPublished = EFalse; + } + else + { + // We never told the client about the surface, so we must destroy it ourselves + PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:SetupExternalSurface - Destroying old surface"), this); + iWsSession.UnregisterSurface(0, iSurfaceId); + iSurfaceHandler->DestroySurface(iSurfaceId); + } + + iChunk.Close(); } iSurfaceId = aSurfaceID; iUsingExternalSurface = ETrue; - - + iRedrawSurfaceInUse = EFalse; + // Create the surface handler if it doesn't exist. if (!iSurfaceHandler) { @@ -1776,7 +1808,10 @@ if(!iFirstPictureUpdated) { iFirstPictureUpdated = ETrue; - PublishSurfaceCreated(); + if(!iSurfaceCreatedEventPublished) + { + PublishSurfaceCreated(); + } } } // end of postit break; diff -r 72dc595b34a8 -r 1c0a769d0cc5 mm_pub/audio_effects_presets_api/tsrc/EffectPresetsTest/src/EffectPresetTestCore.cpp --- a/mm_pub/audio_effects_presets_api/tsrc/EffectPresetsTest/src/EffectPresetTestCore.cpp Fri May 14 17:22:44 2010 +0300 +++ b/mm_pub/audio_effects_presets_api/tsrc/EffectPresetsTest/src/EffectPresetTestCore.cpp Thu May 27 14:24:04 2010 +0300 @@ -353,7 +353,7 @@ TUint32 CTestAudioEqualizerUtility::NumberOfPreDefinePresets(TTestResult & aResult) { TInt err=KErrNone; - TUint32 aPredefinedPreset; + TUint32 aPredefinedPreset = 0; TRAP(err, aPredefinedPreset=iAudioEqualizerUtility->NumberOfPreDefinedPresets()); aResult.iResult = err; diff -r 72dc595b34a8 -r 1c0a769d0cc5 mm_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/DRMAudioPlay_core.cpp --- a/mm_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/DRMAudioPlay_core.cpp Fri May 14 17:22:44 2010 +0300 +++ b/mm_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/DRMAudioPlay_core.cpp Thu May 27 14:24:04 2010 +0300 @@ -21,7 +21,7 @@ #include #include #include -#include +#include #include using namespace ContentAccess; diff -r 72dc595b34a8 -r 1c0a769d0cc5 mm_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/SimpleSoundPlayer.cpp --- a/mm_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/SimpleSoundPlayer.cpp Fri May 14 17:22:44 2010 +0300 +++ b/mm_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/SimpleSoundPlayer.cpp Thu May 27 14:24:04 2010 +0300 @@ -249,7 +249,7 @@ if (iMetaInfoTest) { //No error yet TInt currMetaDataIndex = 0; - CMMFMetaDataEntry* currMetaData; + CMMFMetaDataEntry* currMetaData = NULL; for ( currMetaDataIndex=0 ; currMetaDataIndex < NumMetaDatas ; currMetaDataIndex++) { currMetaData = iMdaPlayer->GetMetaDataEntryL(currMetaDataIndex); @@ -783,9 +783,10 @@ return ETrue; //break; case KPlayerActionStopPlayUrl: - CUrlParameters *p = static_cast(aParams); - OpenUrlL(p->GetUrl() , p->GetIapId() , p->GetMimeType() ); - break; + CUrlParameters *p; + p = static_cast(aParams); + OpenUrlL(p->GetUrl() , p->GetIapId() , p->GetMimeType() ); + break; case KPlayerActionStopPlayFileHandler: Stop(); // OpenFileHandlerL((static_cast(aParams) )->GetFileName() , ETrue); diff -r 72dc595b34a8 -r 1c0a769d0cc5 mm_pub/drm_audio_player_api/tsrc/data/mmc/drm/test3gp.dcf diff -r 72dc595b34a8 -r 1c0a769d0cc5 mm_pub/drm_audio_player_api/tsrc/data/mmc/drm/testmp3.dcf diff -r 72dc595b34a8 -r 1c0a769d0cc5 mmlibs/mmfw/tsrc/mmfunittest/Recogniser/Data/common/distribution.policy --- a/mmlibs/mmfw/tsrc/mmfunittest/Recogniser/Data/common/distribution.policy Fri May 14 17:22:44 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -Category T -OSD: Reference/Test Multimedia Test diff -r 72dc595b34a8 -r 1c0a769d0cc5 mmlibs/mmfw/tsrc/mmfunittest/Recogniser/Data/distribution.policy --- a/mmlibs/mmfw/tsrc/mmfunittest/Recogniser/Data/distribution.policy Fri May 14 17:22:44 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -Category T -OSD: Reference/Test Multimedia Test