10#include <freertos/FreeRTOS.h>
11#include <freertos/event_groups.h>
12#include <freertos/semphr.h>
13#include <freertos/task.h>
20 void setup()
override;
21 void start()
override;
37#if SOC_I2S_SUPPORTS_ADC
54 size_t read_(uint8_t *buf,
size_t len, TickType_t ticks_to_wait);
68#if SOC_I2S_SUPPORTS_ADC
void fix_dc_offset_(std::vector< uint8_t > &data)
Attempts to correct a microphone DC offset; e.g., a microphones silent level is offset from 0.
SemaphoreHandle_t active_listeners_semaphore_
size_t read_(uint8_t *buf, size_t len, TickType_t ticks_to_wait)
TaskHandle_t task_handle_
EventGroupHandle_t event_group_
void set_correct_dc_offset(bool correct_dc_offset)
void set_din_pin(int8_t pin)
void configure_stream_settings_()
Sets the Microphone audio_stream_info_ member variable to the configured I2S settings.
void set_adc_channel(adc1_channel_t channel)
static void mic_task(void *params)
i2s_chan_handle_t rx_handle_
adc1_channel_t adc_channel_
Providing packet encoding functions for exchanging data with a remote host.