#ifndef _MV_AVI_H #define _MV_AVI_H #ifdef MVGIGE_EXPORTS #define MVGIGE_API __declspec(dllexport) #else #define MVGIGE_API __declspec(dllimport) #endif #include #include #include "MVImage.h" class MVGIGE_API MVAvi { public: MVAvi(); ~MVAvi(); /*! * \brief ´´½¨AVIÎļþ * \param [in] char * strFileName ÎļþÃû * \param [in] double framesPerSecondPlayback ÊÓƵ²¥·ÅÖ¡ÂÊfps * \retval Èç¹û³É¹¦·µ»Ø0 */ HRESULT Create(char *strFileName, double framesPerSecondPlayback); /*! * \brief ÉèÖÃѹËõ²ÎÊý * \param [in] MVImage * pImage ͼÏñÖ¸Õë * \param [in] AVICOMPRESSOPTIONS * opts ѹËõ²ÎÊý¡£¿ÉÒÔΪNULL * \param [in] bool ShowDialog ÊÇ·ñÏÔʾѹËõ²ÎÊýÉèÖöԻ°¿ò * \param [in] HWND hparent Èç¹ûÏÔʾѹËõ²ÎÊýÉèÖöԻ°¿ò£¬¸ø³ö¸¸´°¿Ú¾ä±ú¡£·ñÔò¿ÉÒÔΪNULL * \retval Èç¹û³É¹¦·µ»Ø0 */ HRESULT SetVideoCompression(MVImage *pImage, AVICOMPRESSOPTIONS *opts, bool ShowDialog, HWND hparent ); /*! * \brief ÏòAVIÖÐÌí¼ÓеÄͼƬ * \param [in] MVImage * pImage ͼÏñÖ¸Õë * \retval Èç¹û³É¹¦·µ»Ø0 */ HRESULT AddFrame(MVImage *pImage); /*! * \brief ¹Ø±ÕÎļþ * \retval Èç¹û³É¹¦·µ»Ø0 */ HRESULT Close(); /*! * \brief »ñÈ¡ÒѾ­Ð´ÈëAVIÎļþµÄͼÏñÖ¡Êý * \retval ·µ»ØÒѾ­Ð´ÈëAVIÎļþµÄÖ¡Êý */ unsigned int GetCountOfAddedImages(); /*! * \brief »ñÈ¡ÒѾ­Ð´ÈëAVIÎļþµÄͼÏñ×Ö½ÚÊý¡£ * \retval ·µ»ØÒѾ­Ð´ÈëAVIÎļþµÄͼÏñ×Ö½ÚÊý¡£ */ unsigned int GetImageDataBytesWritten(); private: HANDLE m_hAvi; unsigned int m_nFrames; unsigned int m_nBytes; }; #endif