53 lines
1.5 KiB
C++
53 lines
1.5 KiB
C++
/*++
|
|
|
|
Copyright (c) 1995-1996 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
vidpackt.h
|
|
|
|
Abstract:
|
|
|
|
Contains prototypes for the VideoPacket class, which encapsulates a video buffer in
|
|
its various states: recorded/encoded/network/decoded/playing etc.
|
|
|
|
--*/
|
|
#ifndef _VIDPACKT_H_
|
|
#define _VIDPACKT_H_
|
|
|
|
#include <pshpack8.h> /* Assume 8 byte packing throughout */
|
|
|
|
#define VP_NUM_PREAMBLE_PACKETS 6
|
|
|
|
#define MAX_CIF_VIDEO_FRAGMENTS 40
|
|
#define MAX_QCIF_VIDEO_FRAGMENTS 20
|
|
#define MAX_VIDEO_FRAGMENTS MAX_CIF_VIDEO_FRAGMENTS
|
|
|
|
class VideoPacket : public MediaPacket
|
|
{
|
|
private:
|
|
IBitmapSurface *m_pBS;
|
|
public:
|
|
virtual HRESULT Initialize ( MEDIAPACKETINIT * p );
|
|
virtual HRESULT Play ( MMIODEST *pmmioDest, UINT uDataType );
|
|
virtual HRESULT Record ( void );
|
|
virtual HRESULT Interpolate ( MediaPacket * pPrev, MediaPacket * pNext);
|
|
virtual HRESULT GetSignalStrength ( PDWORD pdwMaxStrength );
|
|
virtual HRESULT MakeSilence ( void );
|
|
virtual HRESULT Recycle ( void );
|
|
virtual HRESULT Open ( UINT uType, DPHANDLE hdl ); // called by RxStream or TxStream
|
|
virtual HRESULT Close ( UINT uType ); // called by RxStream or TxStream
|
|
virtual BOOL IsBufferDone ( void );
|
|
virtual BOOL IsSameMediaFormat(PVOID fmt1,PVOID fmt2);
|
|
virtual DWORD GetDevDataSamples();
|
|
void WriteToFile (MMIODEST *pmmioDest);
|
|
void ReadFromFile (MMIOSRC *pmmioSrc );
|
|
HRESULT SetSurface (IBitmapSurface *pBS);
|
|
};
|
|
|
|
|
|
#include <poppack.h> /* End byte packing */
|
|
|
|
#endif
|
|
|