11 #include <freertos/event_groups.h> 12 #include <freertos/FreeRTOS.h> 20 void setup()
override;
23 size_t play(
const uint8_t *data,
size_t length, TickType_t ticks_to_wait)
override;
24 size_t play(
const uint8_t *data,
size_t length)
override {
return this->
play(data, length, 0); }
26 void start()
override;
void set_target_bits_per_sample(uint8_t target_bits_per_sample)
const float DATA
For components that import data from directly connected sensors like DHT.
void set_task_stack_in_psram(bool task_stack_in_psram)
void set_output_speaker(speaker::Speaker *speaker)
void set_volume(float volume) override
Volume state changes are passed to the parent's output speaker.
bool has_buffered_data() const override
uint8_t target_bits_per_sample_
void set_buffer_duration(uint32_t buffer_duration_ms)
esp_err_t start_()
Starts the output speaker after setting the resampled stream info.
bool requires_resampling_() const
bool task_stack_in_psram_
int32_t playback_differential_ms_
void stop_()
Stops the output speaker. If the resampling task is running, it sends the stop command.
StackType_t * task_stack_buffer_
virtual bool get_pause_state() const
void set_pause_state(bool pause_state) override
static void resample_task(void *params)
EventGroupHandle_t event_group_
void set_filters(uint16_t filters)
bool get_pause_state() const override
esp_err_t delete_task_()
Deallocates the task stack and resets the pointers.
void set_taps(uint16_t taps)
void set_mute_state(bool mute_state) override
Mute state changes are passed to the parent's output speaker.
uint32_t buffer_duration_ms_
size_t play(const uint8_t *data, size_t length) override
void set_target_sample_rate(uint32_t target_sample_rate)
Implementation of SPI Controller mode.
virtual void set_pause_state(bool pause_state)
audio::AudioStreamInfo target_stream_info_
uint32_t target_sample_rate_
TaskHandle_t task_handle_
esp_err_t start_task_()
Starts the resampler task after allocating the task stack.
std::weak_ptr< RingBuffer > ring_buffer_
float get_setup_priority() const override
speaker::Speaker * output_speaker_
size_t play(const uint8_t *data, size_t length, TickType_t ticks_to_wait) override