TFLACOut Properties


Most of TFLACOut-specific properties correspond directly to the settings provided by the FLAC API. The following properties descriptions are taken from FLAC API docs. It is recommended that you read this docs directly to get better understanding of the FLAC encoder management.


BestModelSearch : Boolean;

Set this property to False to let the encoder estimate the best model order based on the residual signal energy, or True to force the encoder to evaluate all order models and select the best.


BlockSize : Integer;

Set the blocksize to use while encoding. The size used for blocking the audio data has a direct effect on the compression ratio. If the block size is too small, the resulting large number of frames mean that excess bits will be wasted on frame headers. If the block size is too large, the characteristics of the signal may vary so much that the encoder will be unable to find a good predictor. In order to simplify encoder/decoder design, FLAC imposes a minimum block size of 16 samples, and a maximum block size of 65535 samples. This range covers the optimal size for all of the audio data FLAC supports.


EnableLooseMidSideStereo : Boolean;

Set to True to enable adaptive switching between mid-side and left-right encoding on stereo input. The number of channels must be 2. Set to False when unisg best model search. In either case, the EnableMidSideStereo property must be se to True.


EnableMidSideStereo : Boolean;

Set to True to enable mid-side encoding on stereo input. The number of channels must be 2. Set to False to use only independent channel coding.


MaxLPCOrder : Integer;

Set the maximum LPC order, or 0 to use only the fixed predictors.


MaxResidualPartitionOrder : Integer;

Set the maximum partition order to search when coding the residual. The partition order determines the context size in the residual. The context size will be approximately blocksize / (2 ^ order).

Set both min and max values to 0 to force a single context, whose Rice parameter is based on the residual signal variance. Otherwise, set a min and max order, and the encoder will search all orders, using the mean of each context for its Rice parameter, and use the best.


MinResidualPartitionOrder : Integer;

Set the minimum partition order to search when coding the residual. The partition order determines the context size in the residual. The context size will be approximately blocksize / (2 ^ order).

Set both min and max values to 0 to force a single context, whose Rice parameter is based on the residual signal variance. Otherwise, set a min and max order, and the encoder will search all orders, using the mean of each context for its Rice parameter, and use the best.

order).


QLPCoeffPrecision : Integer;

Set the precision, in bits, of the quantized linear predictor coefficients, or 0 to let the encoder select it based on the blocksize.
Note: In the current implementation, qlp_coeff_precision + bits_per_sample must be less than 32.


QLPCoeffPrecisionSearch : Boolean;

Set to False to use only the specified quantized linear predictor coefficient precision, or True to search neighboring precision values and use the best one.


Verify : Boolean;

Use this property to set the "verify" flag. If set to True, the encoder will verify it's own encoded output by feeding it through an internal decoder and comparing the original signal against the decoded signal. If a mismatch occurs, the exception will be generated. Note that this will slow the encoding process by the extra time required for decoding and comparison.


TLACOut ACS Classes Home


Copyright © 2002, 2003 Andrei Borovsky. All rights reserved.