Sweden-Number/dlls/quartz/sample.h

49 lines
1.0 KiB
C

#ifndef WINE_DSHOW_SAMPLE_H
#define WINE_DSHOW_SAMPLE_H
/*
implements CMemMediaSample.
- At least, the following interfaces should be implemented:
IUnknown - IMediaSample - IMediaSample2
*/
typedef struct CMemMediaSample
{
ICOM_VFIELD(IMediaSample2);
/* IUnknown fields */
ULONG ref;
/* IMediaSample2 fields */
IMemAllocator* pOwner; /* not addref-ed. */
BOOL fMediaTimeIsValid;
LONGLONG llMediaTimeStart;
LONGLONG llMediaTimeEnd;
AM_SAMPLE2_PROPERTIES prop;
} CMemMediaSample;
HRESULT QUARTZ_CreateMemMediaSample(
BYTE* pbData, DWORD dwDataLength,
IMemAllocator* pOwner,
CMemMediaSample** ppSample );
void QUARTZ_DestroyMemMediaSample(
CMemMediaSample* pSample );
HRESULT QUARTZ_IMediaSample_GetProperties(
IMediaSample* pSample,
AM_SAMPLE2_PROPERTIES* pProp );
HRESULT QUARTZ_IMediaSample_SetProperties(
IMediaSample* pSample,
const AM_SAMPLE2_PROPERTIES* pProp );
HRESULT QUARTZ_IMediaSample_Copy(
IMediaSample* pDstSample,
IMediaSample* pSrcSample,
BOOL bCopyData );
#endif /* WINE_DSHOW_SAMPLE_H */