* 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>
this only works for chunk sizes <= 10ms if set to 20ms server sometimes sends 20ms and sometimes 10ms frames which confuses esp client.
RESYNCING HARD 2 still happen very often for some reason.
remove bug in insert_pcm_chunk() resulting in dropped chunks if queue gets full, which isn't desired.
work in progress which eventually will enable the user to configure dsp processor on the fly using an on device http server.
first try and possible fix for #22
Signed-off-by: Karl Osterseher <karli_o@gmx.at>
dsp processor now will process smaller chunks of audio at a time and loop over the audio data array
which results in a much smaller RAM usage but probably longer execution times
of IIR filters.
Signed-off-by: Karl Osterseher <karli_o@gmx.at>
o wait max. 200ms and try to allocate memory every 1 ms
- set sync task to max priority and http task to (max priority - 1)
- mute audio if a hard resync happens to prevent clicks and other audible distortions
- reduce LWIP buffer sizes
Signed-off-by: Karl Osterseher <karli_o@gmx.at>