Replace Fluidsynth with FluidLite #150
Labels
No Label
RGSS accuracy
bug
compilation
discussion
documentation
duplicate
enhancement
invalid
performance issue
port request
question
ruby incompatibility
wontfix
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: MapleShrine/mkxp#150
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Dear Jonas,
The current MKXP already has MIDI support through Fluidsynth. But Fluidsynth is known for having complicated dependency with GLib and also little bit heavy. My suggestion is you may use FluidLite as the alternative. Currently FluidLite offers some advantages over its big brother, such as:
I am not a programmer, so I am not really sure how hard to implement it in MKXP, but it seems it will give good benefit for MKXP, especially for Android port.
Best regards,
RyanBram
Thank you Ryan. I was quite surprised, FluidLite seems like a really good candidate for a fluidsynth replacement, I'm very happy that other people saw the same need for a bare bones synthesizer library and actually had the knowledge to make it (or fork and strip it down, I should say). It also kept all symbol names from flluidsynth, which is nice.
I don't have time to put into this right now, but it should in theory be a very painless transition.
Actually, since FluidLite kept all the symbol names the same, I wouldn't be surprised if a current mkxp build could just go ahead and dlopen() libfluidlite instead of libfluidsynth and not even notice the difference. Have you tried that out?
Hi, Jonas
Unfortunately my own laptop doesn't have enough power horse for setting build environment. But if there is a chance I'll try myself to check it in my office computer.
Looking into this myself, since I can't compile mkxp with midi support without building fluidsynth for mingw, seems his project is not currently configured to create a shared library, only static.
Hi guys,
I confirm FluidLite is 100% compatible with FluidSynth (at least for all the core functionalities). It's now also the official replacement for FluidSynth in VLC 3.
I'm not super good at tweaking CMake files but if you want to propose a patch to make it able to compile as shared library, feel free to do so.
Got a shared libfluidlite.dll to build, doesn't seem to want to link against it:
Ah, I was misunderstanding what SHARED_FLUID meant... that's not the dlopen'd one.
I actually managed to produce a static linked version (shared required ogg and vorbis dlls to work, even though they were static linked into mkxp.exe) of mkxp for x86_64 with fluidlite, no issues whatsoever 👍
Glad to hear you managed to build it :) Le 3 mars 2017 15:35, ntzrmtthihu777 notifications@github.com a écrit :Ah, I was misunderstanding what SHARED_FLUID meant... that's not the dlopen'd one.
I actually managed to produce a static linked version (shared required ogg and vorbis dlls to work, even though they were static linked into mkxp.exe) of mkxp for x86_64 with fluidlite, no issues whatsoever 👍
—You are receiving this because you commented.Reply to this email directly, view it on GitHub, or mute the thread.
The move to FluidLite as the default target should still happen, and any compile issues fixed (at least on mkxp's side). Not sure if I'm out of date, but the last time I looked at the project, it seemed to hard depend on libogg and some friends? Not sure how that would be handled; ideally if someone wants to use FluidLite with support for ogg, libogg/libvorbis should be shared between it and mkxp.