diff --git a/libs/ardour/ardour/value_as_string.h b/libs/ardour/ardour/value_as_string.h index 18e57c27e9..c2f40fc8c4 100644 --- a/libs/ardour/ardour/value_as_string.h +++ b/libs/ardour/ardour/value_as_string.h @@ -63,7 +63,7 @@ value_as_string(const ARDOUR::ParameterDescriptor& desc, } else { snprintf(buf, sizeof(buf), "%.3f", v); } - if (desc.unit == ARDOUR::ParameterDescriptor::DB) { + if (desc.print_fmt.empty() && desc.unit == ARDOUR::ParameterDescriptor::DB) { // TODO: Move proper dB printing from AutomationLine here return std::string(buf) + " dB"; } diff --git a/libs/ardour/lv2_plugin.cc b/libs/ardour/lv2_plugin.cc index 4affd89eae..d7a68fe3e7 100644 --- a/libs/ardour/lv2_plugin.cc +++ b/libs/ardour/lv2_plugin.cc @@ -1340,7 +1340,8 @@ load_parameter_descriptor_units(LilvWorld* lworld, ParameterDescriptor& desc, co desc.unit = ParameterDescriptor::DB; } else if (lilv_nodes_contains(units, _world.units_hz)) { desc.unit = ParameterDescriptor::HZ; - } else if (lilv_nodes_size(units) > 0) { + } + if (lilv_nodes_size(units) > 0) { const LilvNode* unit = lilv_nodes_get_first(units); LilvNode* render = get_value(lworld, unit, _world.units_render); if (render) {