Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/hoijui/javaosc_deprecated

Old/Deprecated JavaOSC, see here for the new version:
https://github.com/hoijui/javaosc_deprecated

archived deprecated deprecated-repo java open-sound-control osc protocol

Last synced: 24 days ago
JSON representation

Old/Deprecated JavaOSC, see here for the new version:

Awesome Lists containing this project

README

        

## Deprecated

This project is **deprecated**, meaning it is superseeded/outdated by a newer version.

Please go to [***the new repo***](https://github.com/hoijui/JavaOSC).

## Overview

JavaOSC is a library for communicating through the OSC protocol in Java.
It is not, in itself, a usable program.
Rather, it is a library designed for building programs that need to communicate
over OSC (e.g., SuperCollider, Max/MSP, Reaktor, etc.).

The latest version of javaosc is available at:

http://www.illposed.com/software/javaosc.html

or at:

https://github.com/hoijui/JavaOSC

## Folder structure

src/main/java/ -- JavaOSC source
src/main/resources/puredata/ -- PureData file for the PD example
src/main/resources/supercollider/ -- SuperCollider files for the examples.
target/ -- where build files end up

## How to run

### SuperCollider

JavaOSC is not a standalone application, but designed to be used in other applications. Though, there is a very basic app, created by John Thompson, for demonstration purposes.

To run the demo app, you can either double click on the library "lib/javaoscfull.jar", or you can execute the "run" ant task by typing "ant run".

Next, launch SuperCollider, open the file located in the "src/main/resources/supercollider/" directory and load the synthdef into SuperCollider. Start the SC local server running.

Click the "All On" button and start moving the sliders. You should hear the sounds change.

To see what messages the UI is sending, run either the CNMAT dumpOSC, or turn on dumpOSC in SuperCollider.

### PD

There is also a PureData patch created by Alexandre Quessy .

To try the demo app with PureData, launch PureData and open the file
"src/main/resources/puredata/javaosc.pd".

Turn down the volume a bit at first, as it might be very loud. Click
the "All On" button an start moving the sliders. You should hear the
sounds change.

To see what messages the UI is sending, just look in the Pd window or
in the terminal.

## Orientation

Open Sound Control (OSC) is a UDP-based protocol for transmission of musical control data over an IP network. Applications like SuperCollider, Max/MSP, and Reaktor (among others) use OSC for network communication.

JavaOSC is a class library that gives Java programs the capability of sending and receiving OSC.

The classes that deal with sending OSC data are located in the com.illposed.osc package. The core classes are com.illposed.osc.OSCPort{In, Out}, com.illposed.osc.OSCMessage and com.illposed.osc.OSCBundle.

There are some associated JUnit tests for the OSC classes. They can be run with `mvn test`.

## Use

The way to use the library is to instantiate an OSCPort connected to the receiving machine and then call the send() message on the port with the packet to send as the argument.

To see examples, look at the tests or the simple UI located in com.illposed.osc.ui.OscUI

## Thanks

Thanks to John Thompson for writing the Java demo app, Alexandre Quessy for the PD demo, and to Martin Kaltenbrunner and Alex Potsides for their contributions.