ESPHome
2024.4.2
esphome
esphome
components
speaker
speaker.h
Go to the documentation of this file.
1
#pragma once
2
3
namespace
esphome
{
4
namespace
speaker {
5
6
enum
State
: uint8_t {
7
STATE_STOPPED
= 0,
8
STATE_STARTING
,
9
STATE_RUNNING
,
10
STATE_STOPPING
,
11
};
12
13
class
Speaker
{
14
public
:
15
virtual
size_t
play
(
const
uint8_t *data,
size_t
length
) = 0;
16
size_t
play
(
const
std::vector<uint8_t> &data) {
return
this->
play
(data.data(), data.size()); }
17
18
virtual
void
start
() = 0;
19
virtual
void
stop
() = 0;
20
21
virtual
bool
has_buffered_data
()
const
= 0;
22
23
bool
is_running
()
const
{
return
this->
state_
==
STATE_RUNNING
; }
24
25
protected
:
26
State
state_
{
STATE_STOPPED
};
27
};
28
29
}
// namespace speaker
30
}
// namespace esphome
esphome::speaker::Speaker::play
virtual size_t play(const uint8_t *data, size_t length)=0
esphome::speaker::Speaker::is_running
bool is_running() const
Definition:
speaker.h:23
esphome::speaker::Speaker::state_
State state_
Definition:
speaker.h:26
esphome::speaker::STATE_STOPPED
Definition:
speaker.h:7
esphome::speaker::Speaker
Definition:
speaker.h:13
esphome::speaker::Speaker::has_buffered_data
virtual bool has_buffered_data() const =0
esphome::speaker::Speaker::play
size_t play(const std::vector< uint8_t > &data)
Definition:
speaker.h:16
esphome::speaker::State
State
Definition:
speaker.h:6
esphome::speaker::STATE_STARTING
Definition:
speaker.h:8
esphome::speaker::STATE_STOPPING
Definition:
speaker.h:10
esphome::speaker::Speaker::start
virtual void start()=0
length
uint16_t length
Definition:
tt21100.cpp:12
esphome
This is a workaround until we can figure out a way to get the tflite-micro idf component code availab...
Definition:
a01nyub.cpp:7
esphome::speaker::STATE_RUNNING
Definition:
speaker.h:9
esphome::speaker::Speaker::stop
virtual void stop()=0
Generated by
1.8.13