Files
envi-code/SourceCode/Code2026/tg_shs/shs_kerncmd/WriteAVI.h
T
2026-09-28 15:28:50 +08:00

64 lines
1.7 KiB
C++

//**********************************//
// Modified 2003 //
//**********************************//
#if !defined(AFX_WRITEAVI_H__9E875356_2D8D_4CA5_9E9B_CEBBB2011FDB__INCLUDED_)
#define AFX_WRITEAVI_H__9E875356_2D8D_4CA5_9E9B_CEBBB2011FDB__INCLUDED_
#include <vfw.h>
#define TEXT_HEIGHT 20
#define AVIIF_KEYFRAME 0x00000010L
#define BUFSIZE 260
class CAVIFile : public CObject
{
public:
CAVIFile();
CAVIFile(LPCTSTR lpszFileName, int xdim=-1, int ydim=-1, int rate=50);
virtual ~CAVIFile();
public:
virtual BOOL AddFrame(CBitmap& bmp);
virtual BOOL AddFrame(XString sBitmapFile);
virtual BOOL IsOK() const {return m_bOK;};
CString GetFName() const {return m_sFileName;};
void SetHasSaveOptionsDialog();
void Init(LPCTSTR lpszFileName, int xdim, int ydim, int rate);
BOOL Compress();
void SetHasSaveOptionsDialog(BOOL bFlag=TRUE);
BOOL HasSaveOptionsDialog();
void SetSaveOptionsParentWnd(HWND hWnd=NULL);
HWND GetSaveOptionsParentWnd();
void SetColorNum(UINT nColor=8);//ÓÃÀ´¿ØÖÆÖÊÁ¿
UINT GetColorNum();//8¡¢16¡¢24¡¢32
protected:
BOOL LoadBMPImage(const TCHAR *filename,CBitmap& bitmap);
HANDLE MakeDib(HBITMAP hbitmap,UINT bits);
protected:
CString m_sFileName;
int m_nColorNum;
int m_nRate;
int m_nXDim;
int m_nYDim;
int m_nFrame;
BOOL m_bOK;
BOOL m_bHasSaveOptionsDialog;
HWND m_hSaveOptionsParentWnd;
private:
AVISTREAMINFO m_strhdr;
PAVIFILE m_pfile;
PAVISTREAM m_ps;
PAVISTREAM m_psCompressed;
PAVISTREAM m_psText;
DWORD m_dwTextFormat;
char m_szText[BUFSIZE];
AVICOMPRESSOPTIONS m_opts;
AVICOMPRESSOPTIONS FAR * m_pOpts[1];
};
#endif // !defined(AFX_WRITEAVI_H__9E875356_2D8D_4CA5_9E9B_CEBBB2011FDB__INCLUDED_)