8 Commits

  • update readme
    add sdkconfig.defaults
    change some warnings to verbose
    in player if more than 16 bits are selected in i2s use I2S_MCLK_MULTIPLE_384
    remove stream tags, add client info message to snapcast protocol
    
    Signed-off-by: Karl Osterseher <karli_o@gmx.at>
  • Merge branch 'master' into fix_20ms_chunk_size_bug
    # Conflicts:
    #	.project
    #	components/audio_board/CMakeLists.txt
    #	components/audio_board/Kconfig.projbuild
    #	components/audio_board/component.mk
    #	components/audio_board/esp32_s2_kaluga_1_v1_2/board.c
    #	components/audio_board/esp32_s2_kaluga_1_v1_2/board.h
    #	components/audio_hal/driver/es8388/es8388.c
    #	components/audio_hal/driver/es8388/headphone_detect.c
    #	components/audio_hal/driver/tas5805m/tas5805m.c
    #	components/custom_board/Kconfig.projbuild
    #	components/esp_peripherals/driver/i2c_bus/i2c_bus.c
    #	components/esp_peripherals/esp_peripherals.c
    #	components/esp_peripherals/periph_button.c
    #	components/esp_peripherals/periph_console.c
    #	components/esp_peripherals/periph_led.c
    #	components/esp_peripherals/periph_sdcard.c
    #	components/esp_peripherals/periph_wifi.c
    #	components/esp_peripherals/periph_ws2812.c
    #	components/esp_peripherals/test/esp_peripherals_test.c
    #	components/eth_interface/CMakeLists.txt
    #	components/eth_interface/eth_interface.c
    #	components/lightsnapcast/include/snapcast.h
    #	components/lightsnapcast/player.c
    #	components/wifi_interface/CMakeLists.txt
    #	components/wifi_interface/wifi_interface.c
    #	dependencies.lock
    #	main/CMakeLists.txt
    #	main/main.c
    #	sdkconfig_PCM5102A
    #	sdkconfig_TAS5805M
    
    Signed-off-by: Karl Osterseher <karli_o@gmx.at>
  • testing, debugging
    Signed-off-by: Karl Osterseher <karli_o@gmx.at>
  • - major change, use lwip netconn instead of socket API to reduce RAM footprint
    o flac works, opus and pcm are untested and not working
    - improve on resyncing issues
    - add wifi logger component submodule
    - optimize stack sizes
  • - 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