diff options
-rw-r--r-- | src/server/ingen_lv2.cpp | 6 |
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; |