summaryrefslogtreecommitdiff
path: root/libs/surfaces/osc/osc_select_observer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/surfaces/osc/osc_select_observer.cc')
-rw-r--r--libs/surfaces/osc/osc_select_observer.cc23
1 files changed, 11 insertions, 12 deletions
diff --git a/libs/surfaces/osc/osc_select_observer.cc b/libs/surfaces/osc/osc_select_observer.cc
index 2a42f0346c..7f50c71106 100644
--- a/libs/surfaces/osc/osc_select_observer.cc
+++ b/libs/surfaces/osc/osc_select_observer.cc
@@ -302,8 +302,7 @@ OSCSelectObserver::tick ()
string path = "/select/meter";
lo_message msg = lo_message_new ();
if (gainmode && feedback[7]) {
- uint32_t lev1023 = (uint32_t)((now_meter + 54) * 17.05);
- lo_message_add_int32 (msg, lev1023);
+ lo_message_add_float (msg, ((now_meter + 94) / 100));
lo_send_message (addr, path.c_str(), msg);
} else if ((!gainmode) && feedback[7]) {
lo_message_add_float (msg, now_meter);
@@ -439,17 +438,21 @@ OSCSelectObserver::gain_message (string path, boost::shared_ptr<Controllable> co
lo_message msg = lo_message_new ();
if (gainmode) {
- if (controllable->get_value() == 1) {
- lo_message_add_int32 (msg, 800);
- } else {
- lo_message_add_int32 (msg, gain_to_slider_position (controllable->get_value()) * 1023);
- }
+#ifdef MIXBUS
+ lo_message_add_float (msg, controllable->internal_to_interface (val));
+#else
+ lo_message_add_float (msg, gain_to_slider_position (controllable->get_value()));
+#endif
} else {
+#ifdef MIXBUS
+ lo_message_add_float (msg, val);
+#else
if (controllable->get_value() < 1e-15) {
lo_message_add_float (msg, -200);
} else {
lo_message_add_float (msg, accurate_coefficient_to_dB (controllable->get_value()));
}
+#endif
}
lo_send_message (addr, path.c_str(), msg);
@@ -465,11 +468,7 @@ OSCSelectObserver::send_gain (uint32_t id, boost::shared_ptr<PBD::Controllable>
if (gainmode) {
path = "/select/send_fader";
- if (controllable->get_value() == 1) {
- value = 800;
- } else {
- value = gain_to_slider_position (controllable->get_value());
- }
+ value = gain_to_slider_position (controllable->get_value());
} else {
path = "/select/send_gain";
if (controllable->get_value() < 1e-15) {