diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-08-15 13:53:30 +1000 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-08-15 13:53:30 +1000 |
| commit | d6b83fcf4a1a3039c06e0b1d1a1f7e2af2351efb (patch) | |
| tree | 03c6a534931736a2755aacef86e271ecc5b8e87c /src/audio/i2s_audio_output.cpp | |
| parent | 205e3053506191fab69d01e7523e733dccc09d77 (diff) | |
| download | tangara-fw-d6b83fcf4a1a3039c06e0b1d1a1f7e2af2351efb.tar.gz | |
Flesh out basic bluetooth support
No ui yet, and performance isn't great. It kinda works though!!
Diffstat (limited to 'src/audio/i2s_audio_output.cpp')
| -rw-r--r-- | src/audio/i2s_audio_output.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/audio/i2s_audio_output.cpp b/src/audio/i2s_audio_output.cpp index b7fcf104..8b7d130f 100644 --- a/src/audio/i2s_audio_output.cpp +++ b/src/audio/i2s_audio_output.cpp @@ -14,7 +14,9 @@ #include <memory> #include <variant> +#include "audio_sink.hpp" #include "esp_err.h" +#include "esp_heap_caps.h" #include "freertos/portmacro.h" #include "audio_element.hpp" @@ -41,9 +43,12 @@ static constexpr uint16_t kMaxVolumeBeforeClipping = 0x185; static constexpr uint16_t kLineLevelVolume = 0x13d; static constexpr uint16_t kDefaultVolume = 0x128; +static constexpr size_t kDrainBufferSize = 8 * 1024; + I2SAudioOutput::I2SAudioOutput(drivers::IGpios* expander, std::weak_ptr<drivers::I2SDac> dac) - : expander_(expander), + : IAudioSink(kDrainBufferSize, MALLOC_CAP_INTERNAL | MALLOC_CAP_8BIT), + expander_(expander), dac_(dac.lock()), current_config_(), left_difference_(0), |
