![]() |
Umsci
Upmix Spatial Control Interface — OCA/OCP.1 spatial audio utility
|
Settings panel for MIDI- and OSC-based external control of the six upmix transform parameters (rotation, translation, height translation, angle stretch, X/Y offset). More...
#include <UmsciExternalControlComponent.h>
Inheritance diagram for UmsciExternalControlComponent:
Collaboration diagram for UmsciExternalControlComponent:Classes | |
| class | MidiTab |
| class | OscTab |
Public Types | |
| enum | UpmixMidiParam { UpmixMidiParam_Rotation = 0 , UpmixMidiParam_Translation = 1 , UpmixMidiParam_HeightTranslation = 2 , UpmixMidiParam_AngleStretch = 3 , UpmixMidiParam_OffsetX = 4 , UpmixMidiParam_OffsetY = 5 , UpmixMidiParam_COUNT = 6 } |
| Identifies each controllable upmix transform parameter. More... | |
Public Member Functions | |
| UmsciExternalControlComponent () | |
| ~UmsciExternalControlComponent () override | |
| void | resized () override |
| void | setMidiInputDeviceIdentifier (const juce::String &identifier) |
| const juce::String & | getMidiInputDeviceIdentifier () const |
| void | setMidiAssi (UpmixMidiParam param, const JUCEAppBasics::MidiCommandRangeAssignment &assi) |
| const JUCEAppBasics::MidiCommandRangeAssignment & | getMidiAssi (UpmixMidiParam param) const |
| void | setOscInputPort (int port) |
| int | getOscInputPort () const |
| void | setOscAddr (UpmixMidiParam param, const juce::String &address) |
| juce::String | getOscAddr (UpmixMidiParam param) const |
Public Attributes | |
| std::function< void(const juce::String &)> | onMidiInputDeviceChanged |
| std::function< void(UpmixMidiParam, JUCEAppBasics::MidiCommandRangeAssignment)> | onMidiAssiChanged |
| std::function< void(int)> | onOscInputPortChanged |
| std::function< void(UpmixMidiParam, juce::String)> | onOscAddrChanged |
Static Public Attributes | |
| static const std::array< std::pair< float, float >, UpmixMidiParam_COUNT > | s_paramRanges |
Natural parameter ranges for normalised MIDI→domain mapping. Indexed by UpmixMidiParam. | |
| static const juce::String | s_paramLabels [UpmixMidiParam_COUNT] |
| Human-readable parameter labels shared by both tabs. | |
| static const juce::String | s_oscDefaultAddresses [UpmixMidiParam_COUNT] |
Default OSC address for each parameter, indexed by UpmixMidiParam. | |
Settings panel for MIDI- and OSC-based external control of the six upmix transform parameters (rotation, translation, height translation, angle stretch, X/Y offset).
The component presents two tabs:
MidiLearnerComponent rows.Changes are communicated via callbacks:
onMidiInputDeviceChanged / onMidiAssiChanged for MIDI.onOscInputPortChanged / onOscAddrChanged for OSC.Shared by both MIDI and OSC tabs; used as index into internal arrays. Integer values must remain stable.
Definition at line 45 of file UmsciExternalControlComponent.h.
Identifies each controllable upmix transform parameter.
Definition at line 49 of file UmsciExternalControlComponent.h.
| UmsciExternalControlComponent::UmsciExternalControlComponent | ( | ) |
Definition at line 305 of file UmsciExternalControlComponent.cpp.
|
override |
Definition at line 324 of file UmsciExternalControlComponent.cpp.
| const JUCEAppBasics::MidiCommandRangeAssignment & UmsciExternalControlComponent::getMidiAssi | ( | UpmixMidiParam | param | ) | const |
Definition at line 351 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::MidiTab::getMidiAssi().
| const juce::String & UmsciExternalControlComponent::getMidiInputDeviceIdentifier | ( | ) | const |
Definition at line 340 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::MidiTab::getMidiInputDeviceIdentifier().
| juce::String UmsciExternalControlComponent::getOscAddr | ( | UpmixMidiParam | param | ) | const |
Definition at line 373 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::OscTab::getOscAddr().
| int UmsciExternalControlComponent::getOscInputPort | ( | ) | const |
Definition at line 363 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::OscTab::getOscInputPort().
|
override |
Definition at line 328 of file UmsciExternalControlComponent.cpp.
| void UmsciExternalControlComponent::setMidiAssi | ( | UpmixMidiParam | param, |
| const JUCEAppBasics::MidiCommandRangeAssignment & | assi | ||
| ) |
Definition at line 345 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::MidiTab::setMidiAssi().
| void UmsciExternalControlComponent::setMidiInputDeviceIdentifier | ( | const juce::String & | identifier | ) |
Definition at line 335 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::MidiTab::setMidiInputDeviceIdentifier().
| void UmsciExternalControlComponent::setOscAddr | ( | UpmixMidiParam | param, |
| const juce::String & | address | ||
| ) |
Definition at line 368 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::OscTab::setOscAddr().
| void UmsciExternalControlComponent::setOscInputPort | ( | int | port | ) |
Definition at line 358 of file UmsciExternalControlComponent.cpp.
References UmsciExternalControlComponent::OscTab::setOscInputPort().
| std::function<void(UpmixMidiParam, JUCEAppBasics::MidiCommandRangeAssignment)> UmsciExternalControlComponent::onMidiAssiChanged |
Definition at line 84 of file UmsciExternalControlComponent.h.
Referenced by UmsciExternalControlComponent::MidiTab::MidiTab().
| std::function<void(const juce::String&)> UmsciExternalControlComponent::onMidiInputDeviceChanged |
Definition at line 83 of file UmsciExternalControlComponent.h.
Referenced by UmsciExternalControlComponent::MidiTab::comboBoxChanged().
| std::function<void(UpmixMidiParam, juce::String)> UmsciExternalControlComponent::onOscAddrChanged |
Definition at line 94 of file UmsciExternalControlComponent.h.
| std::function<void(int)> UmsciExternalControlComponent::onOscInputPortChanged |
Definition at line 93 of file UmsciExternalControlComponent.h.
|
static |
Default OSC address for each parameter, indexed by UpmixMidiParam.
Definition at line 43 of file UmsciExternalControlComponent.h.
Referenced by OscController::OscController(), and UmsciExternalControlComponent::OscTab::OscTab().
|
static |
Human-readable parameter labels shared by both tabs.
Definition at line 24 of file UmsciExternalControlComponent.h.
Referenced by UmsciExternalControlComponent::MidiTab::MidiTab(), and UmsciExternalControlComponent::OscTab::OscTab().
|
static |
Natural parameter ranges for normalised MIDI→domain mapping. Indexed by UpmixMidiParam.
Definition at line 34 of file UmsciExternalControlComponent.h.