[flac-dev] [PATCH] stream_encoder : Improve selection of residual accumulator width
lvqcl
lvqcl.mail at gmail.com
Thu Jun 19 07:25:57 PDT 2014
Miroslav Lichvar wrote:
>> if(bps + subframe->qlp_coeff_precision + FLAC__bitmath_ilog2(order) <= 32)
>>
>> Is it really "not pessimistic enough"? Can it be changed similarly to your patch
>> for stream_encoder.c?
>
> Good question. I'm not sure what exactly Josh meant by that comment.
> The git message says just "minor comments".
Now I wonder why evaluate_lpc_subframe_() function in stream_encoder.c contains
almost the same code, but without any comments that it's not enough pessimistic:
evaluate_lpc_subframe_():
if(subframe_bps + qlp_coeff_precision + FLAC__bitmath_ilog2(order) <= 32)
if(subframe_bps <= 16 && qlp_coeff_precision <= 16)
encoder->private_->local_lpc_compute_residual_from_qlp_coefficients_16bit(...);
else
encoder->private_->local_lpc_compute_residual_from_qlp_coefficients(...);
else
encoder->private_->local_lpc_compute_residual_from_qlp_coefficients_64bit(...);
vs. read_subframe_lpc_():
if(bps + subframe->qlp_coeff_precision + FLAC__bitmath_ilog2(order) <= 32)
if(bps <= 16 && subframe->qlp_coeff_precision <= 16)
decoder->private_->local_lpc_restore_signal_16bit(...);
else
decoder->private_->local_lpc_restore_signal(...);
else
decoder->private_->local_lpc_restore_signal_64bit(...);
More information about the flac-dev
mailing list