[packages/calf] actually include the fluidsynth2.patch

jajcus jajcus at pld-linux.org
Mon Nov 19 20:53:44 CET 2018


commit e7866101fb31a30088209f4a637a6d67dedce276
Author: Jacek Konieczny <jajcus at jajcus.net>
Date:   Mon Nov 19 20:53:28 2018 +0100

    actually include the fluidsynth2.patch

 fluidsynth2.patch | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)
---
diff --git a/fluidsynth2.patch b/fluidsynth2.patch
new file mode 100644
index 0000000..083b1e9
--- /dev/null
+++ b/fluidsynth2.patch
@@ -0,0 +1,66 @@
+From bba03b6080dc198f3513b5c29fe1ba4ff9e4aa59 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at 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
+
+Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
+---
+ src/fluidsynth.cpp | 25 +++++++++++++++++++++++++
+ 1 file changed, 25 insertions(+)
+
+diff --git a/src/fluidsynth.cpp b/src/fluidsynth.cpp
+index c5d307d76..54023dc8b 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++;
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/calf.git/commitdiff/e7866101fb31a30088209f4a637a6d67dedce276



More information about the pld-cvs-commit mailing list