summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/server/ingen_lv2.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/ingen_lv2.cpp b/src/server/ingen_lv2.cpp
index c868bf76..aadb0914 100644
--- a/src/server/ingen_lv2.cpp
+++ b/src/server/ingen_lv2.cpp
@@ -98,9 +98,13 @@ public:
return;
}
- if (_patch_port->is_a(PortType::AUDIO)) {
+ if (_patch_port->is_a(PortType::AUDIO) ||
+ _patch_port->is_a(PortType::CV)) {
AudioBuffer* patch_buf = (AudioBuffer*)_patch_port->buffer(0).get();
patch_buf->copy((Sample*)_buffer, 0, context.nframes() - 1);
+ } else if (_patch_port->is_a(PortType::CONTROL)) {
+ AudioBuffer* patch_buf = (AudioBuffer*)_patch_port->buffer(0).get();
+ patch_buf->copy((Sample*)_buffer, 0, 0);
} else {
LV2_Atom_Sequence* seq = (LV2_Atom_Sequence*)_buffer;
bool enqueued = false;