nwhitehead / pyfluidsynth

Python bindings for FluidSynth
GNU Lesser General Public License v2.1
198 stars 56 forks source link

FluidSynth 2 compatibility #17

Closed albedozero closed 3 years ago

albedozero commented 5 years ago

FluidSynth 2 made some changes to the API, outlined in the dev docs.

TLDR fluid_synth_set_midi_router was deprecated, so the midi router has to be linked to the synth via new_fluid_cmd_handler, and chorus/reverb functions were renamed, hidden, exposed, etc. Try/except clauses are inserted so that pyfluidsynth should be able call the correct functions depending on which version of FluidSynth is being used without breaking any old code.

piegamesde commented 4 years ago

This fixes #19 for me

hitshydev commented 3 years ago

This also fixes #19 for me. Can this be merged? A package that I created depends on it.

ChristianRomberg commented 3 years ago

I'm not really hopeful. First off, this PR is over a year old and there's been no github activity from the owner @nwhitehead since a long time. I think I can publish new versions to PyPI, but I'm hesitant to do so without permission from the owner. Also, there are merge conflicts that need to be resolved first

albedozero commented 3 years ago

I can create a new fork from the master branch that incorporates the necessary changes for compatibility with fluidsynth 2.x as I did in my earlier PR, hopefully eliminating the merge conflicts.

ChristianRomberg commented 3 years ago

Sounds good

hitshydev commented 3 years ago

I read some articles about taking over an abandoned gitub project. Maybe @albedozero could create a new repository, with the same code and this pr. Just explain in the readme, that this is a fork and the owner didn't answer and that it is based on his work and come up with a new name. The fork would still be pretty useful since PrettyMidi uses it and I would assume that many MIR researchers use it. I would recommend using poetry for publishing the package and I could also help out maintaining and first reworking the dependency management.

...

I did some more research and found out that there are many forks fixing this error and also cleaning up the repo. On PyPi are two relative newly published projects but I would still create a fork with a new name maybe based on the mentioned forks. It's a pity that the owner does not answer anymore but centralising the repo now is better than creating more and more forks.

@nwhitehead If you read this, give us the opportunity to take over the repo or add maintainers.

nwhitehead commented 3 years ago

Sorry, I haven't been on github in a long time. I added @ChristianRomberg and @albedozero as contributors here in case that's helpful. I didn't see other "maintainer" options, if that's needed let me know how to do it.