From c924847dfc968225de813630c064adaa3dc87949 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=27=C3=A9lectron=20rare?= <108685187+electron-rare@users.noreply.github.com> Date: Wed, 13 May 2026 13:42:58 +0200 Subject: [PATCH] docs(osc): document dual /data/pose listeners --- data_only_viz/osc_listener.py | 2 ++ sound_algo/control/data_feeds.scd | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/data_only_viz/osc_listener.py b/data_only_viz/osc_listener.py index a4aad6d..d2598ab 100644 --- a/data_only_viz/osc_listener.py +++ b/data_only_viz/osc_listener.py @@ -100,6 +100,8 @@ def _build(state: State) -> dispatcher.Dispatcher: with state.lock(): state.social_rate = float(args[0]) d.map("/data/bluesky/rate", _social) + # NOTE: sound_algo/control/data_feeds.scd also listens to /data/pose/{count,skel} + # for sonification. Both consumers are intentional. Do NOT consolidate. def _pose_count(addr, *args): if args: with state.lock(): diff --git a/sound_algo/control/data_feeds.scd b/sound_algo/control/data_feeds.scd index a072f6f..586d715 100644 --- a/sound_algo/control/data_feeds.scd +++ b/sound_algo/control/data_feeds.scd @@ -185,6 +185,10 @@ \sho_l, \sho_r, \elb_l, \elb_r, \wri_l, \wri_r, \hip_l, \hip_r, \kne_l, \kne_r, \ank_l, \ank_r]; +// NOTE: /data/pose/count and /data/pose/skel are ALSO consumed by +// data_only_viz/osc_listener.py for Metal rendering. This is intentional — +// both subsystems update their own state. Do NOT consolidate; they live +// in different processes. ~feedDefPriv.(\d_pose_count, '/data/pose/count', { |msg| ~feedSet.(\pose_count, msg[1]); });