01: #ifndef __INCLUDE_AVIPLAY_H__
02: #define __INCLUDE_AVIPLAY_H__
03:
04: #define ID_OPEN 1000
05: #define ID_AVI1 1001
06: #define ID_AVI2 1002
07: #define ID_SAVE 1003
08:
09: typedef struct AVI_STREAM_INFO {
10: TCHAR in_path[MAX_PATH];
11: PAVIFILE in_file;
12: PAVISTREAM in_video;
13: PGETFRAME in_frame;
14: AVISTREAMINFO info;
15: LPBITMAPINFOHEADER lpSrcFmt,lpDecFmt;
16: LPBYTE lpSrc;
17: HIC hicd;
18: LONG lLength,dwLength,SPF,biSize,v_index;
19: int codec;
20: RECT dRgn;
21: } AviInfo;
22:
23: BOOL InitApp(HINSTANCE hInst, LPCSTR szClassName);
24: BOOL InitInstance(HINSTANCE hInst,LPCSTR szClassName,
25: LPSTR lpsCmdLine,int nCmdShow);
26: LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
27: void SetWTitle(LPTSTR tstr);
28: char *getfps(void);
29: void set_window(LPBITMAPINFOHEADER bih);
30: UINT OpenFile(LPTSTR lpFname);
31: UINT SaveFile(LPTSTR lpFname);
32: UINT SaveBMP(LPCTSTR lpFname,LPBYTE lpBuf);
33: void AviInit();
34: int AviOpen();
35: int codecOpen();
36: void AviReadFrame(int vidx);
37: void AviClose();
38: void AviNext();
39: void AviView();
40: DWORD th_Proc();
41:
42:
43: #endif