Current BCL encoder settings are contained in this structure. With this structure, User can figure out current video information, video property, and audio property.
Note : Using BCapConfigPreset() function, it is possible to set BCAP_CONFIG structure easily. (refer to section 3.5)
struct BCAP_CONFIG
{
// Configuration
INT FileType; // Container type(F_AVI)
// Video configuration
INT VideoSizeW; // video width in pixel unit.
INT VideoSizeH; // video height in pixel unit.
FLOAT VideoFPS; // frames per second
DWORD VideoCodec; // Video codec(FOURCC)
INT VideoRateControl; // CBR, VBR
INT VideoKBitrate; // 10k ~ 50000k (ignored when VBR selected)
INT VideoQuality; // 30 ~ 100 (ignored when CBR selected)
INT VideoKeyframeInterval; // 0 ~ 1000 frames
// Audio configuration
INT AudioChannels; // 1: mono, 2:stereo
INT AudioSampleRate; // Sampling rate
INT AudioCodec; // Audio codec(Wave Tag)
INT AudioRateControl; // CBR, VBR
INT AudioKBitrate; // 32k ~ 320k
INT AudioQuality; // 30 ~ 100
// Logo settings
WCHAR LogoPath[MAX_PATH]; // Path of logo file(32bit png)
INT LogoAlpha; // Transparency of logo [0 ~ 100]%
INT LogoPosX; // Horizontal location of logo [0 ~ 100]%
INT LogoPosY; // Vertical location of logo [0 ~ 100]%
INT LogoSizeW; // Horizontal width of logo [0 ~ 999]%
INT LogoSizeH; // Vertical location of logo [0 ~ 999]%
// Auto-complete recording settings
INT AutoCompleteType; // How to auto-complete recording
INT AutoCompleteValue; // Auto-complete recording value (seconds or MB)
// etc
RECT CaptureRect; // Capture target rectange
BOOL IncludeCursor; // Include the mouse cursor image
BOOL AdjustAudioMixer; // Adjust audio input mixer when capture
BOOL SaveAudioTracksAsWav; // Save a audio track as a wav file.
};
Specifies video file container. Currently supports only AVI container(F_AVI)
Specifies captured video width in pixel unit. if uses 0 , the original screen size is used to encode. if uses -1 , the half of original screen size is used to encode.
Specifies captured video width in pixel unit. if uses 0 , the original screen size is used to encode. if uses -1 , the half of original screen size is used to encode.
Specifies frame rate of video. Usually 30fps is used. If small size video(320x240) 15fps is also good to encode.
Specifies video codec to encode video stream(FOURCC). Use FOURCC_MPEG, FOURCC_MJPG, FOURCC_MP4V defined in bandicap.h
Specifies which bitrate control method to choose to encode video.
Specifies video bitrate(unit of KiloBit). This value is valid when VideoRateControl value is V_CBR. If VideoRateControl is V_VBR, this value is ignored.
Specifies video compression quality. This value is valid when VideoRateControl value is V_VBR. If VideoRateControl is V_CBR, this value is ignored. the range of this value is 1 to 100, the higher value means the better quality video.
Usually, 80 is preffered value to produce normal quality video file. It may produce too large file if this value is set to 100. 95 is preffered value to produce high quality video file.
Speifies video keyframe interval. if you choose 150 as this value, every 150th frame will become keyframe.
Specifies number of audio channels. Stereo and mono channel correspond to 1 and 2 respectively.
Specifies audio sampling rate. If you want high quality audio data, choose 48K(48000) option. But if WAVETAG_PCM option is used, 24K(24000) is sufficient.
Specifies audio compression codec. Currently PCM and MP2 are available.
Specifies audio compression method. Only A_CBR is valid in this version of BCL.
Specifies audio bitrate in unit of KBit. This setting is valid only uses WAVETAG_MP2.
Specifies audio compression quality. Currently, this value is ignored. Default value is 30.
Specifies Logo file's path(32bit-PNG). If specifies Null-String("\0"), Logo is disabled.
Specifies horizontal width of Logo. (50% : half the size , 100% : original size , 200% : double size)
Specifies vertical height of Logo. (50% : half the size, 100% : original size, 200% : double size)
Specifies auto-complete recording value. (sec or MB)
Specifies capture target rectange. If you want to capture specific areas on the target screen, use it.
Specifies whether to include or not include the mouse cursor image.
Specifies whether to adjust audio input mixer when capture.
Specifies whether to save a audio track as a wav file.