1499fe8af5
- Add patches from upstream to fix build with fluidsynth 2.2 * 0001-FLUIDSYNTH-Make-FluidSynth-logging-less-noisy-by-default.patch * 0002-FLUIDSYNTH-Swapped-debug-levels-for-FLUID_WARN-and-FLUID_INFO.patch * 0003-FLUIDSYNTH-Fix-build.patch * 0004-AUDIO-Fix-compilation-with-Fluidsynth2.patch * 0005-FLUIDSYNTH-Simplify-FluidSynth-version-check.patch * 0006-FLUIDSYNTH-Fix-compilation-with-Fluidsynth-2.2.patch OBS-URL: https://build.opensuse.org/request/show/886072 OBS-URL: https://build.opensuse.org/package/show/games/scummvm?expand=0&rev=65
109 lines
3.8 KiB
Diff
109 lines
3.8 KiB
Diff
From d0d38b0199dae9a1dbfecc53db54dd0a070694b4 Mon Sep 17 00:00:00 2001
|
|
From: Le Philousophe <lephilousophe@users.noreply.github.com>
|
|
Date: Mon, 5 Apr 2021 12:23:26 +0200
|
|
Subject: [PATCH] FLUIDSYNTH: Fix compilation with Fluidsynth 2.2
|
|
|
|
We replace deprecated functions as well
|
|
---
|
|
audio/softsynth/fluidsynth.cpp | 43 ++++++++++++++++++++++++++++++++++
|
|
1 file changed, 43 insertions(+)
|
|
|
|
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
|
|
index e770fb68543b..f01dd8c7362b 100644
|
|
--- a/audio/softsynth/fluidsynth.cpp
|
|
+++ b/audio/softsynth/fluidsynth.cpp
|
|
@@ -180,11 +180,19 @@ static void *SoundFontMemLoader_open(const char *filename) {
|
|
return p;
|
|
}
|
|
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+static int SoundFontMemLoader_read(void *buf, fluid_long_long_t count, void *handle) {
|
|
+#else
|
|
static int SoundFontMemLoader_read(void *buf, int count, void *handle) {
|
|
+#endif
|
|
return ((Common::SeekableReadStream *) handle)->read(buf, count) == (uint32)count ? FLUID_OK : FLUID_FAILED;
|
|
}
|
|
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+static int SoundFontMemLoader_seek(void *handle, fluid_long_long_t offset, int origin) {
|
|
+#else
|
|
static int SoundFontMemLoader_seek(void *handle, long offset, int origin) {
|
|
+#endif
|
|
return ((Common::SeekableReadStream *) handle)->seek(offset, origin) ? FLUID_OK : FLUID_FAILED;
|
|
}
|
|
|
|
@@ -193,7 +201,11 @@ static int SoundFontMemLoader_close(void *handle) {
|
|
return FLUID_OK;
|
|
}
|
|
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+static fluid_long_long_t SoundFontMemLoader_tell(void *handle) {
|
|
+#else
|
|
static long SoundFontMemLoader_tell(void *handle) {
|
|
+#endif
|
|
return ((Common::SeekableReadStream *) handle)->pos();
|
|
}
|
|
#endif
|
|
@@ -237,7 +249,11 @@ int MidiDriver_FluidSynth::open() {
|
|
_synth = new_fluid_synth(_settings);
|
|
|
|
if (ConfMan.getBool("fluidsynth_chorus_activate")) {
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+ fluid_synth_chorus_on(_synth, -1, 1);
|
|
+#else
|
|
fluid_synth_set_chorus_on(_synth, 1);
|
|
+#endif
|
|
|
|
int chorusNr = ConfMan.getInt("fluidsynth_chorus_nr");
|
|
double chorusLevel = (double)ConfMan.getInt("fluidsynth_chorus_level") / 100.0;
|
|
@@ -252,22 +268,49 @@ int MidiDriver_FluidSynth::open() {
|
|
chorusType = FLUID_CHORUS_MOD_TRIANGLE;
|
|
}
|
|
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+ fluid_synth_set_chorus_group_nr(_synth, -1, chorusNr);
|
|
+ fluid_synth_set_chorus_group_level(_synth, -1, chorusLevel);
|
|
+ fluid_synth_set_chorus_group_speed(_synth, -1, chorusSpeed);
|
|
+ fluid_synth_set_chorus_group_depth(_synth, -1, chorusDepthMs);
|
|
+ fluid_synth_set_chorus_group_type(_synth, -1, chorusType);
|
|
+#else
|
|
fluid_synth_set_chorus(_synth, chorusNr, chorusLevel, chorusSpeed, chorusDepthMs, chorusType);
|
|
+#endif
|
|
} else {
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+ fluid_synth_chorus_on(_synth, -1, 0);
|
|
+#else
|
|
fluid_synth_set_chorus_on(_synth, 0);
|
|
+#endif
|
|
}
|
|
|
|
if (ConfMan.getBool("fluidsynth_reverb_activate")) {
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+ fluid_synth_reverb_on(_synth, -1, 1);
|
|
+#else
|
|
fluid_synth_set_reverb_on(_synth, 1);
|
|
+#endif
|
|
|
|
double reverbRoomSize = (double)ConfMan.getInt("fluidsynth_reverb_roomsize") / 100.0;
|
|
double reverbDamping = (double)ConfMan.getInt("fluidsynth_reverb_damping") / 100.0;
|
|
int reverbWidth = ConfMan.getInt("fluidsynth_reverb_width");
|
|
double reverbLevel = (double)ConfMan.getInt("fluidsynth_reverb_level") / 100.0;
|
|
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+ fluid_synth_set_reverb_group_roomsize(_synth, -1, reverbRoomSize);
|
|
+ fluid_synth_set_reverb_group_damp(_synth, -1, reverbDamping);
|
|
+ fluid_synth_set_reverb_group_width(_synth, -1, reverbWidth);
|
|
+ fluid_synth_set_reverb_group_level(_synth, -1, reverbLevel);
|
|
+#else
|
|
fluid_synth_set_reverb(_synth, reverbRoomSize, reverbDamping, reverbWidth, reverbLevel);
|
|
+#endif
|
|
} else {
|
|
+#if FS_API_VERSION >= 0x0202
|
|
+ fluid_synth_reverb_on(_synth, -1, 0);
|
|
+#else
|
|
fluid_synth_set_reverb_on(_synth, 0);
|
|
+#endif
|
|
}
|
|
|
|
Common::String interpolation = ConfMan.get("fluidsynth_misc_interpolation");
|