mirror of
https://github.com/ZDoom/fluidsynth.git
synced 2024-11-10 06:51:54 +00:00
4a0a7365ee
* add fluid_mod_sizeof() and fluid_sample_sizeof() for low latency scenarios * fix return value of default_fclose * enable padding warnings for cmake enable-profiling=1 * make these types private: * struct _fluid_sfloader_t * struct _fluid_sample_t * struct _fluid_sfont_t * struct _fluid_preset_t ...and provide proper getter and setter functions
90 lines
2.3 KiB
Text
90 lines
2.3 KiB
Text
New features
|
|
------------
|
|
- Non-realtime MIDI file rendering
|
|
- Sample streaming, load/unload sample on demand
|
|
- Synth sample rate change after initial creation
|
|
- handle tuning sysex messages
|
|
- Audio level metering
|
|
- Active voice count monitoring
|
|
|
|
Synthesis
|
|
---------
|
|
- Improve voice stealing algorithm
|
|
- Dynamic voice killing (based on CPU usage)
|
|
- Batch voice activation (stereo synch. as per SoundFont spec)
|
|
- Pitch control on stereo samples not managed as should
|
|
- soft clipping, compressor, limitor, or automatic gain control
|
|
|
|
Drivers
|
|
-------
|
|
- libao audio output driver
|
|
- Windows DirectMusic component
|
|
- ASIO driver
|
|
- DirectSound 3D and EAX
|
|
|
|
Bugs to mash
|
|
------------
|
|
- Add byte swapping support (on synthesis or sample load?)
|
|
- Investigate why MIDI rendering causes burst of notes at start
|
|
|
|
Validation
|
|
----------
|
|
- Validation tests: create soundfont with basic wave forms [sine,
|
|
square, triangle]; make test midi file; compare with SBLive output;
|
|
"regression" test
|
|
- Validate chorus (often sounds rather crappy)
|
|
- Analyse performance
|
|
|
|
Documentation
|
|
-------------
|
|
- Write documention on tuning
|
|
- Add usage scenarios in the documentation
|
|
- User and system configuration file
|
|
|
|
Binaries
|
|
--------
|
|
- FluidSynth
|
|
* Linux
|
|
* Win
|
|
* MacOS X
|
|
- fluid~ (Pd/Linux, MaxMSP/MacOSX, MaxMSP/Windows)
|
|
- fluidsynth~ (MaxMSP/MacOSX, MaxMSP/Windows)
|
|
- FluidXtra
|
|
|
|
Misc
|
|
----
|
|
- Remove dependency of settings on audio driver and other (see
|
|
fluid_settings_init())
|
|
- When specifying -i -s (no console and TCP server) log to TCP clients
|
|
with easier parsable messages ("warning:", "error:", etc)
|
|
- Pause and resume the synthesizer/audio thread (run synthesizer as a daemon)
|
|
- set loop on/off on a sample (set_gen GEN_SAMPLEMODE?)
|
|
|
|
|
|
FluidSynth Next Generation
|
|
--------------------------------------------
|
|
|
|
Top of the list
|
|
- Use FIFOs to send events to the audio thread
|
|
- 3D audio output
|
|
|
|
MIDI player
|
|
- Add API to manipulate and query MIDI file list
|
|
- generalize use of fluid_event_t, remove fluid_midi_event_t
|
|
|
|
Shell & command handler
|
|
- Add "note" command that plays a note with a duration (sequencer)
|
|
- MIDI file player commands (load/play/stop)
|
|
- Allow settings to be loaded before the synthesizer is created
|
|
|
|
MIDI Specs
|
|
- Omni and poly modes
|
|
- sample dump
|
|
- MIDI thru
|
|
- Scalable Polyphony MIDI (SP-MIDI)
|
|
|
|
|
|
Unsorted
|
|
- additional aux buses
|
|
- rewrite midi file using new sequencer
|
|
- direct access to audio buffer
|