From d9c19e744ecdbb551de37f2cc04a1c07e550d789 Mon Sep 17 00:00:00 2001 From: Karl Osterseher Date: Wed, 28 Dec 2022 18:04:57 +0100 Subject: [PATCH] - repair DSP processor in flac_task() - rename and correct typos in Kconfig file Signed-off-by: Karl Osterseher --- components/dsp_processor/Kconfig.projbuild | 4 ++-- main/main.c | 24 +++++++++++++--------- sdkconfig | 4 ++-- sdkconfig.old | 19 ++++++++++------- 4 files changed, 30 insertions(+), 21 deletions(-) diff --git a/components/dsp_processor/Kconfig.projbuild b/components/dsp_processor/Kconfig.projbuild index 68a66e5..dc5fef6 100644 --- a/components/dsp_processor/Kconfig.projbuild +++ b/components/dsp_processor/Kconfig.projbuild @@ -1,6 +1,6 @@ # Config file for ESP32 DSP Processor -menu "ESP32 audio buffer and I2S config" +menu "ESP32 DSP processor config" config USE_DSP_PROCESSOR bool "enable signal processing on audio data" default false @@ -25,7 +25,7 @@ menu "ESP32 audio buffer and I2S config" endchoice config USE_BIQUAD_ASM - bool "Use uptimized asm version of Biquad_f32" + bool "Use optimized asm version of Biquad_f32" default true depends on USE_DSP_PROCESSOR help diff --git a/main/main.c b/main/main.c index eb6f537..2ca00d5 100644 --- a/main/main.c +++ b/main/main.c @@ -79,14 +79,16 @@ const char *VERSION_STRING = "0.0.2"; #define HTTP_TASK_CORE_ID 1 // 1 // tskNO_AFFINITY #define OTA_TASK_PRIORITY 6 -#define OTA_TASK_CORE_ID tskNO_AFFINITY // 1 // tskNO_AFFINITY +#define OTA_TASK_CORE_ID tskNO_AFFINITY +// 1 // tskNO_AFFINITY -#define FLAC_DECODER_TASK_PRIORITY 7 // HTTP_TASK_PRIORITY -#define FLAC_DECODER_TASK_CORE_ID \ - tskNO_AFFINITY // HTTP_TASK_CORE_ID // 1 // tskNO_AFFINITY +#define FLAC_DECODER_TASK_PRIORITY 7 +#define FLAC_DECODER_TASK_CORE_ID tskNO_AFFINITY +// HTTP_TASK_CORE_ID // 1 // tskNO_AFFINITY #define FLAC_TASK_PRIORITY 8 -#define FLAC_TASK_CORE_ID tskNO_AFFINITY // 1 // tskNO_AFFINITY +#define FLAC_TASK_CORE_ID tskNO_AFFINITY +// 1 // tskNO_AFFINITY xTaskHandle t_ota_task = NULL; xTaskHandle t_http_get_task = NULL; @@ -515,13 +517,16 @@ void flac_task(void *pvParameters) { tv_t currentTimestamp; flacData_t *pFlacData = NULL; snapcastSetting_t *scSet = (snapcastSetting_t *)pvParameters; +#if SNAPCAST_USE_SOFT_VOL + int flow_drain_counter = 0; +#endif if (flacTaskQHdl != NULL) { vQueueDelete(flacTaskQHdl); flacTaskQHdl = NULL; } - flacTaskQHdl = xQueueCreate(128, sizeof(flacData_t *)); + flacTaskQHdl = xQueueCreate(8, sizeof(flacData_t *)); if (flacTaskQHdl == NULL) { ESP_LOGE(TAG, "Failed to create flac flacTaskQHdl"); return; @@ -589,19 +594,18 @@ void flac_task(void *pvParameters) { if (flow_drain_counter > 0) { flow_drain_counter--; double dynamic_vol = - ((double)scSet.volume / 100 / (20 - flow_drain_counter)); + ((double)scSet->volume / 100 / (20 - flow_drain_counter)); if (flow_drain_counter == 0) { #if SNAPCAST_USE_SOFT_VOL dynamic_vol = 0; #else dynamic_vol = 1; #endif - audio_hal_set_mute(board_handle->audio_hal, - server_settings_message.muted); + audio_hal_set_mute(board_handle->audio_hal, scSet->muted); } dsp_set_vol(dynamic_vol); } - dsp_setup_flow(500, scSet.sr, scSet.chkInFrames); + dsp_setup_flow(500, scSet->sr, scSet->chkInFrames); dsp_processor(pcmData->fragment->payload, pcmData->fragment->size, dspFlow); #endif diff --git a/sdkconfig b/sdkconfig index 28a5334..a554914 100644 --- a/sdkconfig +++ b/sdkconfig @@ -141,10 +141,10 @@ CONFIG_ESP_LYRAT_V4_3_BOARD=y # end of Audio HAL # -# ESP32 audio buffer and I2S config +# ESP32 DSP processor config # # CONFIG_USE_DSP_PROCESSOR is not set -# end of ESP32 audio buffer and I2S config +# end of ESP32 DSP processor config # # SNTP Configuration diff --git a/sdkconfig.old b/sdkconfig.old index 5a58275..874ef03 100644 --- a/sdkconfig.old +++ b/sdkconfig.old @@ -141,10 +141,15 @@ CONFIG_ESP_LYRAT_V4_3_BOARD=y # end of Audio HAL # -# ESP32 audio buffer and I2S config +# ESP32 DSP processor config # -# CONFIG_USE_DSP_PROCESSOR is not set -# end of ESP32 audio buffer and I2S config +CONFIG_USE_DSP_PROCESSOR=y +CONFIG_SNAPCLIENT_DSP_FLOW_STEREO=y +# CONFIG_SNAPCLIENT_DSP_FLOW_BASSBOOST is not set +# CONFIG_SNAPCLIENT_DSP_FLOW_BIAMP is not set +CONFIG_USE_BIQUAD_ASM=y +CONFIG_SNAPCLIENT_USE_SOFT_VOL=y +# end of ESP32 DSP processor config # # SNTP Configuration @@ -523,10 +528,10 @@ CONFIG_ESP_TIMER_IMPL_TG0_LAC=y # CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=8 CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=64 -# CONFIG_ESP32_WIFI_STATIC_TX_BUFFER is not set -CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y -CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1 -CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32 +CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y +# CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER is not set +CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=0 +CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM=8 # CONFIG_ESP32_WIFI_CSI_ENABLED is not set CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y CONFIG_ESP32_WIFI_TX_BA_WIN=32