SwiftOSC v1.4
SwiftOSC is a Swift Open Sound Control (OSC) 1.1 client and server framework.
If you are using SwiftOSC in a project, let me know. I would love to make a list of projects using SwiftOSC.
Table of Contents
Installation
pod 'SwiftOSC', '~> 1.4'
OR
Step 1
Clone or download repository from Github.
Step 2
Open SwiftOSC.xcworkspace and build SwiftOSC frameworks.
Step 3
Embed SwiftOSC into project.
Quick Start
OSC Server
Step 1
Import SwiftOSC framework into your project
import SwiftOSC
Step 2
Create Server
var server = OSCServer(address: "", port: 8080)
Step 3
Start server
server.start()
Step 4
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()
OSC Client
Step 1
Import SwiftOSC framework into your project
import SwiftOSC
Step 2
Create client
var client = OSCClient(address: "localhost", port: 8080)
Step 3
Create a message
var message = OSCMessage(
OSCAddressPattern("/"),
100,
5.0,
"Hello World",
Blob(),
true,
false,
nil,
impulse,
Timetag(1)
)
Create a bundle
var bundle = OSCBundle(Timetag(secondsSinceNow: 5.0), message)
Step 4
Send message
client.send(message)
Send bundle
// If the server fully supports timetags, like SwiftOSC, the bundle will be delivered at the correct time.
client.send(bundle)
Projects Using SwiftOSC
For additional information on Open Sound Control visit http://opensoundcontrol.org/.