Mercurial > vba-linux
comparison src/win32/AVIWrite.h @ 1:f9f4f1b99eed
importing src directory
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sat, 03 Mar 2012 10:31:27 -0600 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:8ced16adf2e1 | 1:f9f4f1b99eed |
---|---|
1 #ifndef VBA_WIN32_AVIWRITE_H | |
2 #define VBA_WIN32_AVIWRITE_H | |
3 | |
4 #if _MSC_VER > 1000 | |
5 #pragma once | |
6 #endif // _MSC_VER > 1000 | |
7 | |
8 #include <vfw.h> | |
9 | |
10 class AVIWrite { | |
11 public: | |
12 AVIWrite(); | |
13 virtual ~AVIWrite(); | |
14 | |
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(); | |
25 | |
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 }; | |
53 | |
54 #endif // VBA_WIN32_AVIWRITE_H |