From 0e048dee411cc20beb2a8667e5bb339f9b7fb939 Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Sat, 17 May 2014 21:27:52 +0200 Subject: New resample feature on output channels. --- lv2/Makefile.am | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'lv2') diff --git a/lv2/Makefile.am b/lv2/Makefile.am index a714dce..9939131 100644 --- a/lv2/Makefile.am +++ b/lv2/Makefile.am @@ -3,12 +3,6 @@ if ENABLE_LV2 include $(top_srcdir)/plugingui/Makefile.am.plugingui include $(top_srcdir)/src/Makefile.am.drumgizmo -AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/plugingui \ - -I$(top_srcdir)/include $(SNDFILE_CXXFLAGS) \ - $(PTHREAD_CFLAGS) $(EXPAT_CFLAGS) $(LV2_CFLAGS) \ - $(PLUGIN_GUI_CFLAGS) $(SSEFLAGS)\ - -DUSE_THREAD $(SAMPLERATE_CFLAGS) - plugindir = $(prefix)/lib/lv2/drumgizmo.lv2 plugin_LTLIBRARIES = drumgizmo.la plugin_DATA = manifest.ttl drumgizmo.ttl @@ -21,6 +15,12 @@ EXTRA_DIST = \ lv2_gui.h \ lv2_instance.h +drumgizmo_la_CXXFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/include $(SNDFILE_CXXFLAGS) \ + $(PTHREAD_CFLAGS) $(EXPAT_CFLAGS) $(LV2_CFLAGS) \ + $(PLUGIN_GUI_CFLAGS) $(SSEFLAGS) $(ZITA_CPPFLAGS) \ + -DUSE_THREAD $(SAMPLERATE_CFLAGS) + drumgizmo_la_SOURCES = \ $(DRUMGIZMO_SOURCES) \ $(PLUGIN_GUI_SOURCES) \ -- cgit v1.2.3 From 5fbec7c02c6677d701675bfcfd529bb646b4bea8 Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Sat, 4 Oct 2014 17:31:19 +0200 Subject: Add samplerate() method to lv2 output engine. --- lv2/lv2.cc | 2 +- lv2/output_lv2.cc | 22 ++++++---------------- lv2/output_lv2.h | 6 +++++- 3 files changed, 12 insertions(+), 18 deletions(-) (limited to 'lv2') diff --git a/lv2/lv2.cc b/lv2/lv2.cc index 3aeb5f0..9ec7706 100644 --- a/lv2/lv2.cc +++ b/lv2/lv2.cc @@ -248,7 +248,7 @@ LV2_Handle instantiate(const struct _LV2_Descriptor *descriptor, dg_descriptor.get_pci = dg_get_pci; dglv2->in = new InputLV2(); - dglv2->out = new OutputLV2(); + dglv2->out = new OutputLV2(sample_rate); dglv2->buffer = NULL; dglv2->buffer_size = 0; diff --git a/lv2/output_lv2.cc b/lv2/output_lv2.cc index 8187a5a..b4a6877 100644 --- a/lv2/output_lv2.cc +++ b/lv2/output_lv2.cc @@ -28,8 +28,9 @@ #include -OutputLV2::OutputLV2() +OutputLV2::OutputLV2(double sample_rate) { + this->sample_rate = sample_rate; for(size_t i = 0; i < NUM_OUTPUTS; i++) { outputPorts[i].size = 0; outputPorts[i].samples = NULL; @@ -83,19 +84,8 @@ sample_t *OutputLV2::getBuffer(int ch) return NULL; } -#ifdef TEST_OUTPUT_LV2 -//Additional dependency files -//deps: -//Required cflags (autoconf vars may be used) -//cflags: -//Required link options (autoconf vars may be used) -//libs: -#include "test.h" - -TEST_BEGIN; - -// TODO: Put some testcode here (see test.h for usable macros). - -TEST_END; +size_t OutputLV2::samplerate() +{ + return sample_rate; +} -#endif/*TEST_OUTPUT_LV2*/ diff --git a/lv2/output_lv2.h b/lv2/output_lv2.h index 1b4e8c9..272a78c 100644 --- a/lv2/output_lv2.h +++ b/lv2/output_lv2.h @@ -39,7 +39,7 @@ public: class OutputLV2 : public AudioOutputEngine { public: - OutputLV2(); + OutputLV2(double sample_rate); ~OutputLV2(); bool init(Channels channels); @@ -54,9 +54,13 @@ public: void post(size_t nsamples); sample_t *getBuffer(int c); + + size_t samplerate(); // sample_t *outputPort[NUM_OUTPUTS]; OutputPort outputPorts[NUM_OUTPUTS]; + + double sample_rate; }; #endif/*__DRUMGIZMO_OUTPUT_LV2_H__*/ -- cgit v1.2.3 From b49dd62df721b2d965c995e69340b085d3489bf6 Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Thu, 16 Oct 2014 19:14:00 +0200 Subject: Quick and dirty fix for LV2 UI crash. --- lv2/lv2_gui.cc | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'lv2') diff --git a/lv2/lv2_gui.cc b/lv2/lv2_gui.cc index 7b56c5b..625c7f7 100644 --- a/lv2/lv2_gui.cc +++ b/lv2/lv2_gui.cc @@ -120,24 +120,31 @@ struct DG_GUI { static void ui_run(struct lv2_external_ui * _this_) { + //printf("ui_run begin\n"); fflush(stdout); struct DG_GUI *dggui = (struct DG_GUI *)_this_; dggui->gui->processEvents(); + //printf("ui_run end\n"); fflush(stdout); } static void ui_show(struct lv2_external_ui * _this_) { + //printf("ui_show begin\n"); fflush(stdout); struct DG_GUI *dggui = (struct DG_GUI *)_this_; dggui->gui->show(); + //printf("ui_show end\n"); fflush(stdout); } static void ui_hide(struct lv2_external_ui * _this_) { + //printf("ui_hide begin\n"); fflush(stdout); struct DG_GUI *dggui = (struct DG_GUI *)_this_; if(dggui->gui) dggui->gui->hide(); + //printf("ui_hide end\n"); fflush(stdout); } static void closeHandler(void *ptr) { + //printf("closeHandler begin\n"); fflush(stdout); struct DG_GUI *gui = (struct DG_GUI *)ptr; if(gui->ui_host_ptr && gui->ui_host_ptr->ui_closed) { @@ -146,6 +153,7 @@ static void closeHandler(void *ptr) delete gui->gui; gui->gui = NULL; + //printf("closeHandler end\n"); fflush(stdout); } static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, @@ -156,7 +164,7 @@ static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, LV2UI_Widget * widget, const LV2_Feature * const * features) { - printf("ui_instantiate\n"); + //printf("ui_instantiate begin\n"); fflush(stdout); struct DG_GUI* pt = new struct DG_GUI; @@ -167,7 +175,7 @@ static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, std::string uri = (*features)->URI; void *data = (*features)->data; - printf("DGUI: feature: %s\n", uri.c_str()); + //printf("DGUI: feature: %s\n", uri.c_str()); if(uri == LV2_INSTANCE_ACCESS_URI) { pt->instance_handle = data; @@ -195,6 +203,8 @@ static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, *widget = (LV2UI_Widget)pt; + //printf("ui_instantiate end\n"); fflush(stdout); + return pt; } -- cgit v1.2.3 From 7f515019b2668cab22b6d12766f136334d9e26dc Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Fri, 17 Oct 2014 11:38:52 +0200 Subject: Remove debug. --- lv2/lv2_gui.cc | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) (limited to 'lv2') diff --git a/lv2/lv2_gui.cc b/lv2/lv2_gui.cc index 625c7f7..7b56c5b 100644 --- a/lv2/lv2_gui.cc +++ b/lv2/lv2_gui.cc @@ -120,31 +120,24 @@ struct DG_GUI { static void ui_run(struct lv2_external_ui * _this_) { - //printf("ui_run begin\n"); fflush(stdout); struct DG_GUI *dggui = (struct DG_GUI *)_this_; dggui->gui->processEvents(); - //printf("ui_run end\n"); fflush(stdout); } static void ui_show(struct lv2_external_ui * _this_) { - //printf("ui_show begin\n"); fflush(stdout); struct DG_GUI *dggui = (struct DG_GUI *)_this_; dggui->gui->show(); - //printf("ui_show end\n"); fflush(stdout); } static void ui_hide(struct lv2_external_ui * _this_) { - //printf("ui_hide begin\n"); fflush(stdout); struct DG_GUI *dggui = (struct DG_GUI *)_this_; if(dggui->gui) dggui->gui->hide(); - //printf("ui_hide end\n"); fflush(stdout); } static void closeHandler(void *ptr) { - //printf("closeHandler begin\n"); fflush(stdout); struct DG_GUI *gui = (struct DG_GUI *)ptr; if(gui->ui_host_ptr && gui->ui_host_ptr->ui_closed) { @@ -153,7 +146,6 @@ static void closeHandler(void *ptr) delete gui->gui; gui->gui = NULL; - //printf("closeHandler end\n"); fflush(stdout); } static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, @@ -164,7 +156,7 @@ static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, LV2UI_Widget * widget, const LV2_Feature * const * features) { - //printf("ui_instantiate begin\n"); fflush(stdout); + printf("ui_instantiate\n"); struct DG_GUI* pt = new struct DG_GUI; @@ -175,7 +167,7 @@ static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, std::string uri = (*features)->URI; void *data = (*features)->data; - //printf("DGUI: feature: %s\n", uri.c_str()); + printf("DGUI: feature: %s\n", uri.c_str()); if(uri == LV2_INSTANCE_ACCESS_URI) { pt->instance_handle = data; @@ -203,8 +195,6 @@ static LV2UI_Handle ui_instantiate(const struct _LV2UI_Descriptor * descriptor, *widget = (LV2UI_Widget)pt; - //printf("ui_instantiate end\n"); fflush(stdout); - return pt; } -- cgit v1.2.3 From 618ccf981bf16e848912cf8c4d72f58c7134642a Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Mon, 3 Nov 2014 18:55:03 +0100 Subject: Use Drumgizmo::setSamplerate to control resampler target samplerate. --- lv2/lv2.cc | 2 +- lv2/output_lv2.cc | 9 +-------- lv2/output_lv2.h | 4 +--- 3 files changed, 3 insertions(+), 12 deletions(-) (limited to 'lv2') diff --git a/lv2/lv2.cc b/lv2/lv2.cc index 9ec7706..3aeb5f0 100644 --- a/lv2/lv2.cc +++ b/lv2/lv2.cc @@ -248,7 +248,7 @@ LV2_Handle instantiate(const struct _LV2_Descriptor *descriptor, dg_descriptor.get_pci = dg_get_pci; dglv2->in = new InputLV2(); - dglv2->out = new OutputLV2(sample_rate); + dglv2->out = new OutputLV2(); dglv2->buffer = NULL; dglv2->buffer_size = 0; diff --git a/lv2/output_lv2.cc b/lv2/output_lv2.cc index b4a6877..ef2500b 100644 --- a/lv2/output_lv2.cc +++ b/lv2/output_lv2.cc @@ -28,9 +28,8 @@ #include -OutputLV2::OutputLV2(double sample_rate) +OutputLV2::OutputLV2() { - this->sample_rate = sample_rate; for(size_t i = 0; i < NUM_OUTPUTS; i++) { outputPorts[i].size = 0; outputPorts[i].samples = NULL; @@ -83,9 +82,3 @@ sample_t *OutputLV2::getBuffer(int ch) if(ch < NUM_OUTPUTS) return outputPorts[ch].samples; return NULL; } - -size_t OutputLV2::samplerate() -{ - return sample_rate; -} - diff --git a/lv2/output_lv2.h b/lv2/output_lv2.h index 272a78c..c23cf2f 100644 --- a/lv2/output_lv2.h +++ b/lv2/output_lv2.h @@ -39,7 +39,7 @@ public: class OutputLV2 : public AudioOutputEngine { public: - OutputLV2(double sample_rate); + OutputLV2(); ~OutputLV2(); bool init(Channels channels); @@ -59,8 +59,6 @@ public: // sample_t *outputPort[NUM_OUTPUTS]; OutputPort outputPorts[NUM_OUTPUTS]; - - double sample_rate; }; #endif/*__DRUMGIZMO_OUTPUT_LV2_H__*/ -- cgit v1.2.3 From fc26537a907497eaf60aac0235e813fe8a26b23a Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Mon, 3 Nov 2014 18:58:11 +0100 Subject: Use Drumgizmo::setSamplerate to control resampler target samplerate. --- lv2/output_lv2.h | 2 -- 1 file changed, 2 deletions(-) (limited to 'lv2') diff --git a/lv2/output_lv2.h b/lv2/output_lv2.h index c23cf2f..1b4e8c9 100644 --- a/lv2/output_lv2.h +++ b/lv2/output_lv2.h @@ -54,8 +54,6 @@ public: void post(size_t nsamples); sample_t *getBuffer(int c); - - size_t samplerate(); // sample_t *outputPort[NUM_OUTPUTS]; OutputPort outputPorts[NUM_OUTPUTS]; -- cgit v1.2.3