00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef HxImageSeqAVI_H
00015 #define HxImageSeqAVI_H
00016
00017 #include "HxString.h"
00018 #include "HxImageRep.h"
00019 #include "HxImageSeqData.h"
00020
00021 #define STRICT
00022 #define INC_OLE2
00023 #include <windows.h>
00024 #include <shellapi.h>
00025 #include <windowsx.h>
00026 #include <commdlg.h>
00027
00028 #include <vfw.h>
00029
00030
00031 class HxImageSeqAVI : public HxImageSeqData {
00032
00033 public:
00034 HxImageSeqAVI (HxString mpegFileName, int buff_size);
00035
00036 virtual ~HxImageSeqAVI ();
00037
00038
00039 virtual int frameWidth ();
00040
00041
00042 virtual int FrameHeight ();
00043
00044
00045 virtual int FrameDepth ();
00046
00047
00048 virtual int NumOfFrames ();
00049
00050 virtual HxImageRep Frame2HxImageRep(int);
00051
00052
00053 private:
00054
00055 PAVIFILE pfile;
00056 PAVISTREAM pAVIStream;
00057 struct IGetFrame* pGetFrameObj;
00058 long firstFrame, numFrames;
00059 int height, width, depth, size;
00060 HxSizes sizes;
00061 int* buf;
00062 bool is_good;
00063
00064 };
00065
00066 #endif