Commit Graph

6 Commits

  • - rename a view things
    - run player_task on core 1 with max priority
    - create/destroy chunk queue as required automatically
    - use mutex to access snapcast config and communicate this change by queue with size 1
    - increase buffers for WIFI and LWIP in sdkconfig for NO_SPIRAM config
    - add some more debug output
  • - clean up code
    - add pre commit using GNU style
    - remove some minor issues regarding the use of global variables and such
  • - add sdkconfig for NO_SPIRAM and SPIRAM situation
    - detect snapcast configuration and init everything accordingly, e.g sample rate, chunk duration, ...
      o calculate apll predefines in dependence of sample rate
      o communicate these settings to interested parties
    - remove typos
  • - merge with original master from jorgen
    - minimize RAM usage of all components
    - use both IRAM and DRAM in player component so we can buffer up to 1s on modules without SPI RAM
    - support fragemented pcm chunks so we can use all available RAM if there isn't a big enough block available but still enough HEAP
    - reinclude all components from jorgen's master branch
    - add custom i2s driver to get a precise timing of initial sync
    - change wrong usage of esp_timer for latency measurement of snapcast protocol
    - add player component
  • - change buffer sizes of medians
    - change syncing to be more predictable using I2S_EVENT_TX_DONE
      o also increase DMA length so i2s won't eat up so much processing time
      o ensure at least one chunk is in DMA buffer