Skip to content

GetVideoCompressionSettings

method

Delphi
function GetVideoCompressionSettings (var DataRate: OleVariant; var KeyFrameRate: OleVariant; var PFramesPerKeyFrame: OleVariant; var WindowSize: OleVariant; var Quality: OleVariant; var CanQuality: OleVariant; var CanCrunch: OleVariant; var CanKeyFrame: OleVariant; var CanBFrame: OleVariant; var CanWindow: OleVariant): Boolean;
C++Builder
bool __fastcall GetVideoCompressionSettings(/* out */ System::LongInt &DataRate, /* out */ System::LongInt &KeyFrameRate, /* out */ System::LongInt &PFramesPerKeyFrame, /* out */ System::LongInt &WindowSize, /* out */ double &Quality, /* out */ bool &CanQuality, /* out */ bool &CanCrunch, /* out */ bool &CanKeyFrame, /* out */ bool &CanBFrame, /* out */ bool &CanWindow);
C#
public bool GetVideoCompressionSettings(out int DataRate, out int KeyFrameRate, out int PFramesPerKeyFrame, out int WindowSize, out double Quality, out bool CanQuality, out bool CanCrunch, out bool CanKeyFrame, out bool CanBFrame, out bool CanWindow);
VB.NET
Public Function GetVideoCompressionSettings(ByRef DataRate As Integer, ByRef KeyFrameRate As Integer, ByRef PFramesPerKeyFrame As Integer, ByRef WindowSize As Integer, ByRef Quality As Double, ByRef CanQuality As Boolean, ByRef CanCrunch As Boolean, ByRef CanKeyFrame As Boolean, ByRef CanBFrame As Boolean, ByRef CanWindow As Boolean) As Boolean
C++/Qt
BOOL GetVideoCompressionSettings (int *DataRate, int *KeyFrameRate, int *PFramesPerKeyFrame, int *WindowSize, double *Quality, BOOL *CanQuality, BOOL *CanCrunch, BOOL *CanKeyFrame, BOOL *CanBFrame, BOOL *CanWindow);

Retrieves the video compression settings supported by some codecs. Returns true if the current video compressor supports this interface. See SetVideoCompressionSettings.

DataRate: retrieves the output data rate.

KeyFrameRate: the key-frame rate is the number of frames per key frame. For example, if the rate is 15, then a key frame occurs every 15 frames.

PFramesPerKeyFrame: P frames are used only in MPEG compression. E.g. let's say a key frame occurs once every 10 frames, and there are three P frames per key frame. The P frames will be spaced evenly between the key frames. The remaining six frames are bi-directional (B) frames.

WindowSize: retrieves the number of frames over which the compressor will maintain the average data rate. E.g. with a data rate of 100K/sec and a frame rate of 10 frames per second, if the window size is 1, then every frame will be 10K or less; if the window size is 5, then every five consecutive frames will average 10K per frame, but individual frames may exceed this size.

Quality: expressed as a value between 0.0 and 1.0, where 1.0 indicates the best quality and 0.0 indicates the worst quality. If the value is negative, the filter will use the default quality.

CanCrunch: the compressor can compress video to a specified data rate (see DataRate above).

CanKeyFrame: the compressor supports the KeyFrame property above.

CanBFrame: the compressor supports the PFramesPerKeyFrame property above.

CanWindow: the compressor supports the WindowSize property above.

CanQuality: the compressor supports the Quality property above.