SwiftOSC is a Swift Open Sound Control 1.1 client and server framework.
pod 'SwiftOSC', '~> 1.1'
OR
Clone or download repository from Github.
Open SwiftOSC.xcworkspace and build SwiftOSC frameworks.
Embed SwiftOSC into project.
Import SwiftOSC framework into your project
import SwiftOSC
Create Server
var server = OSCServer(address: "", port: 8080)
Start server
server.start()
Setup server delegate to handle incoming OSC Data
class OSCHandler: OSCServerDelegate {
func didReceive(_ message: OSCMessage){
if let integer = message.arguments[0] as Int {
print("Received int \(integer)"
} else {
print(message)
}
}
}
server.delegate = OSCHandler()
Import SwiftOSC framework into your project
import SwiftOSC
Create client
var client = OSCClient(address: "localhost", port: 8080)
Create a message
var message = OSCMessage(
OSCAddressPattern("/"),
100,
5.0,
"Hello World",
Blob(),
true,
false,
nil,
impulse,
Timetag(1)
)
Send message
client.send(message)
- All OSC messages are delivered immediately. Timetags are ignored.
Devin Roth is a composer and programmer. When not composing, teaching, or being a dad, Devin attempts to make his life more efficient by writing programs.
For additional information on Open Sound Control visit http://opensoundcontrol.org/.