[SCM] calf/master: Added 6 new LED's and peak hold function for VU-meters
js at users.alioth.debian.org
js at users.alioth.debian.org
Tue May 7 15:39:42 UTC 2013
The following commit has been merged in the master branch:
commit 81cfb6dbc82f73a8d251238a5a342d152c39adb2
Author: Markus Schmidt <schmidt at boomshop.net>
Date: Fri Oct 16 11:24:01 2009 +0200
Added 6 new LED's and peak hold function for VU-meters
diff --git a/gui/gui-compressor.xml b/gui/gui-compressor.xml
index 101bd03..4bf5caa 100644
--- a/gui/gui-compressor.xml
+++ b/gui/gui-compressor.xml
@@ -35,7 +35,7 @@
<table attach-x="0" attach-y="2" expand-y="0" expand-x="1" spacing="10" rows="1" cols="3">
<vbox expand-x="1" fill-x="1" expand="1" fill="1" attach-x="0" attach-y="0">
<label param="compression" />
- <vumeter param="compression" mode="2" />
+ <vumeter param="compression" mode="2" hold="2" />
</vbox>
<vbox shrink-x="1" expand-x="0" fill-x="0" expand="0" fill="0" attach-x="1" attach-y="0">
<label param="clip" expand="0" fill="0" />
@@ -43,7 +43,7 @@
</vbox>
<vbox expand-x="1" fill-x="1" expand="1" fill="1" attach-x="2" attach-y="0">
<label param="peak" />
- <vumeter param="peak" mode="0" shrink-y="0" />
+ <vumeter param="peak" mode="0" hold="2" shrink-y="0" />
</vbox>
</table>
<table attach-x="0" attach-y="3" expand-y="0" rows="1" cols="6" homogeneous="1" spacing="10">
@@ -51,31 +51,37 @@
<label param="attack" />
<knob param="attack" />
<value param="attack" />
+ <led param="peak" mode="2" expand="0" fill="0" />
</vbox>
<vbox expand="0" attach-x="1" attach-y="0">
<label param="release" />
<knob param="release" />
<value param="release" />
+ <led param="peak" mode="3" expand="0" fill="0" />
</vbox>
<vbox expand="0" attach-x="2" attach-y="0">
<label param="threshold" />
<knob param="threshold"/>
<value param="threshold" />
+ <led param="peak" mode="4" expand="0" fill="0" />
</vbox>
<vbox expand="0" attach-x="3" attach-y="0">
<label param="ratio" />
<knob param="ratio" />
<value param="ratio" />
+ <led param="peak" mode="5" expand="0" fill="0" />
</vbox>
<vbox expand="0" attach-x="4" attach-y="0">
<label param="makeup" />
<knob param="makeup" />
<value param="makeup" />
+ <led param="peak" mode="6" expand="0" fill="0" />
</vbox>
<vbox expand="0" attach-x="5" attach-y="0">
<label param="knee" />
<knob param="knee" />
<value param="knee" />
+ <led param="peak" mode="7" expand="0" fill="0" />
</vbox>
</table>
</table>
diff --git a/gui/gui-multibandcompressor.xml b/gui/gui-multibandcompressor.xml
index 091e5c6..301e2e0 100644
--- a/gui/gui-multibandcompressor.xml
+++ b/gui/gui-multibandcompressor.xml
@@ -7,8 +7,8 @@
</vbox>
<vbox shrink-x="1" expand-x="1" fill-x="1" expand="0" fill="0" attach-x="1" attach-y="0" pad-y="24">
<label param="meter_inL" />
- <vumeter param="meter_inL" mode="0" shrink-y="0" height="30" />
- <vumeter param="meter_inR" mode="0" shrink-y="0" height="30" />
+ <vumeter param="meter_inL" mode="0" hold="2" shrink-y="0" height="30" />
+ <vumeter param="meter_inR" mode="0" hold="2" shrink-y="0" height="30" />
<label param="meter_inR" />
</vbox>
<vbox shrink-x="1" expand-x="0" fill-x="0" expand="0" fill="0" attach-x="2" attach-y="0" pad-y="24">
@@ -70,14 +70,14 @@
</table>
<vbox shrink-x="1" expand-x="1" fill-x="1" expand="0" fill="0" attach-x="7" attach-y="0" pad-y="24">
<label param="meter_outL" />
- <vumeter param="meter_outL" mode="0" shrink-y="0" height="30" />
- <vumeter param="meter_outR" mode="0" shrink-y="0" height="30" />
+ <vumeter param="meter_outL" mode="0" hold="2" shrink-y="0" height="30" />
+ <vumeter param="meter_outR" mode="0" hold="2" shrink-y="0" height="30" />
<label param="meter_outR" />
</vbox>
<vbox shrink-x="1" expand-x="0" fill-x="0" expand="0" fill="0" attach-x="8" attach-y="0" pad-y="24">
<label param="clip_outL" expand="0" fill="0" />
- <led param="clip_outL" expand="0" fill="0" />
- <led param="clip_outR" expand="0" fill="0" />
+ <led param="clip_outL" expand="0" mode="1" fill="0" />
+ <led param="clip_outR" expand="0" mode="1" fill="0" />
<label param="clip_outR" expand="0" fill="0" />
</vbox>
<vbox shrink-x="1" expand-x="0" fill-x="0" expand="0" fill="0" attach-x="9" attach-y="0">
@@ -134,10 +134,10 @@
</table>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
<label param="compression0" />
- <vumeter param="compression0" mode="2" />
+ <vumeter param="compression0" mode="2" hold="2" />
</vbox>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
- <vumeter param="output0" mode="0" shrink-y="0" />
+ <vumeter param="output0" mode="0" hold="2" shrink-y="0" />
<label param="output0" />
</vbox>
<table expand-y="0" expand-x="1" cols="3" rows="1" spacing="5">
@@ -194,10 +194,10 @@
</table>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
<label param="compression1" />
- <vumeter param="compression1" mode="2" />
+ <vumeter param="compression1" mode="2" hold="2" />
</vbox>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
- <vumeter param="output1" mode="0" shrink-y="0" />
+ <vumeter param="output1" mode="0" hold="2" shrink-y="0" />
<label param="output1" />
</vbox>
<table expand-y="0" expand-x="1" cols="3" rows="1" spacing="5">
@@ -254,10 +254,10 @@
</table>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
<label param="compression2" />
- <vumeter param="compression2" mode="2" />
+ <vumeter param="compression2" mode="2" hold="2" />
</vbox>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
- <vumeter param="output2" mode="0" shrink-y="0" />
+ <vumeter param="output2" mode="0" hold="2" shrink-y="0" />
<label param="output2" />
</vbox>
<table expand-y="0" expand-x="1" cols="3" rows="1" spacing="5">
@@ -314,10 +314,10 @@
</table>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
<label param="compression3" />
- <vumeter param="compression3" mode="2" />
+ <vumeter param="compression3" mode="2" hold="2" />
</vbox>
<vbox expand-x="1" fill-x="1" expand="1" fill="1">
- <vumeter param="output3" mode="0" shrink-y="0" />
+ <vumeter param="output3" mode="0" hold="2" shrink-y="0" />
<label param="output3" />
</vbox>
<table expand-y="0" expand-x="1" cols="3" rows="1" spacing="5">
diff --git a/src/calf/ctl_led.h b/src/calf/ctl_led.h
index f57030d..2ab5aa9 100644
--- a/src/calf/ctl_led.h
+++ b/src/calf/ctl_led.h
@@ -37,7 +37,7 @@ struct CalfLed
{
GtkWidget parent;
int led_mode;
- gboolean led_state;
+ float led_value;
};
/// Class object for CalfLed
@@ -53,10 +53,10 @@ extern GtkWidget *calf_led_new();
extern GType calf_led_get_type();
/// Set LED state (true - lit, false - unlit)
-extern void calf_led_set_state(CalfLed *led, gboolean state);
+extern void calf_led_set_value(CalfLed *led, float value);
/// Get LED state (true - lit, false - unlit)
-extern gboolean calf_led_get_state(CalfLed *led);
+extern gboolean calf_led_get_value(CalfLed *led);
G_END_DECLS
diff --git a/src/calf/custom_ctl.h b/src/calf/custom_ctl.h
index 33f99fd..1016ac9 100644
--- a/src/calf/custom_ctl.h
+++ b/src/calf/custom_ctl.h
@@ -76,6 +76,10 @@ struct CalfVUMeter
GtkDrawingArea parent;
CalfVUMeterMode mode;
float value;
+ int vumeter_hold;
+ bool holding;
+ long last_hold;
+ float last_value;
cairo_surface_t *cache_surface;
};
diff --git a/src/ctl_led.cpp b/src/ctl_led.cpp
index 4eba021..6f3c90f 100644
--- a/src/ctl_led.cpp
+++ b/src/ctl_led.cpp
@@ -51,20 +51,72 @@ calf_led_expose (GtkWidget *widget, GdkEventExpose *event)
int yc = widget->allocation.height / 2;
cairo_pattern_t *pt = cairo_pattern_create_radial(xc, yc, 0, xc, yc, xc > yc ? xc : yc);
+
+ float value = self->led_value;
+
+ if(self->led_mode >= 4 && self->led_mode <= 5 && value > 1.f) {
+ value = 1.f;
+ }
switch (self->led_mode) {
default:
case 0:
- cairo_pattern_add_color_stop_rgb(pt, 0.0, self->led_state ? 0.2 : 0.0, self->led_state ? 1.0 : 0.25, self->led_state ? 1.0 : 0.5);
- cairo_pattern_add_color_stop_rgb(pt, 0.5, self->led_state ? 0.1 : 0.0, self->led_state ? 0.6 : 0.15, self->led_state ? 0.75 : 0.3);
- cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.0, self->led_state ? 0.3 : 0.1, self->led_state ? 0.5 : 0.2);
+ // blue-on/off
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, value > 0.f ? 0.2 : 0.0, value > 0.f ? 1.0 : 0.25, value > 0.f ? 1.0 : 0.5);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, value > 0.f ? 0.1 : 0.0, value > 0.f ? 0.6 : 0.15, value > 0.f ? 0.75 : 0.3);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.0, value > 0.f ? 0.3 : 0.1, value > 0.f ? 0.5 : 0.2);
break;
case 1:
- cairo_pattern_add_color_stop_rgb(pt, 0.0, self->led_state ? 1.0 : 0.5, self->led_state ? 0.5 : 0.0, self->led_state ? 0.2 : 0.0);
- cairo_pattern_add_color_stop_rgb(pt, 0.5, self->led_state ? 0.75 : 0.3, self->led_state ? 0.2 : 0.0, self->led_state ? 0.1 : 0.0);
- cairo_pattern_add_color_stop_rgb(pt, 1.0, self->led_state ? 0.5 : 0.2, self->led_state ? 0.1 : 0.0, 0.0);
+ // red-on/off
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, value > 0.f ? 1.0 : 0.5, value > 0.f ? 0.5 : 0.0, value > 0.f ? 0.2 : 0.0);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, value > 0.f ? 0.75 : 0.3, value > 0.f ? 0.2 : 0.0, value > 0.f ? 0.1 : 0.0);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, value > 0.f ? 0.5 : 0.2, value > 0.f ? 0.1 : 0.0, 0.0);
+ break;
+ case 2:
+ case 4:
+ // blue-dynamic (limited)
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, value * 0.2, value * 0.75 + 0.25, value * 0.5 + 0.5);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, value * 0.1, value * 0.45 + 0.15, value * 0.45 + 0.3);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.0, value * 0.2 + 0.1, value * 0.3 + 0.2);
+ break;
+ case 3:
+ case 5:
+ // red-dynamic (limited)
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, value * 0.5 + 0.5, value * 0.5, value * 0.2);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, value * 0.45 + 0.3, value * 0.2, value * 0.1);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, value * 0.3 + 0.2, value * 0.1, 0.0);
+ break;
+ case 6:
+ // blue-dynamic with red peak at >= 1.f
+ if(value < 1.0) {
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, value * 0.2, value * 0.75 + 0.25, value * 0.5 + 0.5);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, value * 0.1, value * 0.45 + 0.15, value * 0.45 + 0.3);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.0, value * 0.2 + 0.1, value * 0.3 + 0.2);
+ } else {
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, 1.0, 0.5, 0.2);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, 0.75, 0.2, 0.1);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.5, 0.1, 0.0);
+ }
+ break;
+ case 7:
+ // off @ 0.0, blue < 1.0, red @ 1.0
+ if(value < 1.f and value > 0.f) {
+ // blue
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, 0.2, 1.0, 1.0);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, 0.1, 0.6, 0.75);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.0, 0.3, 0.5);
+ } else if(value == 0.f) {
+ // off
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, 0.0, 0.25, 0.5);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, 0.0, 0.15, 0.3);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.0, 0.1, 0.2);
+ } else {
+ // red
+ cairo_pattern_add_color_stop_rgb(pt, 0.0, 1.0, 0.5, 0.2);
+ cairo_pattern_add_color_stop_rgb(pt, 0.5, 0.75, 0.2, 0.1);
+ cairo_pattern_add_color_stop_rgb(pt, 1.0, 0.5, 0.1, 0.0);
+ }
break;
}
-
cairo_rectangle(c, ox, oy, sx, sy);
cairo_set_source (c, pt);
cairo_fill(c);
@@ -146,23 +198,23 @@ calf_led_init (CalfLed *self)
{
// GtkWidget *widget = GTK_WIDGET(self);
// GTK_WIDGET_SET_FLAGS (widget, GTK_CAN_FOCUS);
- self->led_state = FALSE;
+ self->led_value = 0.f;
}
-void calf_led_set_state(CalfLed *led, gboolean state)
+void calf_led_set_value(CalfLed *led, float value)
{
- if (state != led->led_state)
+ if (value != led->led_value)
{
- led->led_state = state;
+ led->led_value = value;
GtkWidget *widget = GTK_WIDGET (led);
if (GTK_WIDGET_REALIZED(widget))
gtk_widget_queue_draw (widget);
}
}
-gboolean calf_led_get_state(CalfLed *led)
+gboolean calf_led_get_value(CalfLed *led)
{
- return led->led_state;
+ return led->led_value;
}
GType
diff --git a/src/custom_ctl.cpp b/src/custom_ctl.cpp
index d585605..9a18af0 100644
--- a/src/custom_ctl.cpp
+++ b/src/custom_ctl.cpp
@@ -484,15 +484,56 @@ calf_vumeter_expose (GtkWidget *widget, GdkEventExpose *event)
cairo_set_source_rgba( c, 0,0,0, 0.6 );
float value = vu->value > 1.f ? 1.f : vu->value;
- if( vu->mode == VU_MONOCHROME_REVERSE )
- cairo_rectangle( c, ox + 1,oy + 1, value * (sx - 2), sy - 2);
- else
- cairo_rectangle( c, ox + 1 + value * (sx - 2), oy + 1, (sx - 2) * (1 - value), sy - 2 );
+ if(vu->vumeter_hold > 0) {
+ // peak hold timer
+ time_t t = time(NULL);
+ if((long)t - (long)vu->vumeter_hold > (long)vu->last_hold) {
+ // time's up, reset
+ vu->last_value = value;
+ vu->last_hold = (long)t;
+ vu->holding = false;
+ }
+
+ if( vu->mode == VU_MONOCHROME_REVERSE ) {
+ if(value < vu->last_value) {
+ // value is above peak hold
+ vu->last_value = value;
+ vu->last_hold = (long)t;
+ vu->holding = true;
+ }
+ int hpx = round(vu->last_value * (sx - 2));
+ hpx = hpx + (1 - (hpx + 1) % 3);
+ int vpx = round((1 - value) * (sx - 2));
+ vpx = vpx + (1 - (vpx + 1) % 3);
+ int widthA = std::min(3 + hpx, (sx - 2));
+ int widthB = std::min(std::max((sx - 2) - vpx - 3 - hpx, 0), (sx - 2));
+ cairo_rectangle( c, ox + 1, oy + 1, hpx, sy - 2);
+ cairo_rectangle( c, ox + 1 + widthA, oy + 1, widthB, sy - 2);
+ } else {
+ if(value > vu->last_value) {
+ // value is above peak hold
+ vu->last_value = value;
+ vu->last_hold = (long)t;
+ vu->holding = true;
+ }
+ int hpx = round((1 - vu->last_value) * (sx - 2));
+ hpx = hpx + (1 - (hpx + 1) % 3);
+ int vpx = round(value * (sx - 2));
+ vpx = vpx + (1 - (vpx + 1) % 3);
+ int width = std::min(std::max((sx - 2) - vpx - 3 - hpx, 0), (sx - 2));
+ cairo_rectangle( c, ox + 1 + vpx, oy + 1, width, sy - 2);
+ cairo_rectangle( c, ox + 1 + (sx - 2) - hpx, oy + 1, hpx, sy - 2);
+ }
+ } else {
+ // darken normally
+ if( vu->mode == VU_MONOCHROME_REVERSE )
+ cairo_rectangle( c, ox + 1,oy + 1, value * (sx - 2), sy - 2);
+ else
+ cairo_rectangle( c, ox + 1 + value * (sx - 2), oy + 1, (sx - 2) * (1 - value), sy - 2 );
+ }
cairo_fill( c );
-
cairo_destroy(c);
-
gtk_paint_shadow(widget->style, widget->window, GTK_STATE_NORMAL, GTK_SHADOW_IN, NULL, widget, NULL, ox - 2, oy - 2, sx + 4, sy + 4);
//printf("exposed %p %d+%d\n", widget->window, widget->allocation.x, widget->allocation.y);
@@ -542,6 +583,9 @@ calf_vumeter_init (CalfVUMeter *self)
widget->requisition.width = 50;
widget->requisition.height = 16;
self->value = 0.5;
+ self->last_hold = 0.f;
+ self->last_value = 0.f;
+ self->holding = false;
self->cache_surface = NULL;
}
@@ -589,7 +633,7 @@ calf_vumeter_get_type (void)
extern void calf_vumeter_set_value(CalfVUMeter *meter, float value)
{
- if (value != meter->value)
+ if (value != meter->value or meter->holding)
{
meter->value = value;
gtk_widget_queue_draw(GTK_WIDGET(meter));
diff --git a/src/gui_controls.cpp b/src/gui_controls.cpp
index 469fb89..2e27311 100644
--- a/src/gui_controls.cpp
+++ b/src/gui_controls.cpp
@@ -304,6 +304,7 @@ GtkWidget *vumeter_param_control::create(plugin_gui *_gui, int _param_no)
// parameter_properties &props = get_props();
widget = calf_vumeter_new ();
calf_vumeter_set_mode (CALF_VUMETER (widget), (CalfVUMeterMode)get_int("mode", 0));
+ CALF_VUMETER(widget)->vumeter_hold = get_int("hold", 0);
return widget;
}
@@ -331,7 +332,7 @@ void led_param_control::set()
{
_GUARD_CHANGE_
// parameter_properties &props = get_props();
- calf_led_set_state (CALF_LED (widget), gui->plugin->get_param_value(param_no) > 0);
+ calf_led_set_value (CALF_LED (widget), gui->plugin->get_param_value(param_no));
if (label)
update_label();
}
diff --git a/src/main_win.cpp b/src/main_win.cpp
index 34369b7..b7b2531 100644
--- a/src/main_win.cpp
+++ b/src/main_win.cpp
@@ -405,7 +405,7 @@ gboolean main_window::on_idle(void *data)
calf_vumeter_set_value(CALF_VUMETER(strip->audio_out[1]), LVL(plugin->get_level(idx++)));
}
if (plugin->get_midi()) {
- calf_led_set_state (CALF_LED (strip->midi_in), plugin->get_level(idx++) > 0.f);
+ calf_led_set_value (CALF_LED (strip->midi_in), plugin->get_level(idx++));
}
}
}
diff --git a/src/modules.cpp b/src/modules.cpp
index a697dbd..bc15225 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -225,7 +225,7 @@ CALF_PORT_PROPS(compressor) = {
{ 0, 0, 4, 0, PF_ENUM | PF_CTL_COMBO, compressor_weighting_names, "aweighting", "Weighting" },
{ 0, 0.03125, 1, 0, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_METER | PF_CTLO_LABEL | PF_CTLO_REVERSE | PF_UNIT_DB | PF_PROP_OUTPUT | PF_PROP_OPTIONAL| PF_PROP_GRAPH, NULL, "compression", "Compression" },
{ 0, 0, 1, 0, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_METER | PF_CTLO_LABEL | PF_UNIT_DB | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "peak", "Peak Output" },
- { 0, 0, 1, 0, PF_BOOL | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip", "0dB" },
+ { 0, 0, 1, 0, PF_FLOAT | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip", "0dB" },
{ 0, 0, 1, 0, PF_BOOL | PF_CTL_TOGGLE, NULL, "bypass", "Bypass" },
// { 2000, 10,20000, 0, PF_FLOAT | PF_SCALE_LOG | PF_CTL_KNOB | PF_UNIT_HZ | PF_PROP_GRAPH, NULL, "deess_freq", "Frequency" },
// { 0.707, 0.707, 32, 0, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_KNOB | PF_UNIT_COEF, NULL, "deess_res", "Q" },
@@ -247,10 +247,10 @@ CALF_PORT_PROPS(multibandcompressor) = {
{ 0, 0, 1, 0, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_METER | PF_CTLO_LABEL | PF_UNIT_DB | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "meter_inR", "Input R" },
{ 0, 0, 1, 0, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_METER | PF_CTLO_LABEL | PF_UNIT_DB | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "meter_outL", "Output L" },
{ 0, 0, 1, 0, PF_FLOAT | PF_SCALE_GAIN | PF_CTL_METER | PF_CTLO_LABEL | PF_UNIT_DB | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "meter_outR", "Output R" },
- { 0, 0, 1, 0, PF_BOOL | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_inL", "0dB" },
- { 0, 0, 1, 0, PF_BOOL | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_inR", "0dB" },
- { 0, 0, 1, 0, PF_BOOL | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_outL", "0dB" },
- { 0, 0, 1, 0, PF_BOOL | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_outR", "0dB" },
+ { 0, 0, 1, 0, PF_FLOAT | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_inL", "0dB" },
+ { 0, 0, 1, 0, PF_FLOAT | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_inR", "0dB" },
+ { 0, 0, 1, 0, PF_FLOAT | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_outL", "0dB" },
+ { 0, 0, 1, 0, PF_FLOAT | PF_CTL_LED | PF_PROP_OUTPUT | PF_PROP_OPTIONAL, NULL, "clip_outR", "0dB" },
{ 100, 10, 20000, 0, PF_FLOAT | PF_SCALE_LOG | PF_CTL_KNOB | PF_UNIT_HZ | PF_PROP_GRAPH, NULL, "freq0", "Split 1/2" },
{ 1000, 10, 20000, 0, PF_FLOAT | PF_SCALE_LOG | PF_CTL_KNOB | PF_UNIT_HZ | PF_PROP_GRAPH, NULL, "freq1", "Split 2/3" },
--
calf audio plugins packaging
More information about the pkg-multimedia-commits
mailing list