[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-video-cvs
Subject:    [Video-cvs] sitelib/platform/symbian minisymbiansite.cpp,1.37,1.38
From:       praveenkumar () helixcommunity ! org
Date:       2010-04-05 21:09:26
Message-ID: 201004052109.o35L9Q1S013799 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/video/sitelib/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv22385/platform/symbian

Modified Files:
	minisymbiansite.cpp 
Log Message:
"Nokia submits this code under the terms of a commercial contribution agreement with \
RealNetworks, and I am authorized to contribute this code under said agreement." \
Modified by:  Praveen.Thimmashetty@nokia.com

Reviewed by: 

Date: 24-Mar-2010 

Project: SymbianMmf_wm

 Sub Id:  417-58965 

 Synopsis: CR: Implement the existing MMF API GetFrameL() to enable capturing a video \
                frame during playback 
               For more info: please refer the attached design document \
FetchFrameDesignDoc.ppt.

Files Added:  

source\common\include\platform\symbian\symbianframefetcher.h 

Files Modified:

\source\common\include\hxiids.h
\source\video\sitelib\platform\symbian\minisymbiansite.cpp
\source\video\sitelib\pub\platform\symbian\minisymbiansite.h
\source\video\sitelib\symbian.pcf

\source\clientapps\symbianMmf\MmfCtrlLib
\source\clientapps\symbianMmf\hxmmfstatectrlobs.h
\source\clientapps\symbianMmf\hxmmfstatectrl.h
\source\clientapps\symbianMmf\hxmmfstatectrl.cpp
\source\clientapps\symbianMmf\hxmmfsitesupplier.h
\source\clientapps\symbianMmf\hxmmfsitesupplier.cpp
\source\clientapps\symbianMmf\audiocontroller\controllerdll
\source\clientapps\symbianMmf\common\hxmmfbasectrl.cpp
\source\clientapps\symbianMmf\common\hxmmfbasectrl.h
\source\clientapps\symbianMmf\common\Umakefil
\source\clientapps\symbianMmf\videocontroller\hxmmfctrlimpl.cpp
\source\clientapps\symbianMmf\videocontroller\hxmmfctrlimpl.h
\source\clientapps\symbianMmf\videocontroller\MmfCtrlDll

\source\datatype\mdf\video\renderer\umakedll
\source\datatype\mdf\video\renderer\mdfvideoadapter.cpp
\source\datatype\mdf\video\renderer\pub\mdfvideoadapter.h
\source\datatype\mdf\video\renderer\mdfdevice\server\CMDFDevVideoServerCmds.h
\source\datatype\mdf\video\renderer\mdfdevice\client\CMDFDevVideoClient.h
\source\datatype\mdf\video\renderer\mdfdevice\client\CMDFDevVideoClient.cpp
\source\datatype\mdf\video\renderer\mdfdevice\server\CMDFDevVideoServerSession.cpp

Image Size and Heap Use impact: minor

Module Release testing (STIF) :   Done.

 Test case(s) Added  :  No.

Memory leak check performed : Yes. No new leaks introduced 

Platforms and Profiles Build Verified: 

Platforms and Profiles Functionality verified: armv5 

Branch: 420Brizo, HEAD 



Index: minisymbiansite.cpp
===================================================================
RCS file: /cvsroot/video/sitelib/platform/symbian/minisymbiansite.cpp,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -d -r1.37 -r1.38
--- minisymbiansite.cpp	27 Apr 2009 19:55:01 -0000	1.37
+++ minisymbiansite.cpp	5 Apr 2010 21:09:23 -0000	1.38
@@ -78,6 +78,7 @@
 #if defined(HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES)
 INTERFACE_LIST_ENTRY(IID_IHXSymbianGraphicsSurface, IHXSymbianGraphicsSurface)
 #endif //HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES
+INTERFACE_LIST_ENTRY(IID_IHXSymbianFrameFetcher, IHXSymbianFrameFetcher)
 INTERFACE_LIST_ENTRY_DELEGATE_BLIND(CMiniBaseSite::QueryInterface)
 END_INTERFACE_LIST
 
@@ -93,6 +94,7 @@
 #if defined (HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES)
                                ,m_pGraphicsSurface(NULL)
 #endif //HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES
+							   ,m_pFrameFetcher(NULL)
                                ,m_bWindowRectValid(FALSE)
                                ,m_eRotation(Rotate0)
                                ,m_bBlitting(TRUE)
@@ -326,6 +328,20 @@
 #endif //HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES
 
 STDMETHODIMP
+CHXSymbianSite::GetFrame(CFbsBitmap* pFbsBitmap)
+{
+	HXLOGL2( HXLOG_SITE, "CHXSymbianSite::GetFrame()++");
+	HX_RESULT retVal = HXR_FAIL;
+    if(m_pFrameFetcher != NULL)
+  	{
+		retVal = m_pFrameFetcher->GetFrame(pFbsBitmap);
+  	}
+       
+   	HXLOGL2( HXLOG_SITE, "CHXSymbianSite::GetFrame()-- retVal = %d", retVal);
+    return  retVal;
+}
+
+STDMETHODIMP
 CHXSymbianSite::SetRotation(UINT32 ulValue)
 {
     HXLOGL4( HXLOG_SITE, "CHXSymbianSite::SetRotation( rotation[%d])",ulValue);
@@ -500,6 +516,13 @@
         return HXR_FAIL;
     }
 #endif //HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES
+	pMdfVideoAdapter->QueryInterface(IID_IHXSymbianFrameFetcher, (void**) \
&m_pFrameFetcher); +    if(!m_pFrameFetcher)
+    {
+    	HXLOGL1( HXLOG_SITE, "CHXSymbianSite::RegisterAdapter() for SymbianFrameFetcher \
FAIL --"); +    	//it this interface doesn't exists lets not stop the normal playback
+    	//HXR_FAIL is not returned from here intentionally. this error is taken care.
+    }
     //Get control of DSA interface
     m_pSurfaceControlSite->QueryInterface(IID_IHXDSAControl, (void**) \
&m_pDSAControl);  if(!m_pDSAControl)
@@ -538,7 +561,7 @@
 #if defined(HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES)
     HX_RELEASE( m_pGraphicsSurface );
 #endif //HELIX_FEATURE_SYMBIAN_GRAPHICS_SURFACES
-
+	HX_RELEASE( m_pFrameFetcher );
 }
 
 //IHXDSAControl


_______________________________________________
Video-cvs mailing list
Video-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/video-cvs


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic