www.pudn.com > AudioVideoCapture.rar > CLiveCapture.h


//
// CLiveCapture.h
//

#ifndef __H_CLiveCapture__
#define __H_CLiveCapture__

#include "CMsgStation.h"
#include "GlobalDefs.h"

class CLiveCapture : public CMsgStation
{
private:
Work_Mode mMode;
BOOL mNotifying;
BOOL mVMRPreferred; // Flag to try VMR
BOOL mGrabEnabled; // Flag to use image grabber filter

// Video settings
CString mVideoDevice; // Friendly name
Device_Type mDeviceType;
long mVideoConnector; // Physical type
Signal_Resolution mResolution;

// Audio settings
CString mAudioDevice; // Friendly name
long mAudioConnector; // Index
double mAudioMixLevel;

// Output settings
Encoding_Type mEncodingType;
long mOutputWidth;
long mOutputHeight;
CString mOutputFile;
CString mGrabFolder;

public:
CLiveCapture();
~CLiveCapture();

void SetWorkMode(Work_Mode inMode);
Work_Mode GetWorkMode(void);
void SetNotifying(BOOL inEnabled);

void SetVMRPreferred(BOOL inPreferred);
BOOL IsVMRPreferred(void);

void SetImageGrab(BOOL inEnabled);
BOOL IsGrabEnabled(void);

void SetVideoDevice(const char * inDevice);
CString&amt; GetVideoDevice(void);

void SetDeviceType(Device_Type inType);
Device_Type GetDeviceType(void);

void SetAudioDevice(const char * inDevice);
CString&amt; GetAudioDevice(void);

void SetVideoConnector(long inConnector);
long GetVideoConnector(void);

void SetVideoResolution(Signal_Resolution inResolution);
Signal_Resolution GetVideoResolution();

void SetAudioConnector(long inConnector);
long GetAudioConnector(void);
BOOL IsAudioConnectorValid(void);

void SetAudioMixLevel(double inLevel);
double GetAudioMixLevel(void);

void SetEncodingType(Encoding_Type inType);
void ValidateEncodingType(void);
Encoding_Type GetEncodingType(void);

void SetImageSize(long inWidth, long inHeight);
void GetImageSize(long * outWidth, long * outHeight);

void SetOutputFile(const char * inFile);
CString&amt; GetOutputFile(void);

void SetGrabFolder(const char * inFolder);
CString&amt; GetGrabFolder(void);

protected:
void DecideDeviceType(const char * inName);
};

#endif // __H_CLiveCapture__