From 220e4fab27b7f419b3e89e2f2d28ae789aac09d7 Mon Sep 17 00:00:00 2001
From: wangzhibo <wangzhibo@shsening.com>
Date: 星期四, 08 十月 2026 16:29:55 +0800
Subject: [PATCH] 5种场景模式家长端ok
---
xiaozhi-esp32-2.2.6/main/audio/wake_words/afe_wake_word.h | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/xiaozhi-esp32-2.2.6/main/audio/wake_words/afe_wake_word.h b/xiaozhi-esp32-2.2.6/main/audio/wake_words/afe_wake_word.h
index 1e641ad..8c7f3d7 100644
--- a/xiaozhi-esp32-2.2.6/main/audio/wake_words/afe_wake_word.h
+++ b/xiaozhi-esp32-2.2.6/main/audio/wake_words/afe_wake_word.h
@@ -31,6 +31,10 @@
void OnOfflineCommandDetected(std::function<void(const std::string& command)> callback);
void Start();
void Stop();
+ void ReleaseRuntime() override;
+ bool EnsureRuntime() override;
+ void ClearWakeBuffers() override;
+ void AbortWakeWordEncode() override;
size_t GetFeedSize();
void EncodeWakeWordData();
bool GetWakeWordOpus(std::vector<uint8_t>& opus);
@@ -57,11 +61,18 @@
TaskHandle_t wake_word_encode_task_ = nullptr;
StaticTask_t* wake_word_encode_task_buffer_ = nullptr;
StackType_t* wake_word_encode_task_stack_ = nullptr;
+ TaskHandle_t detection_task_handle_ = nullptr;
+ StaticTask_t* detection_task_buffer_ = nullptr;
+ StackType_t* detection_task_stack_ = nullptr;
std::deque<std::vector<int16_t>> wake_word_pcm_;
std::deque<std::vector<uint8_t>> wake_word_opus_;
std::mutex wake_word_mutex_;
std::condition_variable wake_word_cv_;
+ bool detection_task_started_ = false;
+
+ bool CreateAfe();
+ bool EnsureDetectionTask();
void StoreWakeWordData(const int16_t* data, size_t size);
void AudioDetectionTask();
};
--
Gitblit v1.9.1