summaryrefslogtreecommitdiffstats
path: root/plugins/pluginDirectShow/internals/wince
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/pluginDirectShow/internals/wince')
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/CPropertyBag.cxx52
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/CPropertyBag.h33
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/DSISampleGrabberCB.h11
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/DSNullFilter.cxx12
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/DSNullFilter.h6
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/DSSampleGrabber.cxx299
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/DSSampleGrabber.h58
-rwxr-xr-xplugins/pluginDirectShow/internals/wince/DSSampleGrabberUtils.h20
8 files changed, 246 insertions, 245 deletions
diff --git a/plugins/pluginDirectShow/internals/wince/CPropertyBag.cxx b/plugins/pluginDirectShow/internals/wince/CPropertyBag.cxx
index a6b436a..045530d 100755
--- a/plugins/pluginDirectShow/internals/wince/CPropertyBag.cxx
+++ b/plugins/pluginDirectShow/internals/wince/CPropertyBag.cxx
@@ -16,14 +16,14 @@
#include "internals/wince/CPropertyBag.h"
CPropertyBag::CPropertyBag() : _refCount(1), pVar(0)
-{
+{
}
CPropertyBag::~CPropertyBag()
{
VAR_LIST *pTemp = pVar;
HRESULT hr = S_OK;
-
+
while(pTemp) {
VAR_LIST *pDel = pTemp;
VariantClear(&pTemp->var);
@@ -35,13 +35,13 @@ CPropertyBag::~CPropertyBag()
}
HRESULT STDMETHODCALLTYPE
-CPropertyBag::Read(LPCOLESTR pszPropName,
- VARIANT *_pVar,
- IErrorLog *pErrorLog)
+CPropertyBag::Read(LPCOLESTR pszPropName,
+ VARIANT *_pVar,
+ IErrorLog *pErrorLog)
{
VAR_LIST *pTemp = pVar;
HRESULT hr = S_OK;
-
+
while (pTemp) {
if (0 == wcscmp(pszPropName, pTemp->pBSTRName)) {
hr = VariantCopy(_pVar, &pTemp->var);
@@ -54,8 +54,8 @@ CPropertyBag::Read(LPCOLESTR pszPropName,
HRESULT STDMETHODCALLTYPE
-CPropertyBag::Write(LPCOLESTR pszPropName,
- VARIANT *_pVar)
+CPropertyBag::Write(LPCOLESTR pszPropName,
+ VARIANT *_pVar)
{
HRESULT hr = S_OK;
VAR_LIST *pTemp = new VAR_LIST();
@@ -72,37 +72,37 @@ CPropertyBag::Write(LPCOLESTR pszPropName,
return VariantCopy(&pTemp->var, _pVar);
}
-ULONG STDMETHODCALLTYPE
-CPropertyBag::AddRef()
+ULONG STDMETHODCALLTYPE
+CPropertyBag::AddRef()
{
return InterlockedIncrement((LONG *)&_refCount);
}
-ULONG STDMETHODCALLTYPE
-CPropertyBag::Release()
+ULONG STDMETHODCALLTYPE
+CPropertyBag::Release()
{
ASSERT(_refCount != 0xFFFFFFFF);
- ULONG ret = InterlockedDecrement((LONG *)&_refCount);
- if (!ret) {
- delete this;
- }
+ ULONG ret = InterlockedDecrement((LONG *)&_refCount);
+ if (!ret) {
+ delete this;
+ }
return ret;
}
-HRESULT STDMETHODCALLTYPE
-CPropertyBag::QueryInterface(REFIID riid, void** ppv)
+HRESULT STDMETHODCALLTYPE
+CPropertyBag::QueryInterface(REFIID riid, void** ppv)
{
- if (!ppv) {
+ if (!ppv) {
return E_POINTER;
- }
- if (riid == IID_IPropertyBag) {
+ }
+ if (riid == IID_IPropertyBag) {
*ppv = static_cast<IPropertyBag*>(this);
- }
- else {
+ }
+ else {
return *ppv = 0, E_NOINTERFACE;
- }
-
- return AddRef(), S_OK;
+ }
+
+ return AddRef(), S_OK;
}
#endif /* _WIN32_WCE */
diff --git a/plugins/pluginDirectShow/internals/wince/CPropertyBag.h b/plugins/pluginDirectShow/internals/wince/CPropertyBag.h
index 20ce779..8abb728 100755
--- a/plugins/pluginDirectShow/internals/wince/CPropertyBag.h
+++ b/plugins/pluginDirectShow/internals/wince/CPropertyBag.h
@@ -4,40 +4,39 @@
#include "plugin_dshow_config.h"
-struct VAR_LIST
-{
+struct VAR_LIST {
VARIANT var;
VAR_LIST *pNext;
BSTR pBSTRName;
};
class CPropertyBag : public IPropertyBag
-{
+{
public:
CPropertyBag();
~CPropertyBag();
-
+
HRESULT STDMETHODCALLTYPE
Read(
- LPCOLESTR pszPropName,
- VARIANT *pVar,
+ LPCOLESTR pszPropName,
+ VARIANT *pVar,
IErrorLog *pErrorLog
- );
-
-
+ );
+
+
HRESULT STDMETHODCALLTYPE
Write(
- LPCOLESTR pszPropName,
+ LPCOLESTR pszPropName,
VARIANT *pVar
- );
-
- ULONG STDMETHODCALLTYPE AddRef();
- ULONG STDMETHODCALLTYPE Release();
- HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppv);
+ );
+
+ ULONG STDMETHODCALLTYPE AddRef();
+ ULONG STDMETHODCALLTYPE Release();
+ HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppv);
private:
- ULONG _refCount;
- VAR_LIST *pVar;
+ ULONG _refCount;
+ VAR_LIST *pVar;
};
#endif /* _WIN32_WCE */
diff --git a/plugins/pluginDirectShow/internals/wince/DSISampleGrabberCB.h b/plugins/pluginDirectShow/internals/wince/DSISampleGrabberCB.h
index 89d8909..ec983d7 100755
--- a/plugins/pluginDirectShow/internals/wince/DSISampleGrabberCB.h
+++ b/plugins/pluginDirectShow/internals/wince/DSISampleGrabberCB.h
@@ -1,17 +1,17 @@
/* Copyright (C) 2014-2015 Mamadou DIOP
-*
+*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
-*
+*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-*
+*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*/
@@ -21,9 +21,8 @@
#include "plugin_dshow_config.h"
-interface DSISampleGrabberCB
-{
- virtual HRESULT STDMETHODCALLTYPE SampleCB(double SampleTime, IMediaSample *pSample) = 0;
+interface DSISampleGrabberCB {
+ virtual HRESULT STDMETHODCALLTYPE SampleCB(double SampleTime, IMediaSample *pSample) = 0;
virtual HRESULT STDMETHODCALLTYPE BufferCB(double SampleTime, BYTE *pBuffer, long BufferLen) = 0;
};
diff --git a/plugins/pluginDirectShow/internals/wince/DSNullFilter.cxx b/plugins/pluginDirectShow/internals/wince/DSNullFilter.cxx
index 76d713c..8b43d83 100755
--- a/plugins/pluginDirectShow/internals/wince/DSNullFilter.cxx
+++ b/plugins/pluginDirectShow/internals/wince/DSNullFilter.cxx
@@ -1,19 +1,19 @@
#if defined(_WIN32_WCE)
/* Copyright (C) 2014-2015 Mamadou DIOP
-*
+*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
-*
+*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-*
+*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*/
@@ -21,10 +21,10 @@
#include "internals/wince/DSNullFilter.h"
// {7F9F08CF-139F-40b2-A283-01C4EC26A452}
-TDSHOW_DEFINE_GUID(CLSID_DSNullFilter,
-0x7f9f08cf, 0x139f, 0x40b2, 0xa2, 0x83, 0x1, 0xc4, 0xec, 0x26, 0xa4, 0x52);
+TDSHOW_DEFINE_GUID(CLSID_DSNullFilter,
+ 0x7f9f08cf, 0x139f, 0x40b2, 0xa2, 0x83, 0x1, 0xc4, 0xec, 0x26, 0xa4, 0x52);
-DSNullFilter::DSNullFilter(LPUNKNOWN punk,HRESULT *phr)
+DSNullFilter::DSNullFilter(LPUNKNOWN punk,HRESULT *phr)
: CTransInPlaceFilter(TEXT("NullRenderer"), punk, CLSID_DSNullFilter, phr)
{
}
diff --git a/plugins/pluginDirectShow/internals/wince/DSNullFilter.h b/plugins/pluginDirectShow/internals/wince/DSNullFilter.h
index fc9b76a..608a2b6 100755
--- a/plugins/pluginDirectShow/internals/wince/DSNullFilter.h
+++ b/plugins/pluginDirectShow/internals/wince/DSNullFilter.h
@@ -1,17 +1,17 @@
/* Copyright (C) 2014-2015 Mamadou DIOP
-*
+*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
-*
+*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-*
+*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*/
diff --git a/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.cxx b/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.cxx
index d33d105..920111f 100755
--- a/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.cxx
+++ b/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.cxx
@@ -6,192 +6,191 @@
// {38589364-71FD-4641-B426-E443DB023568}
-TDSHOW_DEFINE_GUID(CLSID_SampleGrabber,
-0x38589364, 0x71fd, 0x4641, 0xb4, 0x26, 0xe4, 0x43, 0xdb, 0x2, 0x35, 0x68);
+TDSHOW_DEFINE_GUID(CLSID_SampleGrabber,
+ 0x38589364, 0x71fd, 0x4641, 0xb4, 0x26, 0xe4, 0x43, 0xdb, 0x2, 0x35, 0x68);
#define RGB565_MASK_RED 0xF800
#define RGB565_MASK_GREEN 0x07E0
#define RGB565_MASK_BLUE 0x001F
-DSSampleGrabber::DSSampleGrabber(TCHAR *tszName, LPUNKNOWN punk, HRESULT *phr)
-:CTransInPlaceFilter (tszName, punk, CLSID_SampleGrabber, phr)
-{
+DSSampleGrabber::DSSampleGrabber(TCHAR *tszName, LPUNKNOWN punk, HRESULT *phr)
+ :CTransInPlaceFilter (tszName, punk, CLSID_SampleGrabber, phr)
+{
#define FPS_INPUT 30
#define FPS_OUTPUT 5
- this->m_rtFrameLength = (10000000)/FPS_OUTPUT;
+ this->m_rtFrameLength = (10000000)/FPS_OUTPUT;
- this->m_inputFps = FPS_INPUT;
- this->m_outputFps = FPS_OUTPUT;
+ this->m_inputFps = FPS_INPUT;
+ this->m_outputFps = FPS_OUTPUT;
- this->m_iFrameNumber = 0;
- this->m_progress = 0;
- this->m_bProcessFrame = true;
+ this->m_iFrameNumber = 0;
+ this->m_progress = 0;
+ this->m_bProcessFrame = true;
- this->callback = NULL;
- this->m_rgb24 = NULL;
+ this->callback = NULL;
+ this->m_rgb24 = NULL;
- m_cRef = 0;
+ m_cRef = 0;
}
-DSSampleGrabber::~DSSampleGrabber() {
- this->callback = NULL;
- if(this->m_rgb24)
- {
- delete[]this->m_rgb24;
- this->m_rgb24 = NULL;
- }
+DSSampleGrabber::~DSSampleGrabber()
+{
+ this->callback = NULL;
+ if(this->m_rgb24) {
+ delete[]this->m_rgb24;
+ this->m_rgb24 = NULL;
+ }
}
HRESULT DSSampleGrabber::SetFps(int inputFps, int outputFps)
{
- if (inputFps <= 0 || outputFps <= 0) {
- return E_FAIL;
- }
-
- // Stop prcessing
- this->m_bProcessFrame = false;
-
- if (inputFps < outputFps) {
- this->m_inputFps = this->m_outputFps = inputFps;
- }
- else {
- this->m_outputFps = outputFps;
- this->m_inputFps = inputFps;
- }
-
- // Restart processing
- this->m_iFrameNumber = 0;
- this->m_progress = 0;
- this->m_bProcessFrame = true;
-
- return S_OK;
+ if (inputFps <= 0 || outputFps <= 0) {
+ return E_FAIL;
+ }
+
+ // Stop prcessing
+ this->m_bProcessFrame = false;
+
+ if (inputFps < outputFps) {
+ this->m_inputFps = this->m_outputFps = inputFps;
+ }
+ else {
+ this->m_outputFps = outputFps;
+ this->m_inputFps = inputFps;
+ }
+
+ // Restart processing
+ this->m_iFrameNumber = 0;
+ this->m_progress = 0;
+ this->m_bProcessFrame = true;
+
+ return S_OK;
}
HRESULT DSSampleGrabber::Transform(IMediaSample *pSample)
-{
- BYTE *pData = NULL;
- HRESULT hr = S_OK;
- HRESULT ret = S_FALSE;
-
- if (!this->m_bProcessFrame) {
- return S_FALSE;
- }
-
- // Get pointer to the video buffer data
- if ( FAILED(pSample->GetPointer(&pData)) ) {
- ret = E_FAIL;
- goto bail;
- }
-
- pSample->SetTime(NULL, NULL);
-
- // Drop frame?
- if (this->m_iFrameNumber == 0) {
- ret = S_OK;
- }
- else if (this->m_progress >= this->m_inputFps) {
- this->m_progress -= this->m_inputFps;
- ret = S_OK;
- }
-
- // Mark frame as accepted
- if (ret == S_OK) {
- // Set TRUE on every sample for uncompressed frames
- pSample->SetSyncPoint(TRUE);
-
- long Size = pSample->GetSize();
- if ( this->callback ) {
- LONGLONG start, end;
- WORD *rgb565 = (WORD*)pData;
-
- for(int i = 0, i24 = 0, i565 = 0; i< (Size/2); i++, i24+=3, i565+=1) {
- BYTE *p24 = (this->m_rgb24+i24);
- WORD val565 = *(rgb565 + i565);
-
- // extract RGB
- p24[2] = (val565 & RGB565_MASK_RED) >> 11;
- p24[1] = (val565 & RGB565_MASK_GREEN) >> 5;
- p24[0] = (val565 & RGB565_MASK_BLUE);
-
- // amplify the image
- p24[2] <<= 3;
- p24[1] <<= 2;
- p24[0] <<= 3;
- }
-
- pSample->GetMediaTime(&start, &end);
- this->callback->BufferCB( (double)start, this->m_rgb24, ((Size >> 1) * 3));
- }
- }
-
- this->m_progress += this->m_outputFps;
- this->m_iFrameNumber++;
+{
+ BYTE *pData = NULL;
+ HRESULT hr = S_OK;
+ HRESULT ret = S_FALSE;
+
+ if (!this->m_bProcessFrame) {
+ return S_FALSE;
+ }
+
+ // Get pointer to the video buffer data
+ if ( FAILED(pSample->GetPointer(&pData)) ) {
+ ret = E_FAIL;
+ goto bail;
+ }
+
+ pSample->SetTime(NULL, NULL);
+
+ // Drop frame?
+ if (this->m_iFrameNumber == 0) {
+ ret = S_OK;
+ }
+ else if (this->m_progress >= this->m_inputFps) {
+ this->m_progress -= this->m_inputFps;
+ ret = S_OK;
+ }
+
+ // Mark frame as accepted
+ if (ret == S_OK) {
+ // Set TRUE on every sample for uncompressed frames
+ pSample->SetSyncPoint(TRUE);
+
+ long Size = pSample->GetSize();
+ if ( this->callback ) {
+ LONGLONG start, end;
+ WORD *rgb565 = (WORD*)pData;
+
+ for(int i = 0, i24 = 0, i565 = 0; i< (Size/2); i++, i24+=3, i565+=1) {
+ BYTE *p24 = (this->m_rgb24+i24);
+ WORD val565 = *(rgb565 + i565);
+
+ // extract RGB
+ p24[2] = (val565 & RGB565_MASK_RED) >> 11;
+ p24[1] = (val565 & RGB565_MASK_GREEN) >> 5;
+ p24[0] = (val565 & RGB565_MASK_BLUE);
+
+ // amplify the image
+ p24[2] <<= 3;
+ p24[1] <<= 2;
+ p24[0] <<= 3;
+ }
+
+ pSample->GetMediaTime(&start, &end);
+ this->callback->BufferCB( (double)start, this->m_rgb24, ((Size >> 1) * 3));
+ }
+ }
+
+ this->m_progress += this->m_outputFps;
+ this->m_iFrameNumber++;
bail:
- SAFE_DELETE_ARRAY( pData );
- SAFE_RELEASE(pSample);
+ SAFE_DELETE_ARRAY( pData );
+ SAFE_RELEASE(pSample);
- return ret;
+ return ret;
}
HRESULT DSSampleGrabber::CheckInputType(const CMediaType* mtIn)
-{
- VIDEOINFO *video;
- if ( !IsEqualGUID( *mtIn->Subtype(), MEDIASUBTYPE_RGB565 ) || !(video=(VIDEOINFO *)mtIn->Format()) ) {
- return E_FAIL;
- }
+{
+ VIDEOINFO *video;
+ if ( !IsEqualGUID( *mtIn->Subtype(), MEDIASUBTYPE_RGB565 ) || !(video=(VIDEOINFO *)mtIn->Format()) ) {
+ return E_FAIL;
+ }
- return S_OK;
+ return S_OK;
}
-STDMETHODIMP DSSampleGrabber::SetCallback( DSISampleGrabberCB* callback_ )
+STDMETHODIMP DSSampleGrabber::SetCallback( DSISampleGrabberCB* callback_ )
{
- if (!callback_) {
- return E_FAIL;
- }
+ if (!callback_) {
+ return E_FAIL;
+ }
- this->callback = callback_;
- return S_OK;
+ this->callback = callback_;
+ return S_OK;
}
HRESULT DSSampleGrabber::SetSize(int width, int height)
{
- ZeroMemory(&this->mt, sizeof(CMediaType));
-
- VIDEOINFO *pvi = (VIDEOINFO *)this->mt.AllocFormatBuffer(sizeof(VIDEOINFO));
- if (NULL == pvi)
- {
- return E_OUTOFMEMORY;
- }
-
- ZeroMemory(pvi, sizeof(VIDEOINFO));
-
- pvi->bmiHeader.biCompression = BI_RGB;
- pvi->bmiHeader.biBitCount = 24;
- pvi->bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
- pvi->bmiHeader.biWidth = width;
- pvi->bmiHeader.biHeight = height;
- pvi->bmiHeader.biPlanes = 1;
- pvi->bmiHeader.biSizeImage = GetBitmapSize(&pvi->bmiHeader);
- pvi->bmiHeader.biClrImportant = 0;
-
- // Frame rate
- pvi->AvgTimePerFrame = 10000000/this->m_outputFps;
-
- SetRectEmpty(&(pvi->rcSource)); // we want the whole image area rendered.
- SetRectEmpty(&(pvi->rcTarget)); // no particular destination rectangle
-
- this->mt.SetType(&MEDIATYPE_Video);
- this->mt.SetFormatType(&FORMAT_VideoInfo);
- this->mt.SetTemporalCompression(FALSE);
-
- this->mt.SetSubtype(&MEDIASUBTYPE_RGB24);
- this->mt.SetSampleSize(pvi->bmiHeader.biSizeImage);
-
- this->m_rgb24 = new BYTE[pvi->bmiHeader.biSizeImage];
-
- return S_OK;
+ ZeroMemory(&this->mt, sizeof(CMediaType));
+
+ VIDEOINFO *pvi = (VIDEOINFO *)this->mt.AllocFormatBuffer(sizeof(VIDEOINFO));
+ if (NULL == pvi) {
+ return E_OUTOFMEMORY;
+ }
+
+ ZeroMemory(pvi, sizeof(VIDEOINFO));
+
+ pvi->bmiHeader.biCompression = BI_RGB;
+ pvi->bmiHeader.biBitCount = 24;
+ pvi->bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
+ pvi->bmiHeader.biWidth = width;
+ pvi->bmiHeader.biHeight = height;
+ pvi->bmiHeader.biPlanes = 1;
+ pvi->bmiHeader.biSizeImage = GetBitmapSize(&pvi->bmiHeader);
+ pvi->bmiHeader.biClrImportant = 0;
+
+ // Frame rate
+ pvi->AvgTimePerFrame = 10000000/this->m_outputFps;
+
+ SetRectEmpty(&(pvi->rcSource)); // we want the whole image area rendered.
+ SetRectEmpty(&(pvi->rcTarget)); // no particular destination rectangle
+
+ this->mt.SetType(&MEDIATYPE_Video);
+ this->mt.SetFormatType(&FORMAT_VideoInfo);
+ this->mt.SetTemporalCompression(FALSE);
+
+ this->mt.SetSubtype(&MEDIASUBTYPE_RGB24);
+ this->mt.SetSampleSize(pvi->bmiHeader.biSizeImage);
+
+ this->m_rgb24 = new BYTE[pvi->bmiHeader.biSizeImage];
+
+ return S_OK;
}
#endif /* _WIN32_WCE */
diff --git a/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.h b/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.h
index 39ee5c6..9ae11cd 100755
--- a/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.h
+++ b/plugins/pluginDirectShow/internals/wince/DSSampleGrabber.h
@@ -1,17 +1,17 @@
/* Copyright (C) 2014-2015 Mamadou DIOP
-*
+*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
-*
+*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-*
+*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*/
@@ -32,42 +32,44 @@
class DSSampleGrabber : public CTransInPlaceFilter
{
public:
- // instantiation
- DSSampleGrabber( TCHAR *tszName, LPUNKNOWN punk, HRESULT *phr );
- ~DSSampleGrabber(void);
-
+ // instantiation
+ DSSampleGrabber( TCHAR *tszName, LPUNKNOWN punk, HRESULT *phr );
+ ~DSSampleGrabber(void);
+
public:
- HRESULT Transform(IMediaSample *pSample);
+ HRESULT Transform(IMediaSample *pSample);
HRESULT CheckInputType(const CMediaType* mtIn);
-
- HRESULT SetFps(int inputFps, int outputFps);
+
+ HRESULT SetFps(int inputFps, int outputFps);
// DECLARE_IUNKNOWN;
- STDMETHODIMP QueryInterface(REFIID riid, void **ppv) {
- return GetOwner()->QueryInterface(riid,ppv);
- };
- STDMETHODIMP_(ULONG) AddRef() {
- return InterlockedIncrement(&m_cRef);
- };
+ STDMETHODIMP QueryInterface(REFIID riid, void **ppv) {
+ return GetOwner()->QueryInterface(riid,ppv);
+ };
+ STDMETHODIMP_(ULONG) AddRef() {
+ return InterlockedIncrement(&m_cRef);
+ };
STDMETHODIMP_(ULONG) Release() {
- return GetOwner()->Release();
+ return GetOwner()->Release();
};
- STDMETHODIMP SetCallback(DSISampleGrabberCB* callback_);
- HRESULT SetSize(int width, int height);
+ STDMETHODIMP SetCallback(DSISampleGrabberCB* callback_);
+ HRESULT SetSize(int width, int height);
- inline AM_MEDIA_TYPE GetMediaType() { return (AM_MEDIA_TYPE)this->mt; }
+ inline AM_MEDIA_TYPE GetMediaType() {
+ return (AM_MEDIA_TYPE)this->mt;
+ }
private:
- int m_progress;
- int m_inputFps, m_outputFps;
- bool m_bProcessFrame;
- REFERENCE_TIME m_rtFrameLength; // UNITS/fps
- LONGLONG m_iFrameNumber;
+ int m_progress;
+ int m_inputFps, m_outputFps;
+ bool m_bProcessFrame;
+ REFERENCE_TIME m_rtFrameLength; // UNITS/fps
+ LONGLONG m_iFrameNumber;
- DSISampleGrabberCB* callback;
- CMediaType mt;
- BYTE *m_rgb24;
+ DSISampleGrabberCB* callback;
+ CMediaType mt;
+ BYTE *m_rgb24;
};
#endif /* _WIN32_WCE */
diff --git a/plugins/pluginDirectShow/internals/wince/DSSampleGrabberUtils.h b/plugins/pluginDirectShow/internals/wince/DSSampleGrabberUtils.h
index 01e1728..e22be83 100755
--- a/plugins/pluginDirectShow/internals/wince/DSSampleGrabberUtils.h
+++ b/plugins/pluginDirectShow/internals/wince/DSSampleGrabberUtils.h
@@ -1,17 +1,17 @@
/* Copyright (C) 2014-2015 Mamadou DIOP
-*
+*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
-*
+*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-*
+*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*/
@@ -25,14 +25,16 @@ typedef void (CALLBACK *MANAGEDCALLBACKPROC)(BYTE* pdata, long len);
// ISampleGrabber interface definition
// {04951BFF-696A-4ade-828D-42A5F1EDB631}
-DEFINE_GUID(IID_ISampleGrabber,
- 0x4951bff, 0x696a, 0x4ade, 0x82, 0x8d, 0x42, 0xa5, 0xf1, 0xed, 0xb6, 0x31);
+DEFINE_GUID(IID_ISampleGrabber,
+ 0x4951bff, 0x696a, 0x4ade, 0x82, 0x8d, 0x42, 0xa5, 0xf1, 0xed, 0xb6, 0x31);
-DECLARE_INTERFACE_(ISampleGrabber, IUnknown) {
- STDMETHOD(SetCallback)(MANAGEDCALLBACKPROC callback) PURE;};
+DECLARE_INTERFACE_(ISampleGrabber, IUnknown)
+{
+ STDMETHOD(SetCallback)(MANAGEDCALLBACKPROC callback) PURE;
+};
- // {D11DFE19-8864-4a60-B26C-552F9AA472E1}
+// {D11DFE19-8864-4a60-B26C-552F9AA472E1}
DEFINE_GUID(CLSID_NullRenderer,
- 0xd11dfe19, 0x8864, 0x4a60, 0xb2, 0x6c, 0x55, 0x2f, 0x9a, 0xa4, 0x72, 0xe1);
+ 0xd11dfe19, 0x8864, 0x4a60, 0xb2, 0x6c, 0x55, 0x2f, 0x9a, 0xa4, 0x72, 0xe1);
#endif /* _WIN32_WCE */
OpenPOWER on IntegriCloud