Settle on a convolver block size of 1024.

This commit is contained in:
Mike Brady
2026-07-20 18:26:23 +01:00
parent 081aa0ca9e
commit eb49aaabd2
+2 -7
View File
@@ -4635,10 +4635,7 @@ void *player_thread_func(void *arg) {
if (config.convolution_enabled) { if (config.convolution_enabled) {
if ( if (
// if any of these are true, we need to create a new convolver // if any of these are true, we need to create a new convolver
// (conn->convolver_is_valid == 0) ||
// temporarily disable this check...
// (current_convolver_block_size != inframe->length) ||
(current_convolver_rate != RATE_FROM_ENCODED_FORMAT(config.current_output_configuration)) || (current_convolver_rate != RATE_FROM_ENCODED_FORMAT(config.current_output_configuration)) ||
(current_convolver_channels != CHANNELS_FROM_ENCODED_FORMAT(config.current_output_configuration)) || (current_convolver_channels != CHANNELS_FROM_ENCODED_FORMAT(config.current_output_configuration)) ||
(current_convolver_maximum_length_in_seconds != (current_convolver_maximum_length_in_seconds !=
@@ -4648,7 +4645,6 @@ void *player_thread_func(void *arg) {
// look for a convolution ir file with a matching rate and channel count // look for a convolution ir file with a matching rate and channel count
convolver_is_valid = 0; // declare any current convolver as invalid convolver_is_valid = 0; // declare any current convolver as invalid
// current_convolver_block_size = inframe->length;
current_convolver_rate = RATE_FROM_ENCODED_FORMAT(config.current_output_configuration); current_convolver_rate = RATE_FROM_ENCODED_FORMAT(config.current_output_configuration);
current_convolver_channels = CHANNELS_FROM_ENCODED_FORMAT(config.current_output_configuration); current_convolver_channels = CHANNELS_FROM_ENCODED_FORMAT(config.current_output_configuration);
current_convolver_maximum_length_in_seconds = current_convolver_maximum_length_in_seconds =
@@ -4696,7 +4692,7 @@ void *player_thread_func(void *arg) {
// a convolver // a convolver
convolver_is_valid = convolver_init( convolver_is_valid = convolver_init(
convolver_file_found, current_convolver_channels, convolver_file_found, current_convolver_channels,
config.convolution_max_length_in_seconds, inframe->length); config.convolution_max_length_in_seconds, 1024); // power of 2 suggested for the block length
convolver_wait_for_all(); convolver_wait_for_all();
if ((convolver_is_valid == 0) && (convolver_error_notified == 0)) { if ((convolver_is_valid == 0) && (convolver_error_notified == 0)) {
debug(1, "can not initialise a %u/%u convolver from the \"%s\" finite impulse response file.", current_convolver_rate, debug(1, "can not initialise a %u/%u convolver from the \"%s\" finite impulse response file.", current_convolver_rate,
@@ -4737,7 +4733,6 @@ void *player_thread_func(void *arg) {
} }
} }
} }
#endif #endif
if (conn->do_loudness) { if (conn->do_loudness) {
loudness_process_blocks((float *)fbufs, inframe->length, loudness_process_blocks((float *)fbufs, inframe->length,