No edit summary |
No edit summary |
||
Line 7: | Line 7: | ||
* Face and Eye Tracking | * Face and Eye Tracking | ||
* Macro Pads/Shortcut pads | * Macro Pads/Shortcut pads | ||
== Prerequisities == | |||
While OSC makes it much easier to get data in and out of Resonite, it is still a network protocol which means that there are some prerequisites: | |||
* Basic knowledge about [[wikipedia:IP_address|IP Addresses]] and [[wikipedia:Port_(computer_networking)|Network Ports]]. | |||
* For receiving: | |||
** An open port on the computer running Resonite. | |||
** The IP Address of the computer running Resonite. | |||
* For sending: | |||
** An OSC Server reachable by Resonite on the network | |||
* Some sort of OSC Application/Tool. See [[#Tools|tools]] for some examples. | |||
== Components == | == Components == |
Revision as of 19:10, 30 April 2024
Open Sound Control(OSC) is a network protocol that allows software and hardware to send and receive data. It is traditionally used for controlling Sound related equipment such as DJ Equipment, Musical Instruments and Sliders/Faders.
However, OSC itself can be used for basically any purpose where you need to send structured data over the network. In Resonite, we're seeing this used for:
- Haptics
- Face and Eye Tracking
- Macro Pads/Shortcut pads
Prerequisities
While OSC makes it much easier to get data in and out of Resonite, it is still a network protocol which means that there are some prerequisites:
- Basic knowledge about IP Addresses and Network Ports.
- For receiving:
- An open port on the computer running Resonite.
- The IP Address of the computer running Resonite.
- For sending:
- An OSC Server reachable by Resonite on the network
- Some sort of OSC Application/Tool. See tools for some examples.
Components
OSC has the following Resonite Components:
- Component:OSC_Receiver - Receive data into Resonite from OSC
- Component:OSC_Sender - Send data out of Resonite from OSC
- Component:OSC_Value - Expose an OSC value as a regular component field
- Component:OSC_Field - Store an OSC value in another component's value field
Data
OSC Supports many data types, but Resonite supports:
- Float
- Double
- Int
- Long
- String
- Color
- ColorX (Will convert to sRGB)
- DateTime
- Byte
Many OSC Applications send data purely as Floats.
Tools
A number of tools that support OSC already exist and are compatible with Resonite's implementation:
- OSC Controller - Control Sliders, Buttons etc on your phone and send the data via OSC
- Sensors2OSC - Send Android Sensor data over OSC
- Basic-OSC-Example - A very simple OSC app written in C#. Used for testing OSC Connectivity.
- GigglePuck - A haptic device, that vibrates in response to Resonite based Interactions
Examples
- Using a Phone's sensors
- Rotating an in-game box with your phone's gyroscope by Frooxius.
- Accessing Sensors2OSC Data - Tutorial by ProbablePrime
- Sliders, Buttons and a Multi-Touch System