summaryrefslogtreecommitdiffstats
path: root/loader/dshow
diff options
context:
space:
mode:
Diffstat (limited to 'loader/dshow')
-rw-r--r--loader/dshow/DS_AudioDecoder.c16
-rw-r--r--loader/dshow/DS_Filter.c8
-rw-r--r--loader/dshow/DS_VideoDecoder.c62
-rw-r--r--loader/dshow/allocator.c2
-rw-r--r--loader/dshow/cmediasample.c14
-rw-r--r--loader/dshow/inputpin.c22
-rw-r--r--loader/dshow/libwin32.h6
-rw-r--r--loader/dshow/mediatype.c6
-rw-r--r--loader/dshow/mediatype.h6
-rw-r--r--loader/dshow/outputpin.c18
10 files changed, 78 insertions, 82 deletions
diff --git a/loader/dshow/DS_AudioDecoder.c b/loader/dshow/DS_AudioDecoder.c
index 645c8b517b..b18b646160 100644
--- a/loader/dshow/DS_AudioDecoder.c
+++ b/loader/dshow/DS_AudioDecoder.c
@@ -11,7 +11,7 @@
#include "DS_Filter.h"
struct DS_AudioDecoder
-{
+{
WAVEFORMATEX in_fmt;
AM_MEDIA_TYPE m_sOurType, m_sDestType;
DS_Filter* m_pDS_Filter;
@@ -44,22 +44,22 @@ DS_AudioDecoder * DS_AudioDecoder_Open(char* dllname, GUID* guid, WAVEFORMATEX*
Setup_LDT_Keeper();
Setup_FS_Segment();
#endif
-
+
this = malloc(sizeof(DS_AudioDecoder));
-
+
sz = 18 + wf->cbSize;
this->m_sVhdr = malloc(sz);
memcpy(this->m_sVhdr, wf, sz);
this->m_sVhdr2 = malloc(18);
memcpy(this->m_sVhdr2, this->m_sVhdr, 18);
-
+
pWF = (WAVEFORMATEX*)this->m_sVhdr2;
pWF->wFormatTag = 1;
pWF->wBitsPerSample = 16;
pWF->nBlockAlign = pWF->nChannels * (pWF->wBitsPerSample + 7) / 8;
pWF->cbSize = 0;
pWF->nAvgBytesPerSec = pWF->nBlockAlign * pWF->nSamplesPerSec;
-
+
memcpy(&this->in_fmt,wf,sizeof(WAVEFORMATEX));
memset(&this->m_sOurType, 0, sizeof(this->m_sOurType));
@@ -100,7 +100,7 @@ DS_AudioDecoder * DS_AudioDecoder_Open(char* dllname, GUID* guid, WAVEFORMATEX*
free(this);
return NULL;
}
-
+
//Commit should be done before binary codec start
this->m_pDS_Filter->m_pAll->vt->Commit(this->m_pDS_Filter->m_pAll);
@@ -134,7 +134,7 @@ int DS_AudioDecoder_Convert(DS_AudioDecoder *this, const void* in_data, unsigned
{
unsigned int written = 0;
unsigned int read = 0;
-
+
if (!in_data || !out_data)
return -1;
@@ -185,7 +185,7 @@ int DS_AudioDecoder_GetSrcSize(DS_AudioDecoder *this, int dest_size)
double efficiency =(double) this->in_fmt.nAvgBytesPerSec
/ (this->in_fmt.nSamplesPerSec*this->in_fmt.nBlockAlign);
int frames = (int)(dest_size*efficiency);
-
+
if (frames < 1)
frames = 1;
return frames * this->in_fmt.nBlockAlign;
diff --git a/loader/dshow/DS_Filter.c b/loader/dshow/DS_Filter.c
index 11dd11dee9..5fb1ec73dc 100644
--- a/loader/dshow/DS_Filter.c
+++ b/loader/dshow/DS_Filter.c
@@ -26,8 +26,8 @@ const GUID IID_IClassFactory =
{0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}
};
-HRESULT STDCALL CoInitialize(LPVOID pvReserved);
-void STDCALL CoUninitialize(void);
+HRESULT STDCALL CoInitialize(LPVOID pvReserved);
+void STDCALL CoUninitialize(void);
#endif
static void DS_Filter_Start(DS_Filter* This)
@@ -137,9 +137,9 @@ DS_Filter* DS_FilterCreate(const char* dllname, const GUID* id,
#endif
/*
- tempAll is not used anywhere.
+ tempAll is not used anywhere.
MemAllocatorCreate() is called to ensure that RegisterComObject for IMemoryAllocator
- will be called before possible call
+ will be called before possible call
to CoCreateInstance(...,&IID_IMemoryAllocator,...) from binary codec.
*/
tempAll=MemAllocatorCreate();
diff --git a/loader/dshow/DS_VideoDecoder.c b/loader/dshow/DS_VideoDecoder.c
index a10436e325..e691bb5dc5 100644
--- a/loader/dshow/DS_VideoDecoder.c
+++ b/loader/dshow/DS_VideoDecoder.c
@@ -14,7 +14,7 @@
struct DS_VideoDecoder
{
IVideoDecoder iv;
-
+
DS_Filter* m_pDS_Filter;
AM_MEDIA_TYPE m_sOurType, m_sDestType;
VIDEOINFOHEADER* m_sVhdr;
@@ -53,7 +53,7 @@ static SampleProcUserData sampleProcData;
int DS_VideoDecoder_GetCapabilities(DS_VideoDecoder *this)
{return this->m_Caps;}
-
+
typedef struct ct ct;
struct ct {
@@ -62,7 +62,7 @@ struct ct {
const GUID *subtype;
int cap;
};
-
+
static ct check[] = {
{16, fccYUY2, &MEDIASUBTYPE_YUY2, CAP_YUY2},
{12, fccIYUV, &MEDIASUBTYPE_IYUV, CAP_IYUV},
@@ -81,10 +81,10 @@ DS_VideoDecoder * DS_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEAD
DS_VideoDecoder *this;
HRESULT result;
ct* c;
-
+
this = malloc(sizeof(DS_VideoDecoder));
memset( this, 0, sizeof(DS_VideoDecoder));
-
+
this->m_sVhdr2 = 0;
this->m_iLastQuality = -1;
this->m_iMaxAuto = maxauto;
@@ -98,10 +98,10 @@ DS_VideoDecoder * DS_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEAD
/*try*/
{
unsigned int bihs;
-
+
bihs = (format->biSize < (int) sizeof(BITMAPINFOHEADER)) ?
sizeof(BITMAPINFOHEADER) : format->biSize;
-
+
this->iv.m_bh = malloc(bihs);
memcpy(this->iv.m_bh, format, bihs);
this->iv.m_bh->biSize = bihs;
@@ -113,7 +113,7 @@ DS_VideoDecoder * DS_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEAD
this->iv.m_iPlaypos = -1;
this->iv.m_fQuality = 0.0f;
this->iv.m_bCapable16b = true;
-
+
bihs += sizeof(VIDEOINFOHEADER) - sizeof(BITMAPINFOHEADER);
this->m_sVhdr = malloc(bihs);
memset(this->m_sVhdr, 0, bihs);
@@ -153,7 +153,7 @@ DS_VideoDecoder * DS_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEAD
this->m_sDestType.pUnk = 0;
this->m_sDestType.cbFormat = sizeof(VIDEOINFOHEADER);
this->m_sDestType.pbFormat = (char*)this->m_sVhdr2;
-
+
memset(&this->iv.m_obh, 0, sizeof(this->iv.m_obh));
memcpy(&this->iv.m_obh, this->iv.m_bh, sizeof(this->iv.m_obh) < (unsigned) this->iv.m_bh->biSize
? sizeof(this->iv.m_obh) : (unsigned) this->iv.m_bh->biSize);
@@ -166,7 +166,7 @@ DS_VideoDecoder * DS_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEAD
this->m_pDS_Filter = DS_FilterCreate(dllname, guid, &this->m_sOurType, &this->m_sDestType,&sampleProcData);
-
+
if (!this->m_pDS_Filter)
{
printf("Failed to create DirectShow filter\n");
@@ -207,7 +207,7 @@ DS_VideoDecoder * DS_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEAD
break;
#endif
default:
-
+
this->m_Caps = CAP_NONE;
printf("Decoder supports the following YUV formats: ");
@@ -269,7 +269,7 @@ void DS_VideoDecoder_StartInternal(DS_VideoDecoder *this)
//cout << "DSSTART" << endl;
this->m_pDS_Filter->m_pAll->vt->Commit(this->m_pDS_Filter->m_pAll);
this->m_pDS_Filter->Start(this->m_pDS_Filter);
-
+
this->iv.m_State = START;
}
@@ -284,17 +284,17 @@ int DS_VideoDecoder_DecodeInternal(DS_VideoDecoder *this, const void* src, int s
IMediaSample* sample = 0;
char* ptr;
int result;
-
+
Debug printf("DS_VideoDecoder_DecodeInternal(%p,%p,%d,%d,%p)\n",this,src,size,is_keyframe,pImage);
-
+
this->m_pDS_Filter->m_pAll->vt->GetBuffer(this->m_pDS_Filter->m_pAll, &sample, 0, 0, 0);
-
+
if (!sample)
{
Debug printf("ERROR: null sample\n");
return -1;
}
-
+
//cout << "DECODE " << (void*) pImage << " d: " << (void*) pImage->Data() << endl;
@@ -409,14 +409,14 @@ int DS_VideoDecoder_SetDestFmt(DS_VideoDecoder *this, int bits, unsigned int csp
ALLOCATOR_PROPERTIES props,props1;
int should_test=1;
int stopped = 0;
-
+
Debug printf("DS_VideoDecoder_SetDestFmt (%p, %d, %d)\n",this,bits,(int)csp);
-
+
/* if (!CImage::Supported(csp, bits))
return -1;
*/
// BitmapInfo temp = m_obh;
-
+
if (!csp) // RGB
{
int ok = true;
@@ -450,7 +450,7 @@ int DS_VideoDecoder_SetDestFmt(DS_VideoDecoder *this, int bits, unsigned int csp
this->iv.m_obh.biCompression=3;//BI_BITFIELDS
this->iv.m_obh.biSizeImage=abs((int)(2*this->iv.m_obh.biWidth*this->iv.m_obh.biHeight));
}
-
+
if( bits == 16 ) {
this->iv.m_obh.colors[0]=0xF800;
this->iv.m_obh.colors[1]=0x07E0;
@@ -628,7 +628,7 @@ int DS_VideoDecoder_SetDestFmt(DS_VideoDecoder *this, int bits, unsigned int csp
if (stopped)
{
DS_VideoDecoder_StartInternal(this);
- this->iv.m_State = START;
+ this->iv.m_State = START;
}
return 0;
@@ -814,7 +814,7 @@ int DS_VideoDecoder_SetValue(DS_VideoDecoder *this, const char* name, int value)
}
return 0;
}
-#if 0
+#if 0
if (strcmp((const char*)record.dll, "ir50_32.dll") == 0)
{
IHidden2* hidden = 0;
@@ -872,23 +872,23 @@ int DS_SetAttr_DivX(char* attribute, int value){
{
printf("VideoDecoder::SetExtAttr: registry failure\n");
return -1;
- }
+ }
result=RegSetValueExA(newkey, "Current Post Process Mode", 0, REG_DWORD, &value, 4);
if(result!=0)
{
printf("VideoDecoder::SetExtAttr: error writing value\n");
return -1;
- }
+ }
value=-1;
result=RegSetValueExA(newkey, "Force Post Process Mode", 0, REG_DWORD, &value, 4);
if(result!=0)
{
printf("VideoDecoder::SetExtAttr: error writing value\n");
return -1;
- }
+ }
RegCloseKey(newkey);
return 0;
- }
+ }
if(
(strcasecmp(attribute, "Saturation")==0) ||
@@ -903,21 +903,17 @@ int DS_SetAttr_DivX(char* attribute, int value){
{
printf("VideoDecoder::SetExtAttr: registry failure\n");
return -1;
- }
+ }
result=RegSetValueExA(newkey, attribute, 0, REG_DWORD, &value, 4);
if(result!=0)
{
printf("VideoDecoder::SetExtAttr: error writing value\n");
return -1;
- }
+ }
RegCloseKey(newkey);
return 0;
- }
+ }
printf("Unknown attribute!\n");
return -200;
}
-
-
-
-
diff --git a/loader/dshow/allocator.c b/loader/dshow/allocator.c
index 4323e4a176..3e0deabceb 100644
--- a/loader/dshow/allocator.c
+++ b/loader/dshow/allocator.c
@@ -147,7 +147,7 @@ static HRESULT STDCALL MemAllocator_SetProperties(IMemAllocator * This,
*pActual = *pRequest;
/*
DirectShow DOCS ("Negotiating Allocators" chapter) says that allocator might not
- honor the requested properties. Thus, since WMSP audio codecs requests bufer with two
+ honor the requested properties. Thus, since WMSP audio codecs requests bufer with two
bytes length for unknown reason, we should correct requested value. Otherwise above
codec don't want to load.
*/
diff --git a/loader/dshow/cmediasample.c b/loader/dshow/cmediasample.c
index 0c7c25d119..98a864b3be 100644
--- a/loader/dshow/cmediasample.c
+++ b/loader/dshow/cmediasample.c
@@ -119,7 +119,7 @@ static long STDCALL CMediaSample_Release(IUnknown* This)
* \param[out] address of variable that receives pointer to sample's buffer
*
* \return S_OK success
- * \return apropriate error otherwise
+ * \return apropriate error otherwise
*
* \note The calles should not free or reallocate buffer
*
@@ -157,7 +157,7 @@ static long STDCALL CMediaSample_GetSize(IMediaSample * This)
*
* \return S_OK success
* \return VFW_E_NO_STOP_TIME The sample has valid start time, but no stop time
- * \return VFW_E_SAMPLE_TIME_NOT_SET The sample is not time-stamped
+ * \return VFW_E_SAMPLE_TIME_NOT_SET The sample is not time-stamped
*
* \remarks
* Both values are relative to stream time
@@ -334,7 +334,7 @@ static HRESULT STDCALL CMediaSample_SetActualDataLength(IMediaSample* This,
*
* \remarks
* If media type is not changed from previous sample, ppMediaType is null
- * If method returns S_OK caller should free memory allocated for structure
+ * If method returns S_OK caller should free memory allocated for structure
* including pbFormat block
*/
static HRESULT STDCALL CMediaSample_GetMediaType(IMediaSample* This,
@@ -384,7 +384,7 @@ static HRESULT STDCALL CMediaSample_SetMediaType(IMediaSample * This,
}
/**
- * \brief IMediaSample::IsDiscontinuity (determines if this sample represents data break
+ * \brief IMediaSample::IsDiscontinuity (determines if this sample represents data break
* in stream)
*
* \param[in] This pointer to CMediaSample object
@@ -392,7 +392,7 @@ static HRESULT STDCALL CMediaSample_SetMediaType(IMediaSample * This,
* \return S_OK if this sample is break in data stream
* \return S_FALSE otherwise
*
- * \remarks
+ * \remarks
* Discontinuity occures when filter seeks to different place in the stream or when drops
* samples.
*
@@ -404,7 +404,7 @@ static HRESULT STDCALL CMediaSample_IsDiscontinuity(IMediaSample * This)
}
/**
- * \brief IMediaSample::IsDiscontinuity (specifies whether this sample represents data break
+ * \brief IMediaSample::IsDiscontinuity (specifies whether this sample represents data break
* in stream)
*
* \param[in] This pointer to CMediaSample object
@@ -430,7 +430,7 @@ static HRESULT STDCALL CMediaSample_SetDiscontinuity(IMediaSample * This,
* \param[out] pTimeEnd pointer to variable that receives end time
*
* \return S_OK success
- * \return VFW_E_MEDIA_TIME_NOT_SET The sample is not time-stamped
+ * \return VFW_E_MEDIA_TIME_NOT_SET The sample is not time-stamped
*
*/
static HRESULT STDCALL CMediaSample_GetMediaTime(IMediaSample * This,
diff --git a/loader/dshow/inputpin.c b/loader/dshow/inputpin.c
index c5aa5eff47..37d9f758fa 100644
--- a/loader/dshow/inputpin.c
+++ b/loader/dshow/inputpin.c
@@ -445,9 +445,9 @@ static long STDCALL CInputPin_QueryInternalConnections(IPin* This,
* \return S_OK - success
* \return E_UNEXPECTED - The pin is output pin
*
- * \note
- * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
- * IMemAllocator::GetBuffer runs in different (streaming) thread then other
+ * \note
+ * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
+ * IMemAllocator::GetBuffer runs in different (streaming) thread then other
* methods (application thread).
* IMemoryInputPin::NewSegment runs either in streaming or application thread.
* Developer must use critical sections for thread-safing work.
@@ -602,7 +602,7 @@ static long STDCALL CBaseFilter_GetClassID(IBaseFilter * This,
*
* \remarks
* When filter is stopped it does onot deliver or process any samples and rejects any samples
- * from upstream filter.
+ * from upstream filter.
* Transition may be asynchronous. In this case method should return S_FALSE.
* Method always sets filter's state to State_Stopped even if error occured.
*
@@ -700,8 +700,8 @@ static long STDCALL CBaseFilter_SetSyncSource(IBaseFilter* This,
* \brief IMediafilter::GetSyncSource (gets current reference clock)
*
* \param[in] This pointer to IBaseFilter interface
- * \param[out] pClock address of variable that receives pointer to clock's
- * IReferenceClock interface
+ * \param[out] pClock address of variable that receives pointer to clock's
+ * IReferenceClock interface
*
* \return S_OK success
* \return E_POINTER Null pointer
@@ -790,7 +790,7 @@ static long STDCALL CBaseFilter_QueryFilterInfo(IBaseFilter* This,
*
* \remarks
* Filter should not call to graph's AddRef method.
- * The IFilterGraph is guaranteed to be valid until graph manager calls this method again with
+ * The IFilterGraph is guaranteed to be valid until graph manager calls this method again with
* the value NULL.
*
*/
@@ -943,7 +943,7 @@ static long STDCALL CBaseFilter2_GetClassID(IBaseFilter* This,
*
* \remarks
* When filter is stopped it does onot deliver or process any samples and rejects any samples
- * from upstream filter.
+ * from upstream filter.
* Transition may be asynchronous. In this case method should return S_FALSE.
* Method always sets filter's state to State_Stopped even if error occured.
*
@@ -1042,8 +1042,8 @@ static long STDCALL CBaseFilter2_SetSyncSource(IBaseFilter* This,
* \brief IMediafilter::GetSyncSource (gets current reference clock)
*
* \param[in] This pointer to IBaseFilter interface
- * \param[out] pClock address of variable that receives pointer to clock's
- * IReferenceClock interface
+ * \param[out] pClock address of variable that receives pointer to clock's
+ * IReferenceClock interface
*
* \return S_OK success
* \return E_POINTER Null pointer
@@ -1131,7 +1131,7 @@ static long STDCALL CBaseFilter2_QueryFilterInfo(IBaseFilter* This,
*
* \remarks
* Filter should not call to graph's AddRef method.
- * The IFilterGraph is guaranteed to be valid until graph manager calls this method again with
+ * The IFilterGraph is guaranteed to be valid until graph manager calls this method again with
* the value NULL.
*
*/
diff --git a/loader/dshow/libwin32.h b/loader/dshow/libwin32.h
index 509941432b..70d5e0f006 100644
--- a/loader/dshow/libwin32.h
+++ b/loader/dshow/libwin32.h
@@ -31,7 +31,7 @@ typedef struct CodecInfo
typedef struct CImage // public your_libvo_mem
{
char* ptr;
-
+
/*char* (*Data)();
{
return 0;
@@ -40,7 +40,7 @@ typedef struct CImage // public your_libvo_mem
/*int (*Supported)(fourcc_t csp, int bits);
{
return true;
- // if you support such surface
+ // if you support such surface
}*/
}CImage;
@@ -109,7 +109,7 @@ typedef struct BitmapInfo
long biYPelsPerMeter;
long biClrUsed;
long biClrImportant;
- int colors[3];
+ int colors[3];
} BitmapInfo;
typedef struct IVideoDecoder
diff --git a/loader/dshow/mediatype.c b/loader/dshow/mediatype.c
index fc37f972f3..d6597fa767 100644
--- a/loader/dshow/mediatype.c
+++ b/loader/dshow/mediatype.c
@@ -32,8 +32,8 @@ void DisplayMediaType(const char * label,const AM_MEDIA_TYPE* pmt){
VIDEOINFOHEADER* Vhdr;
int i;
GUID* iid;
-
-
+
+
Debug mp_msg(MSGT_LOADER,MSGL_DBG4,"=======================\n");
if(label){
Debug mp_msg(MSGT_LOADER,MSGL_DBG4,"AM_MEDIA_TYPE: %s\n",label);
@@ -103,7 +103,7 @@ HRESULT CopyMediaType(AM_MEDIA_TYPE * pDest, const AM_MEDIA_TYPE *pSrc)
if(pSrc == pDest) return E_INVALIDARG;
if(!pSrc->pbFormat && pSrc->cbFormat) return E_POINTER;
-
+
memcpy(pDest, pSrc, sizeof(AM_MEDIA_TYPE));
if (!pSrc->pbFormat) return S_OK;
if (!(pDest->pbFormat = CoTaskMemAlloc(pSrc->cbFormat)))
diff --git a/loader/dshow/mediatype.h b/loader/dshow/mediatype.h
index c58bb32e9f..ecb696ca39 100644
--- a/loader/dshow/mediatype.h
+++ b/loader/dshow/mediatype.h
@@ -8,7 +8,7 @@
#define MPLAYER_MEDIATYPE_H
#include "guids.h"
-
+
typedef struct __attribute__((__packed__)) MediaType
{
GUID majortype; //0x0
@@ -26,7 +26,7 @@ typedef struct __attribute__((__packed__)) MediaType
* \brief print info from AM_MEDIA_TYPE structure
* =param[in] label short lable for media type
* \param[in] pmt pointer to AM_MEDIA_TYPE
- *
+ *
* routine used for debug purposes
*
*/
@@ -61,7 +61,7 @@ void DeleteMediaType(AM_MEDIA_TYPE* pmt);
*
* \return S_OK - success
* \return E_POINTER - pSrc or pDst is NULL or (pSrc->cbFormat && !pSrc->pbFormat)
- * \return E_INVALIDARG - (pSrc == pDst)
+ * \return E_INVALIDARG - (pSrc == pDst)
* \return E_OUTOFMEMORY - Insufficient memory
*
* \note
diff --git a/loader/dshow/outputpin.c b/loader/dshow/outputpin.c
index 534ff13615..d876f4401f 100644
--- a/loader/dshow/outputpin.c
+++ b/loader/dshow/outputpin.c
@@ -493,9 +493,9 @@ static HRESULT STDCALL COutputPin_QueryInternalConnections(IPin * This,
* \return S_OK - success
* \return E_UNEXPECTED - The pin is output pin
*
- * \note
- * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
- * IMemAllocator::GetBuffer runs in different (streaming) thread then other
+ * \note
+ * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
+ * IMemAllocator::GetBuffer runs in different (streaming) thread then other
* methods (application thread).
* IMemoryInputPin::NewSegment runs either in streaming or application thread.
* Developer must use critical sections for thread-safing work.
@@ -697,9 +697,9 @@ static HRESULT STDCALL COutputMemPin_GetAllocatorRequirements(IMemInputPin* This
* In the last case method might block indefinitely. If this might
* happen IMemInpuPin::ReceiveCAnBlock returns S_OK
*
- * \note
- * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
- * IMemAllocator::GetBuffer runs in different (streaming) thread then other
+ * \note
+ * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
+ * IMemAllocator::GetBuffer runs in different (streaming) thread then other
* methods (application thread).
* IMemoryInputPin::NewSegment runs either in streaming or application thread.
* Developer must use critical sections for thread-safing work.
@@ -736,9 +736,9 @@ static HRESULT STDCALL COutputMemPin_Receive(IMemInputPin* This,
* \remarks
* This method behaves like IMemInputPin::Receive but for array of samples
*
- * \note
- * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
- * IMemAllocator::GetBuffer runs in different (streaming) thread then other
+ * \note
+ * IMemoryInputPin::Receive,IMemoryInputPin::ReceiveMultiple, IMemoryInputPin::EndOfStream,
+ * IMemAllocator::GetBuffer runs in different (streaming) thread then other
* methods (application thread).
* IMemoryInputPin::NewSegment runs either in streaming or application thread.
* Developer must use critical sections for thread-safing work.