We need to add latency measurements.
- Audio back-end latency (time between cpal throws enough PCMs to encode single 20ms frame, and encoder done its job). SHOULD BE QUITE LOW.
- Time between Rust socket.write() and python's reader.read() (sanity check for the code I've made). SHOULD BE ALMOST INSTANT
- Time between python's reader.read() and websocket.send() (again, sanity check). SHOULD BE ALMOST INSTANT
- Latency between python server and client device (ping-pong test). DEPENDS ON THE NETWORK CONNECTION
- Clients side decoding latency (time between recv the frame and decoder done its job). DEPENDS ON THE BUFFER CONFIGURATION
We need to add latency measurements.