From 530fd15e66a2c89c0dcd6edd1b2a318958c349a4 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Tue, 15 Nov 2022 13:25:58 +1100 Subject: WIP audio play and pause --- src/drivers/include/playback.hpp | 67 ---------------------------------------- 1 file changed, 67 deletions(-) delete mode 100644 src/drivers/include/playback.hpp (limited to 'src/drivers/include/playback.hpp') diff --git a/src/drivers/include/playback.hpp b/src/drivers/include/playback.hpp deleted file mode 100644 index 5fa7ab38..00000000 --- a/src/drivers/include/playback.hpp +++ /dev/null @@ -1,67 +0,0 @@ -#pragma once - -#include "dac.hpp" -#include "storage.hpp" - -#include -#include -#include - -#include "audio_common.h" -#include "audio_element.h" -#include "audio_event_iface.h" -#include "audio_pipeline.h" -#include "esp_err.h" -#include "fatfs_stream.h" -#include "i2s_stream.h" -#include "mp3_decoder.h" -#include "result.hpp" - -namespace drivers { - -class DacAudioPlayback { - public: - enum Error { PIPELINE_INIT }; - static auto create(AudioDac* dac) - -> cpp::result, Error>; - - DacAudioPlayback(AudioDac* dac, - audio_pipeline_handle_t pipeline, - audio_element_handle_t fatfs_stream_reader, - audio_element_handle_t i2s_stream_writer, - audio_event_iface_handle_t event_interface, - audio_element_handle_t mp3_decoder); - ~DacAudioPlayback(); - - void Play(const std::string& filename); - void Resume(); - void Pause(); - - void ProcessEvents(); - - /* for gapless */ - void set_next_file(const std::string& filename); - - void set_volume(uint8_t volume); - auto volume() -> uint8_t; - - // Not copyable or movable. - DacAudioPlayback(const DacAudioPlayback&) = delete; - DacAudioPlayback& operator=(const DacAudioPlayback&) = delete; - - private: - AudioDac* dac_; - std::mutex playback_lock_; - - std::string next_filename_; - uint8_t volume_; - - audio_pipeline_handle_t pipeline_; - audio_element_handle_t fatfs_stream_reader_; - audio_element_handle_t i2s_stream_writer_; - audio_event_iface_handle_t event_interface_; - - audio_element_handle_t mp3_decoder_; -}; - -} // namespace drivers -- cgit v1.2.3