Skip to content

Design Overview

Phil Schatzmann edited this page Oct 17, 2021 · 22 revisions
  • The current code is purely dependent on the ESP-IDF framework (which is also provided by the Arduino ESP32 core). There are no other dependencies and this includes the Arduino API!
  • All state is managed with class variables and there should not be any need for any global variables.
  • The method names are using the snake_case convention.
  • The A2DP Sink and the A2DP Source are provided as C++ classes and all methods have been defined as virtual. So if you have some project specific requirements that can not be resolved by using callbacks you can easily create your own Subclass and overwrite the method that you want to change or extend and there is no need to change basic code. Perfect candidates for this are
    • get_volume_factor
    • adjust_audio_data_for_volume
    • audio_data_callback
  • If you extend the functionality please share your work with the community by submitting a pull request.
Clone this wiki locally