ESPHome 2025.5.0
Loading...
Searching...
No Matches
microphone.cpp
Go to the documentation of this file.
1#include "microphone.h"
2
3namespace esphome {
4namespace microphone {
5
6void Microphone::add_data_callback(std::function<void(const std::vector<uint8_t> &)> &&data_callback) {
7 std::function<void(const std::vector<uint8_t> &)> mute_handled_callback =
8 [this, data_callback](const std::vector<uint8_t> &data) { data_callback(this->silence_audio_(data)); };
9 this->data_callbacks_.add(std::move(mute_handled_callback));
10}
11
12std::vector<uint8_t> Microphone::silence_audio_(std::vector<uint8_t> data) {
13 if (this->mute_state_) {
14 std::memset((void *) data.data(), 0, data.size());
15 }
16
17 return data;
18}
19
20} // namespace microphone
21} // namespace esphome
CallbackManager< void(const std::vector< uint8_t > &)> data_callbacks_
Definition microphone.h:43
std::vector< uint8_t > silence_audio_(std::vector< uint8_t > data)
void add_data_callback(std::function< void(const std::vector< uint8_t > &)> &&data_callback)
Definition microphone.cpp:6
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7