3 #ifdef USE_ESP32_FRAMEWORK_ARDUINO 10 static const char *
const TAG =
"audio";
16 if (this->
audio_->isRunning()) {
36 if (!this->
audio_->isRunning())
37 this->
audio_->pauseResume();
41 if (this->
audio_->isRunning())
42 this->
audio_->pauseResume();
55 this->
audio_->pauseResume();
56 if (this->
audio_->isRunning()) {
63 float new_volume = this->
volume + 0.1f;
64 if (new_volume > 1.0f)
71 float new_volume = this->
volume - 0.1f;
72 if (new_volume < 0.0f)
100 if (this->
audio_ !=
nullptr)
101 this->
audio_->setVolume(remap<uint8_t, float>(volume, 0.0f, 1.0f, 0, 21));
107 ESP_LOGCONFIG(TAG,
"Setting up Audio...");
136 if (!this->
parent_->try_lock()) {
140 #if SOC_I2S_SUPPORTS_DAC 145 this->
audio_ = make_unique<Audio>(
false, 3, this->
parent_->get_port());
147 i2s_pin_config_t pin_config = this->
parent_->get_pin_config();
148 pin_config.data_out_num = this->
dout_pin_;
149 i2s_set_pin(this->
parent_->get_port(), &pin_config);
157 #if SOC_I2S_SUPPORTS_DAC 163 this->
audio_->setVolume(remap<uint8_t, float>(this->
volume, 0.0f, 1.0f, 0, 21));
181 if (this->
audio_->isRunning()) {
198 traits.set_supports_pause(
true);
203 ESP_LOGCONFIG(TAG,
"Audio:");
205 ESP_LOGCONFIG(TAG,
"Audio failed to initialize!");
208 #if SOC_I2S_SUPPORTS_DAC 211 case I2S_DAC_CHANNEL_LEFT_EN:
212 ESP_LOGCONFIG(TAG,
" Internal DAC mode: Left");
214 case I2S_DAC_CHANNEL_RIGHT_EN:
215 ESP_LOGCONFIG(TAG,
" Internal DAC mode: Right");
217 case I2S_DAC_CHANNEL_BOTH_EN:
218 ESP_LOGCONFIG(TAG,
" Internal DAC mode: Left & Right");
226 ESP_LOGCONFIG(TAG,
" I2S DOUT Pin: %d", this->
dout_pin_);
228 #if SOC_I2S_SUPPORTS_DAC 236 #endif // USE_ESP32_FRAMEWORK_ARDUINO virtual void digital_write(bool value)=0
value_type const & value() const
I2SAudioComponent * parent_
void start()
Start running the loop continuously.
void stop()
Stop running the loop continuously.
This is a workaround until we can figure out a way to get the tflite-micro idf component code availab...