fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[fluid-dev] FluidSynth 2.0 beta talk


From: Tom M.
Subject: [fluid-dev] FluidSynth 2.0 beta talk
Date: Sun, 20 May 2018 14:08:09 +0200

A beta of FluidSynths next major version has been released!

Over the past 10 months FluidSynth has received comprehensive new features, a 
few of them making a major version bump necessary. Thanks to everybody involved 
so far!

The opportunity of a major version bump was also used to revise FluidSynths API 
in the hope it will get cleaner and more resistant to future changes. 
Development has now reached a point where we would like to get some community 
feedback. Of special interest for us is, how much trouble the API changes cause 
downstream. Therefore please download the recently released 2.0 beta version of 
FluidSynth and build it against your software. Any feedback is highly 
appreciated!

Windows users may directly download the CI build artifacts:
Win32: 
https://ci.appveyor.com/project/derselbst/fluidsynth/build/1037/job/5nj9yl7v74126be5/artifacts
Win64: 
https://ci.appveyor.com/project/derselbst/fluidsynth/build/1037/job/xfp58vxf904ou3e9/artifacts

Everybody else will need to build from source:
https://github.com/FluidSynth/fluidsynth/releases/tag/v2.0.0.beta1

For further info what's new, please find the preliminary changelog below. For 
developers the API docs will be of special interest as well:
http://www.fluidsynth.org/api-unstable/index.html#NewIn2_0_0

Also, if you ever had an API/ABI breaking change in mind, now is the right time 
to bring it up. E.g. I keep thinking about removing the (redundant) 
fluid_midi_event_t type and replacing it with fluid_event_t. This issue is on 
the TODO list for already 15 years. It would allow to further cleanup 
FluidSynths code base. However I'm are aware that this step would be a little 
painful for downstream. Any feedback if and how your apps utilize 
fluid_midi_event_t as well as general thoughts on that are welcome, too.

Tom

P.S.: FluidSynth 1.1.x stays the current stable branch and continues to receive 
bug fixes as long as 2.0 is not released. However 1.1.x will not receive any 
new features.

### New Features
* implement polyphonic key pressure (#185, thanks to @mawe42)
* add API for manipulating default modulators (#265, #164, #71, thanks to 
@mawe42)
* add `midi.autoconnect` setting for automatically connecting fluidsynth with 
available MIDI Input ports (currently only for `alsa_seq` thanks to 
@tomcucinotta)
* add seek support to midi-player (#261, thanks to @loki666)
* add support for text and lyrics midi events (#111)
* add support for 24 bit sample soundfonts (#301, #329)
* consider "important midi channels" during overflow calculation 
`synth.overflow.important-channels` (#294, thanks to @mawe42)
* add a custom default modulator for MIDI CC8 to support proper stereo balance 
(#317, thanks to @mawe42)
* add support for an additional custom high-pass filter (#331, thanks to 
@mawe42)
* incorporate jjc's polymono patch (#306, #236, #158)
  * add basic channel support
  * implement MIDI modes Omni On, Omni Off, Poly, Mono
  * implement portamento control
  * implement legato control
  * implement breath control
* add support soundfont loading from memory (#241)
* add a profiling command interface (#345, thanks to @jjceresa)
* add support on demand sample loading (#366, thanks to @mawe42)
* add reverb and chorus settings (#49)

### General
* consider channel pressure, key pressure and pitch wheel for lower attenuation 
boundary calculation (#163, thanks to @mawe42)
* complete rewrite of the LADSPA subsystem (#227,  #235, thanks to @mawe42)
* complete rewrite of the Soundfont Loader API (#334, #309)
* avoid reverb amplitude growing exponentially (#279, thanks to @jjceresa)
* removed deprecated autotools build system
* a minimal build of fluidsynth without requiring pkg-config is supported
* remove deprecated LADCCA support
* use unique device names for the `audio.portaudio.device` setting (#284, 
thanks to @jjceresa)
* documentation of the settings moved to 
http://www.fluidsynth.org/api/fluidsettings.xml
* adjust MIDI Pan and Balance calculations as outlined by MIDI Recommended 
Practice (RP-036) (#317, thanks to @mawe42)
* make network support compile-time optional (#307, thanks to @carlo-bramini)
* speed up calculation of chorus modulation waveforms for devices without FPU 
(#321, thanks to @carlo-bramini)
* cleanup internal audio rendering and mixing engine (#197)
* reduce memory consumption of loaded soundfonts (#370, thanks to @mawe42)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]