4 Commits

  • Sync with sample stuffing (#69)
    * upgrade to IDF v5.1.1
    * add new synchronization implementation, use sample stuffing / removal to keep up sync
    * use big DMA buffer for I2S and improve sync
    * Add DAC TAS5805M as custom board
    * add wifi credential reset
      o press reset button (nRESET pin) 3 times
        but wait about 1s between button presses
        the button press counter is reset 5s after boot
    * Add support for PT8211 DAC (#78)
    * upgrade ethernet interface to IDF v5 (#84)
    * port official example of ethernet for IDF v5.x
    * Fix cmake if guard for ethernet
    
    Signed-off-by: Karl Osterseher <karli_o@gmx.at>
    Co-authored-by: DerPicknicker <64746593+DerPicknicker@users.noreply.github.com>
    Co-authored-by: whc2001 <ianwang0122@outlook.com>
  • - add support for new DAC ADAU1961
    - increase main task stack size to prevent occasional stack overflows
    - remove bug in player component which sometimes lead to RESYNC 2 infinite loops
  • - add apll predefines for common sample rates
    - add apll clock speed increase/decrease depending on chunk age
    - improve task priority and core assignment
    - add quick sort for int64_t arrays
    - sync playback using hardware timer
    - code cleanup
  • - add eclipse project configuration
    - use espressif ADF, remove external opus rep
      o uses audio pipelines now
    - change code to use flac decoder
    - remove mersus code
    - add first try of audio synchronization
      o needed to sync timeofday to server on reception of server settings to avoid overflows in timeval calculations (int32_t on esp32 SDK)
      o still a lot of TODO's in the code, but it's almost in sync, although there is quite some chunk skipping which I am currently working on