osc-support
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
osc-support [2021/11/12 17:08] – [Command messages] shane | osc-support [2023/05/08 18:59] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 5: | Line 5: | ||
===== Overview ===== | ===== Overview ===== | ||
- | Unify v1.7 and later can be configured to listen for OSC connections on a specified UDP port; see " | + | Unify v1.7 and later can be configured to listen for OSC connections on a specified UDP port; see " |
+ | |||
+ | **Only the Unify stand-alone Unify app can use OSC**; the plug-in versions cannot. | ||
Unify uses only UDP for OSC connections; | Unify uses only UDP for OSC connections; | ||
Line 11: | Line 13: | ||
===== Enabling and Configuring OSC ===== | ===== Enabling and Configuring OSC ===== | ||
- | To set up OSC support in Unify v1.7 and later, | + | To set up OSC support in Unify v1.7 and later, |
- | * Close all instances of Unify first, so the file won't get overwritten while you're editing it. | + | |
- | * On Windows, open an Explorer window | + | |
- | * This will open the folder '' | + | |
- | * On Macintosh, open a Finder window and type '' | + | |
- | * This will open the folder ''/ | + | |
- | + | ||
- | Within this folder, | + | |
- | The //Unify.settings// file is an [[wp>XML|XML file]]. You should ideally know about the structure of XML, and how to ensure that start/end tags and quotation marks are correctly paired. Be VERY careful about typing quotation marks, as many text editor programs (even true "text editors" | + | {{::osc-1.png|}} |
- | Unify v1.7 will automatically add a well-formed XML //VALUE// tag for OSC configuration, which you will usually find at or near the very bottom of the file: | + | To enable |
- | <code XML> | + | If you wish, you may also adjust the // |
- | <VALUE name=" | + | * The default // |
- | < | + | |
- | <osc ipAddress=" | + | |
- | </ | + | |
- | </ | + | |
- | </ | + | |
- | + | ||
- | To enable Unify to listen for OSC commands, the least you need to do is to change the " | + | |
- | + | ||
- | If you wish, you may also adjust the // | + | |
- | * The default // | + | |
* If you want it to listen only for //local// connections, | * If you want it to listen only for //local// connections, | ||
* If you want it to listen on a specific interface only, enter the IP address to use. | * If you want it to listen on a specific interface only, enter the IP address to use. | ||
* On most computers, the default // | * On most computers, the default // | ||
* If you need to change it, you'll need to determine a suitable port number, between 1024 and 65535. | * If you need to change it, you'll need to determine a suitable port number, between 1024 and 65535. | ||
- | * Changes you make will only take effect after you save and close the file, then re-open Unify. | + | * Changes you make will only take effect after you quit Unify, then re-start Unify. |
+ | |||
+ | **On Windows**, the first time you re-start the Unify stand-alone app after enabling OSC, a pop-up window will appear, asking you if it's OK to allow network access: | ||
+ | |||
+ | {{:: | ||
+ | |||
+ | The recommended setting (allow Unify to communicate on Private networks only) should already be selected. Click the **Allow access** button to confirm it. | ||
===== OSC message types ===== | ===== OSC message types ===== | ||
Line 59: | Line 50: | ||
Unify v1.7 supports the following " | Unify v1.7 supports the following " | ||
- | * **/init** is the same as clicking the INIT button. | + | * '' |
* The associated floating-point value must be present, but is ignored. | * The associated floating-point value must be present, but is ignored. | ||
- | * **/load** triggers loading of a patch. | + | * '' |
* The associated floating-point value is cast to an integer, and should be equal to the value of the **id** field for the desired patch' | * The associated floating-point value is cast to an integer, and should be equal to the value of the **id** field for the desired patch' | ||
* If the value does not exactly match a valid patch ID, the command will be ignored. | * If the value does not exactly match a valid patch ID, the command will be ignored. | ||
- | * **/embed** also triggers patch loading, but the specified patch is loaded as a new Unify layer. | + | * '' |
==== Bidirectional messaging for patch-loading commands ==== | ==== Bidirectional messaging for patch-loading commands ==== | ||
+ | As described above, the ''/ | ||
+ | |||
+ | A remote-control program can // | ||
+ | |||
+ | If Unify has received a valid ''/ | ||
+ | |||
+ | Before shutting down, a remote-control program which has previously sent a ''/ | ||
==== MIDI-over-OSC messages ==== | ==== MIDI-over-OSC messages ==== | ||
Line 88: | Line 86: | ||
</ | </ | ||
- | Note the reversed byte-order, and how 3-byte MIDI messages are encoded as 4-byte integers. | + | Note the reversed byte-order, and how 3-byte MIDI messages are encoded as 4-byte integers. |
+ | |||
+ | ==== OSC messages to embedded Unify instances ==== | ||
+ | **As of Unify v1.9**, it is possible to direct OSC commands to specific embedded Unify instances. The required path syntax is similar to that for sending parameter-update messages to plug-ins, but the word //unify// is used instead of //plugin//, and this is followed by the OSC command to be sent to the Unify instance. | ||
+ | |||
+ | For example, to send the command /// | ||
osc-support.1636736937.txt.gz · Last modified: 2023/05/08 18:59 (external edit)