diff options
author | Thomas White <taw@physics.org> | 2023-04-16 21:34:22 +0200 |
---|---|---|
committer | Thomas White <taw@physics.org> | 2023-04-16 21:34:22 +0200 |
commit | 7bd05a89136a560ddcb7e28bd2936e2ee05e008b (patch) | |
tree | 35e14a133bf63e82fa2b76d3b1b242a9c83331e3 /README.md | |
parent | 63ea7c9d6f43ff80695507afe8c2db2e3be2b247 (diff) |
Add README.md
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..d377ccd --- /dev/null +++ b/README.md @@ -0,0 +1,42 @@ +Guile-OSC: Open Sound Control for Guile Scheme +============================================== + +Guile-OSC is a Guile wrapper for [liblo](https://github.com/radarsat1/liblo), +enabling Open Sound Control clients and servers to be implemented from Scheme. + + +Getting started +--------------- + +You will need the development files for Guile and liblo installed, as well as +[Meson](https://mesonbuild.com/). Then: + +``` +$ git clone https://github.com/taw10/guile-osc.git guile-osc +$ cd guile-osc +$ meson setup build +$ ninja -C build +$ sudo ninja -C build install +``` + +Then, to receive OSC messages from within a Guile program: + +``` +(use-modules (open-sound-control server-thread)) +(define osc-server (make-osc-server-thread "7770")) +(add-osc-method osc-server "/my/osc/method" (lambda () (do-something))) +``` + +Or, to send messages (with parameters): + +``` +(use-modules (open-sound-control client)) +(define osc-send-addr (make-osc-address "7771")) +(osc-send osc-send-addr "/their/osc/method" 1 2 4) +``` + + +Licence +------- + +LGPL 2.1, the same as liblo itself. |