OSC stands for Open Sound Control, and is basically the next generation of Midi. It is a network protocol that is pretty open. It originally was designed to be very flexible. It sends a command like "/myapplication/piano/anythinggoes 1" over the network, and it is up to the receiver to understand the commands.
Hence, for Paddy, we can send commands to edit pictures. All we need is to connect the receiver (Paddy) with the sender
For more, Wikipedia: http://en.wikipedia.org/wiki/Open_Sound_Control
Effectively, when you switch on Paddy's OSC receiver in preferences/Basic Setup, Paddy starts to listen for incoming OSC commands on the PC's network connection. If the command is in the Paddy namespace, Paddy reacts. Once a device is connected to Paddy, Paddy also sends OSC commands out. This means that sliders on the IPad (in the OSC implementation) move.
Paddy uses the following for OSC
- Paddy listens on port: 8000
- Paddy is sending on port: 9000
Paddy is listening and sending for the namespace
/Paddy/Lightroom/
Any other command is ignored
Command: /Paddy/Lightroom/slidernumber/[slider number] [percent setting]
in/out: Sending and receiving
Parameters
slider number
Paddy internal slider number. The list of sliders and associated numbers is available here
percent setting
between 0 and 1, with decimals. The setting of the slider in percent of the full range. E.g., .666 = 66.6% . This is to be compatible with future Lightroom versions and to translate the temperature for raw pictures into a linear scale for a controller (the LR sldier for Temperatur in raw is non linerar)
Example
/Paddy/Lightroom/slidernumber/5 .5
sets the x slider in the middle of the available range
Notes
Paddy adjusts for the process and picture type. E.g., 50% in Exposure is the mid point in JPG, raw, 2010, 2012
Command: /Paddy/Lightroom/preset/[preset number] 1
in/out: Receiving
Parameters
Preset number
The number of the preset that Paddy should apply (see below). Currently supported: 1-10, 1001-1010, 2001-2010
1
if "1", preset is applied. Otherwise, ignored
Example
/Paddy/Lightroom/preset/1002 1
Applies preset number 2 of the second Paddy OSC preset bank
Notes Paddy organizes the presets available for OSC at the moment in in 3 sets with 10 presets each. See the Paddy user guide for more. In effect, the user associates a preset number with a certain preset. If Paddy receives the preset number with this command, the preset is applied
Command: /Paddy/Lightroom/preset_name/[preset number] [string]
in/out: Sending
Parameters
Preset number
The number of the preset that the user named. Currently supported: 1-10, 1001-1010, 2001-2010
[string]
the name the user gave the preset
Example
/Paddy/Lightroom/preset_name/1002 B&W setting 1
The user named the OSC preset #2 in the second bank as "B&W setting 1"
Notes Paddy organizes the presets available for OSC at the moment in in 3 sets with 10 presets each. See the Paddy user guide for more. In effect, the user associates a preset number with a certain preset.
Paddy sends this command when a OSC device connects for all OSC Presets the user assigned. This enables the OSC interface to rename the button. Practically speaking, the label on your button for an OSC preset should react to this command and change when it is received
Commands: /Paddy/Lightroom/preset/[preset number]/visible [0|1]
/Paddy/Lightroom/preset_name/[preset number]/visible [0|1]
in/out: Sending
Parameters
Preset number
The number of the preset that the user named. Currently supported: 1-10, 1001-1010, 2001-2010
0,1
0 means the preset is not in use and the user interface can hide the button ; 1 means it is in use
Example
/Paddy/Lightroom/preset_name/1002/visible 0
The user has not mapped preset 1002 and it can be hidden in the interface
Notes Paddy organizes the presets available for OSC at the moment in in 3 sets with 10 presets each. See the Paddy user guide for more. In effect, the user associates a preset number with a certain preset.
Paddy sends this command when a OSC device connects for all OSC Presets the user assigned. This enables the OSC interface to show or hide the buttons
Practically speaking, TouchOSC does this automagically when an OSC command is assigned. In other words, in TouchOSC, if you create a button that has the associated OSC command "/Paddy/Lightroom/preset/1002", it will send the command when touched, hide when it receives "/Paddy/Lightroom/preset/1002/visible 0", and show when it receives "/Paddy/Lightroom/preset/1002/visible 1". The same is true for a label with the associated OSC command "/Paddy/Lightroom/preset_name/1002"
Command: /Paddy/Lightroom/profile/[profile number] 1
in/out: Receiving
Parameters
profile number
The number of the profile that Paddy should apply (see below). Currently supported: 1-10, 1001-1010, 2001-2010
1
if "1", profile is applied. Otherwise, ignored
Example
/Paddy/Lightroom/profile/1002 1
Applies profile number 2 of the second Paddy OSC profile bank
Notes Paddy organizes camera profiles available for OSC at the moment in in 3 sets with 10 profiles each. See the Paddy user guide for more. In effect, the user associates a profile number with a certain profile. If Paddy receives the profile number with this command, the profile is applied
Command: /Paddy/Lightroom/profile_name/[profile number] [string]
in/out: Sending
Parameters
profile number
The number of the profile that the user named. Currently supported: 1-10, 1001-1010, 2001-2010
[string]
the name the user gave the profile
Example
/Paddy/Lightroom/profile_name/1002 Adobe standard
The user mapped the OSC profile #2 in the second bank to "Adobe Standard"
Notes Paddy organizes the profiles available for OSC at the moment in in 3 sets with 10 profiles each. See the Paddy user guide for more. In effect, the user associates a profile number with a certain profile.
Paddy sends this command when a OSC device connects for all OSC profiles the user assigned. This enables the OSC interface to rename the button. Practically speaking, the label on your button for an OSC profile should react to this command and change when it is received
Commands: /Paddy/Lightroom/profile/[profile number]/visible [0|1]
/Paddy/Lightroom/profile_name/[profile number]/visible [0|1]
in/out: Sending
Parameters
profile number
The number of the profile that the user named. Currently supported: 1-10, 1001-1010, 2001-2010
0,1
0 means the profile is not in use and the user interface can hide the button ; 1 means it is in use
Example
/Paddy/Lightroom/profile_name/1002/visible 0
The user has not mapped profile 1002 and it can be hidden in the interface
Notes Paddy organizes the profiles available for OSC at the moment in in 3 sets with 10 profiles each. See the Paddy user guide for more. In effect, the user associates a profile number with a certain profile.
Paddy sends this command when a OSC device connects for all OSC profiles the user assigned. This enables the OSC interface to show or hide the buttons
Practically speaking, TouchOSC does this automagically when an OSC command is assigned. In other words, in TouchOSC, if you create a button that has the associated OSC command "/Paddy/Lightroom/profile/1002", it will send the command when touched, hide when it receives "/Paddy/Lightroom/profile/1002/visible 0", and show when it receives "/Paddy/Lightroom/profile/1002/visible 1". The same is true for a label with the associated OSC command "/Paddy/Lightroom/profile_name/1002"
Command: /Paddy/Lightroom/keyword/[keyword number] 1
in/out: Receiving
Parameters
keyword number
The number of the keyword that Paddy should apply (see below). Currently supported: 1-70, 1001-1070, 2001-2070...7001-7070
1
if "1", keyword is applied. Otherwise, ignored
Example
/Paddy/Lightroom/keyword/1002 1
Applies keyword number 2 of the second Paddy OSC keyword bank
Notes Paddy organizes keywords available for OSC at the moment in in 7 sets with 70 keywords each. See the Paddy user guide for more. In effect, the user associates a keyword number with a certain keyword. If Paddy receives the keyword number with this command, the keyword is applied
Command: /Paddy/Lightroom/keyword_name/[keyword number] [string]
in/out: Sending
Parameters
keyword number
The number of the keyword that the user named. Currently supported: 1-70, 1001-1070, 2001-2070...7001-7070
[string]
the keyword the user associated with this number
Example
/Paddy/Lightroom/keyword_name/1002 Grandpa
The user mapped the OSC keyword #2 in the second bank to "Grandpa". This is the "leave" of the LR keyword tree. In other words, this will say "Grandpa" for family-->grandpa as well as for "character-->grandpa"
Notes Paddy organizes the keywords available for OSC at the moment in in 7 sets with 70 keywords each. See the Paddy user guide for more. In effect, the user associates a keyword number with a certain keyword.
Paddy sends this command when a OSC device connects for all OSC keywords the user assigned. This enables the OSC interface to rename the button. Practically speaking, the label on your button for an OSC keyword should react to this command and change when it is received
Commands: /Paddy/Lightroom/keyword/[keyword number]/visible [0|1]
/Paddy/Lightroom/keyword_name/[keyword number]/visible [0|1]
in/out: Sending
Parameters
keyword number
The number of the keyword that the user named. Currently supported: 1-70, 1001-1070, 2001-2070...7001-7070
0,1
0 means the keyword is not in use and the user interface can hide the button ; 1 means it is in use
Example
/Paddy/Lightroom/keyword_name/1002/visible 0
The user has not mapped keyword 1002 and it can be hidden in the interface
Notes Paddy organizes the keywords available for OSC at the moment in in 7 sets with 70 keywords each. See the Paddy user guide for more. In effect, the user associates a keyword number with a certain keyword.
Paddy sends this command when a OSC device connects for all OSC keywords the user assigned. This enables the OSC interface to show or hide the buttons
Practically speaking, TouchOSC does this automagically when an OSC command is assigned. In other words, in TouchOSC, if you create a button that has the associated OSC command "/Paddy/Lightroom/keyword/1002", it will send the command when touched, hide when it receives "/Paddy/Lightroom/keyword/1002/visible 0", and show when it receives "/Paddy/Lightroom/keyword/1002/visible 1". The same is true for a label with the associated OSC command "/Paddy/Lightroom/keyword_name/1002"
Command: /Paddy/Lightroom/function [function number]
in/out: receiving
Parameters
function number
The number of the Paddy function to execute in Lightroom. The list of functions and function numbers is available at https://docs.google.com/spreadsheet/ccc?key=0AlIzuyCCQOE7dFdaQm80NmtIR0YtMHAxQVBGWER1aUE#gid=0 . NOTE: You cannot apply presets, camera profiles etc this way
Example
/Paddy/Lightroom/function/1214
function: "Sharpening - (Large)" Moves the sharpen slider by a large amount as defined by the user in paddy
Notes This is the key to all the power of Paddy. Anything in LR goes, as long as it has function number.
The best way to find a function is to let Paddy show you: Goto Preferences-Basic settings->Debug tab and click "show function number in keyboard gui". When you assign a keyboard key, the function number will be displayed
Command: /Paddy/Lightroom/
in/out: Sending and receiving
Parameters
Example
/Paddy/Lightroom/
Notes
Command: /Paddy/Lightroom/
in/out: Sending and receiving
Parameters
Example
/Paddy/Lightroom/
Notes