Skip to content

SwiftOSC is an Open Sound Control client and server framework written in Swift.

License

Notifications You must be signed in to change notification settings

uniba/SwiftOSC

 
 

Repository files navigation

SwiftOSC v1.1.3

Build Status Version License Platform

SwiftOSC is a Swift Open Sound Control 1.1 client and server framework.

Installation

pod 'SwiftOSC', '~> 1.1'

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)
)

Step 4

Send message

client.send(message)

Known Issues

  • All OSC messages are delivered immediately. Timetags are ignored.

About

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/.

About

SwiftOSC is an Open Sound Control client and server framework written in Swift.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Swift 84.9%
  • C 10.2%
  • Ruby 2.7%
  • Objective-C 2.2%