Cross-platform Open Sound Control (OSC) encoding, decoding, and dispatch library written in Swift.
Provides core functionality for SwiftOSC.
- OSC address pattern matching and dispatch
- Convenient OSC message value type masking, validation and strong-typing
- Support for custom OSC types
- Supports Swift 6 strict concurrency
- Fully unit tested
- Full DocC documentation
| macOS | iOS | tvOS | visionOS | watchOS | Linux | Android | Windows |
|---|---|---|---|---|---|---|---|
| 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | Untested |
This extension is available as a Swift Package Manager (SPM) package.
To use this extension as standalone dependency (instead of importing the swift-osc umbrella repository):
-
Add the swift-osc-core repo as a dependency.
.package(url: "https://github.com/orchetect/swift-osc-core", from: "1.0.0")
-
Add SwiftOSCCore to your target.
.product(name: "SwiftOSCCore", package: "swift-osc-core")
-
Import SwiftOSCCore to use it.
import SwiftOSCCore
See the online documentation for this repository. See one of the I/O extension repositories for example code.
For support, feature requests, and bug reports see the main SwiftOSC repository.
- swift-ascii is used for ASCII string and character formatting and validation.
- swift-data-parsing is used for message decoding.
Coded by a bunch of 🐹 hamsters in a trenchcoat that calls itself @orchetect.
Licensed under the MIT license. See LICENSE for details.
