Mercurial > vba-linux
view src/win32/AVIWrite.h @ 2:3549bbe597ed
adding makefile.am
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sat, 03 Mar 2012 10:31:47 -0600 |
parents | f9f4f1b99eed |
children |
line wrap: on
line source
1 #ifndef VBA_WIN32_AVIWRITE_H2 #define VBA_WIN32_AVIWRITE_H4 #if _MSC_VER > 10005 #pragma once6 #endif // _MSC_VER > 10008 #include <vfw.h>10 class AVIWrite {11 public:12 AVIWrite();13 virtual ~AVIWrite();15 bool Open(const char *filename);16 virtual bool AddFrame(const u8 *bmp);17 void SetFPS(int fps);18 void SetVideoFormat(BITMAPINFOHEADER *);19 bool IsSoundAdded();20 void SetSoundFormat(WAVEFORMATEX *);21 bool AddSound(const u8 *sound, int len);22 int videoFrames();23 void Pause(bool pause);24 bool IsPaused();26 private:27 int m_fps;28 WAVEFORMATEX m_soundFormat;29 BITMAPINFOHEADER m_bitmap;30 AVISTREAMINFO m_header;31 AVISTREAMINFO m_soundHeader;32 PAVIFILE m_file;33 PAVISTREAM m_stream;34 PAVISTREAM m_streamCompressed;35 PAVISTREAM m_streamSound;36 AVICOMPRESSOPTIONS m_options;37 AVICOMPRESSOPTIONS *m_arrayOptions[1];38 int m_videoFrames;39 int m_samplesSound;40 int m_videoFramesTotal;41 int m_samplesSoundTotal;42 LONG m_totalBytes;43 bool m_failed;44 int m_segmentNumber;45 bool m_usePrevOptions;46 bool m_pauseRecording;47 char m_aviFileName[MAX_PATH];48 char m_aviBaseName[MAX_PATH];49 char m_aviExtension[MAX_PATH];50 void CleanUp();51 bool NextSegment();52 };54 #endif // VBA_WIN32_AVIWRITE_H