- Implemented Hydra visualizations in `web_realart/public/hydra/app.js` and `index.html`.
- Created WebGL visualizer using Three.js and WebGPU in `web_realart/public/webgl/app.js` and `index.html`.
- Developed main landing page in `web_realart/public/index.html` to showcase different visualizations.
- Set up WebSocket server in `web_realart/server.js` to relay OSC messages to web clients.
- Added health check API endpoint for monitoring server status.
Context: AV-Live monorepo unifies the SuperCollider sound engine
(sound_algo) and the openFrameworks oscilloscope visualizer (oscope-of)
under one roof, driven by a SwiftUI menubar launcher. oscope-of was a
separate private repo until now.
Approach: imported via 'git fetch + read-tree --prefix=oscope-of/'
(pre-subtree-script merge) so the entire 1-commit history of the
source repo is grafted under the oscope-of/ subdirectory. The standard
git-subtree trailers below let 'git subtree pull/push' sync changes
back and forth.
Changes:
- Add oscope-of/ tree (33 files, 2126 lines) :
- src/main.cpp + src/ofApp.{h,cpp} : oF entry point
- src/HantekDevice.{h,cpp} : Hantek 6022BL USB driver
- src/RingBuffer.h : lock-free SPSC ringbuffer USB->UI thread
- src/FFT.{h,cpp} : Cooley-Tukey FFT with Hann windowing
- src/OscClient.{h,cpp} : OSC bridge to SuperCollider
- src/visualizers/{Lissajous,Spectrogram,Reactive}Vis.{h,cpp} :
3 GPU-accelerated visualization modes
- bin/data/shaders/{crt,hex_grid}.{vert,frag} : CRT phosphor +
procedural hex grid shaders
- Makefile, addons.make, config.make : oF build config
- docs/{HANTEK_FIRMWARE,OSC_PROTOCOL}.md : integration docs
Impact: enables Phase 4 (SwiftUI launcher) to spawn the oscope-of
binary alongside scsynth/sclang as part of one cohesive AV stack,
and removes the need to maintain a second private repository.
git-subtree-dir: oscope-of
git-subtree-mainline: de035a8596
git-subtree-split: 6f51177920219e03b025119eef648217df0885b6