calf: update to latest source
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
This commit is contained in:
@@ -9,9 +9,8 @@ LIC_FILES_CHKSUM = " \
|
||||
SRC_URI = " \
|
||||
git://github.com/calf-studio-gear/calf.git \
|
||||
file://0001-Do-store-calfmakerdf-commandline-for-later-use-in-qe.patch \
|
||||
file://0002-fluidsynth-port-to-API-for-fluidsynth-version-2.0.0.patch \
|
||||
"
|
||||
SRCREV = "cd53de64cca49e04dc1773c39cda58dd0ba49452"
|
||||
SRCREV = "e5c08dc2483c444d18d24a37c395274002320f5c"
|
||||
S = "${WORKDIR}/git"
|
||||
PV = "0.90.1"
|
||||
|
||||
|
||||
@@ -1,73 +0,0 @@
|
||||
From bba03b6080dc198f3513b5c29fe1ba4ff9e4aa59 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Wed, 10 Oct 2018 00:22:46 +0200
|
||||
Subject: [PATCH] fluidsynth: port to API for fluidsynth version > 2.0.0
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Build tested with fluidsynth 1.1.11 and 2.0.1
|
||||
|
||||
Upstream-Status: Submitted [1]
|
||||
|
||||
[1] https://github.com/calf-studio-gear/calf/pull/203
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
src/fluidsynth.cpp | 25 +++++++++++++++++++++++++
|
||||
1 file changed, 25 insertions(+)
|
||||
|
||||
diff --git a/src/fluidsynth.cpp b/src/fluidsynth.cpp
|
||||
index c5d307d7..54023dc8 100644
|
||||
--- a/src/fluidsynth.cpp
|
||||
+++ b/src/fluidsynth.cpp
|
||||
@@ -74,6 +74,7 @@ fluid_synth_t *fluidsynth_audio_module::create_synth(int &new_sfid)
|
||||
new_sfid = sid;
|
||||
|
||||
fluid_sfont_t* sfont = fluid_synth_get_sfont(s, 0);
|
||||
+#if FLUIDSYNTH_VERSION_MAJOR < 2
|
||||
soundfont_name = (*sfont->get_name)(sfont);
|
||||
|
||||
sfont->iteration_start(sfont);
|
||||
@@ -92,6 +93,26 @@ fluid_synth_t *fluidsynth_audio_module::create_synth(int &new_sfid)
|
||||
if (first_preset == -1)
|
||||
first_preset = id;
|
||||
}
|
||||
+#else
|
||||
+ soundfont_name = fluid_sfont_get_name(sfont);
|
||||
+
|
||||
+ fluid_sfont_iteration_start(sfont);
|
||||
+
|
||||
+ string preset_list;
|
||||
+ fluid_preset_t* tmp;
|
||||
+ int first_preset = -1;
|
||||
+ while((tmp = fluid_sfont_iteration_next(sfont)))
|
||||
+ {
|
||||
+ string pname = fluid_preset_get_name(tmp);
|
||||
+ int bank = fluid_preset_get_banknum(tmp);
|
||||
+ int num = fluid_preset_get_num(tmp);
|
||||
+ int id = num + 128 * bank;
|
||||
+ sf_preset_names[id] = pname;
|
||||
+ preset_list += calf_utils::i2s(id) + "\t" + pname + "\n";
|
||||
+ if (first_preset == -1)
|
||||
+ first_preset = id;
|
||||
+ }
|
||||
+#endif
|
||||
if (first_preset != -1)
|
||||
{
|
||||
fluid_synth_bank_select(s, 0, first_preset >> 7);
|
||||
@@ -134,7 +155,11 @@ void fluidsynth_audio_module::update_preset_num(int channel)
|
||||
{
|
||||
fluid_preset_t *p = fluid_synth_get_channel_preset(synth, channel);
|
||||
if (p)
|
||||
+#if FLUIDSYNTH_VERSION_MAJOR < 2
|
||||
last_selected_presets[channel] = p->get_num(p) + 128 * p->get_banknum(p);
|
||||
+#else
|
||||
+ last_selected_presets[channel] = fluid_preset_get_num(p) + 128 * fluid_preset_get_banknum(p);
|
||||
+#endif
|
||||
else
|
||||
last_selected_presets[channel] = -1;
|
||||
status_serial++;
|
||||
--
|
||||
2.14.4
|
||||
|
||||
Reference in New Issue
Block a user