WebSocket Audio Server
This is a FastAPI server that receives audio from an ESP32 via WebSocket, saves it, processes it (converts 32-bit to 16-bit), and sends it back for playback.
Installation
- Install dependencies:
pip install -r requirements.txt
Usage
-
Start the server:
python server.pyOr:
uvicorn server:app --host 0.0.0.0 --port 8000 -
Update the IP address in
main.pyon your ESP32 to match your computer's IP address. Look forSERVER_IPvariable.
Features
- Receives raw audio stream from ESP32.
- Saves raw audio to
received_audio.raw. - Converts 32-bit audio (from ICS-43434) to 16-bit audio (for MAX98357A).
- Streams processed audio back to ESP32 for playback.