Skip to content

Commit cc1d375

Browse files
committed
audio_recorder: restore ability to select wake word
Commit 5d4ac31 ("audio_recorder: allow setting wake word") introduced the ability to select which wake word to use at runtime. This feature was dropped in a later commit. Restore it. Fixes: 3f6abbb ("audio_recorder: support new feature of esp-sr (break change of `audio_recorder`)")
1 parent 9853f9d commit cc1d375

File tree

1 file changed

+15
-11
lines changed

1 file changed

+15
-11
lines changed

components/audio_recorder/recorder_sr.c

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -563,21 +563,25 @@ recorder_sr_handle_t recorder_sr_create(recorder_sr_cfg_t *cfg, recorder_sr_ifac
563563
char *wn_name = NULL;
564564
char *wn_name_2 = NULL;
565565

566-
if (recorder_sr->models!=NULL) {
567-
for (int i = 0; i< recorder_sr->models->num; i++) {
568-
if (strstr(recorder_sr->models->model_name[i], ESP_WN_PREFIX) != NULL) {
569-
if (wn_name == NULL) {
570-
wn_name = recorder_sr->models->model_name[i];
571-
ESP_LOGI(TAG, "The first wakenet model: %s\n", wn_name);
572-
} else if (wn_name_2 == NULL) {
573-
wn_name_2 = recorder_sr->models->model_name[i];
574-
ESP_LOGI(TAG, "The second wakenet model: %s\n", wn_name_2);
566+
if (recorder_sr->wn_wakeword == NULL) {
567+
if (recorder_sr->models!=NULL) {
568+
for (int i = 0; i< recorder_sr->models->num; i++) {
569+
if (strstr(recorder_sr->models->model_name[i], ESP_WN_PREFIX) != NULL) {
570+
if (wn_name == NULL) {
571+
wn_name = recorder_sr->models->model_name[i];
572+
ESP_LOGI(TAG, "The first wakenet model: %s\n", wn_name);
573+
} else if (wn_name_2 == NULL) {
574+
wn_name_2 = recorder_sr->models->model_name[i];
575+
ESP_LOGI(TAG, "The second wakenet model: %s\n", wn_name_2);
576+
}
575577
}
576578
}
579+
} else {
580+
ESP_LOGE(TAG, "Please enable wakenet model and select wake word by menuconfig!\n");
581+
goto _failed;
577582
}
578583
} else {
579-
ESP_LOGE(TAG, "Please enable wakenet model and select wake word by menuconfig!\n");
580-
goto _failed;
584+
wn_name = esp_srmodel_filter(recorder_sr->models, ESP_WN_PREFIX, recorder_sr->wn_wakeword);
581585
}
582586

583587
cfg->afe_cfg.wakenet_model_name = wn_name;

0 commit comments

Comments
 (0)