diff --git a/scripts/led-matrix-viz.py b/scripts/led-matrix-viz.py index 83693c7..19d2dab 100644 --- a/scripts/led-matrix-viz.py +++ b/scripts/led-matrix-viz.py @@ -74,12 +74,14 @@ def main(): frames_sent = 0 frames_dropped = 0 + bytes_received = 0 last_refresh = time.monotonic() stats_last_write = time.monotonic() fps_sample_start = time.monotonic() fps_sample_frames = 0 events_processed = 0 + raw_packets = 0 while True: now = time.monotonic() @@ -94,8 +96,10 @@ def main(): if fd == sock.fileno() and (flags & POLLIN): try: while True: - data, _ = sock.recvfrom(SOCK_BUFFER) + data, addr = sock.recvfrom(SOCK_BUFFER) buf += data + bytes_received += len(data) + raw_packets += 1 except BlockingIOError: pass @@ -149,14 +153,14 @@ def main(): if now - stats_last_write >= 2.0: fps = fps_sample_frames / (now - fps_sample_start) if (now - fps_sample_start) > 0 else 0 - _write_stats(frames_sent, frames_dropped, fps, len(active_notes), events_processed) + _write_stats(frames_sent, frames_dropped, fps, len(active_notes), events_processed, bytes_received, raw_packets) stats_last_write = now fps_sample_start = now fps_sample_frames = 0 events_processed = 0 -def _write_stats(sent, dropped, fps, active_count, events): +def _write_stats(sent, dropped, fps, active_count, events, bytes_rcv, packets): import json try: with open(STATS_FILE, "w") as f: @@ -166,6 +170,8 @@ def _write_stats(sent, dropped, fps, active_count, events): "fps": round(fps, 1), "active_notes": active_count, "midi_events": events, + "bytes_received": bytes_rcv, + "raw_packets": packets, "ts": time.time() }, f) except OSError: