https://github.com/halfbyte/rosc
OpenSound Control for Ruby
https://github.com/halfbyte/rosc
Last synced: 10 months ago
JSON representation
OpenSound Control for Ruby
- Host: GitHub
- URL: https://github.com/halfbyte/rosc
- Owner: halfbyte
- License: other
- Created: 2008-05-18T19:05:11.000Z (almost 18 years ago)
- Default Branch: master
- Last Pushed: 2008-05-18T22:12:03.000Z (almost 18 years ago)
- Last Synced: 2025-04-15T06:53:27.683Z (about 1 year ago)
- Language: Ruby
- Homepage: http://hans.fugal.net/src/rosc/
- Size: 261 KB
- Stars: 23
- Watchers: 2
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README
- Changelog: ChangeLog
- License: LICENSE
Awesome Lists containing this project
README
= rosc - OpenSound Control for Ruby
== Synopsis
require 'osc'
Host = 'localhost'
Port = 5000
s = OSC::UDPServer.new
s.bind Host, Port
c = OSC::UDPSocket.new
m = OSC::Message.new('/foo', 'fi', Math::PI, 42)
c.send m, 0, Host, Port
s.add_method '/f*', 'fi' do |msg|
domain, port, host, ip = msg.source
puts "#{msg.address} -> #{msg.args.inspect} from #{host}:#{port}"
end
Thread.new do
s.serve
end
sleep 5
#=> /foo -> [3.14159274101257, 42] from localhost:50843
== Requirements
- Ruby
== Installation
sudo ruby setup.rb
== Details
See the OSC home page[1], especially the "State of the Art" paper (for an
overview) and the specification. This library makes OSC easy, but you will
still need to understand OSC concepts and limitations.
The important classes are Message, Bundle, UDPSocket, and UDPServer. If you
want to make your own server on a different transport (e.g. TCP or UNIX
sockets, which are still on the TODO list), you will want to use the Server
mixin.
Please read the AUTHORS file for credits and see the TODO list for planned
enhancements.
1. http://www.cnmat.berkeley.edu/OpenSoundControl
== Examples
Send me your interesting examples and I'll include them.
== License
Copyright (C) 2007 Hans Fugal and Tadayoshi Funaba
Distributed under Ruby's license. See the LICENSE file.