2003-08-26 00:06:49 +00:00
|
|
|
This file needs some re-structuring. Please remove anything that has
|
|
|
|
already been done. - Josh Green 2003-08-25
|
2003-03-11 16:56:45 +00:00
|
|
|
|
|
|
|
|
2003-08-26 00:06:49 +00:00
|
|
|
Synthesis related
|
|
|
|
-----------------
|
2003-03-11 16:56:45 +00:00
|
|
|
- problems with chorus (test on VintageDreamWaves + LoveVigilants.mid)
|
2003-08-26 00:06:49 +00:00
|
|
|
- Compatibility with SB Live vol attenuation (Live doesn't follow specs?)
|
|
|
|
- Filter should stay on for a voice once it has been activated
|
|
|
|
- Improve voice stealing algorithm (soft and hard limits?)
|
|
|
|
- soft clipping, compressor, limitor, or automatic gain control
|
2003-03-11 16:56:45 +00:00
|
|
|
|
|
|
|
|
|
|
|
Drivers
|
2003-08-26 00:06:49 +00:00
|
|
|
-------
|
|
|
|
- ASIO driver
|
|
|
|
- DirectSound3D driver
|
|
|
|
- OMS on macintosh
|
|
|
|
- load drivers, plugins, and soundfont loaders from shared libraries
|
2003-03-11 16:56:45 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fluid 1.0:
|
|
|
|
--------------------------------------------
|
|
|
|
|
|
|
|
- deb and rpm package
|
|
|
|
- Mac and Windows binaries
|
|
|
|
- Xtra binaries
|
|
|
|
|
|
|
|
Web site: add:
|
|
|
|
- link to pd-iiwu
|
|
|
|
- how to create soundfonts on linux, macintosh, windows
|
|
|
|
- where to find soundfonts
|
|
|
|
- where to find documentation on soundfonts
|
|
|
|
- using fluid in PD, jMax
|
|
|
|
|
|
|
|
Fluid 1.1:
|
|
|
|
--------------------------------------------
|
|
|
|
|
2003-04-04 17:40:39 +00:00
|
|
|
SFLoader API:
|
|
|
|
- "interface" api
|
|
|
|
- redo sfloader api using "interface" api
|
|
|
|
|
|
|
|
Sample streaming
|
|
|
|
- sample streaming, load/unload sample on demand
|
|
|
|
|
|
|
|
Design
|
|
|
|
- turn ladspa fx unit and router in indepedent
|
|
|
|
objects, remove their dependencies from the synth object
|
|
|
|
- generalize use of fluid_event_t, remove fluid_midi_event_t
|
|
|
|
|
|
|
|
SoundFont Specs:
|
|
|
|
- pitch control on stereo samples not managed as should
|
|
|
|
|
|
|
|
MIDI Specs
|
2003-03-11 16:56:45 +00:00
|
|
|
- handle tuning sysex messages
|
|
|
|
- OMNI
|
|
|
|
- sample dump
|
2003-04-04 17:40:39 +00:00
|
|
|
|
|
|
|
Unsorted
|
|
|
|
- server sur windows
|
2003-03-11 16:56:45 +00:00
|
|
|
- change sample rate dynamically after jack driver instantiation, or
|
|
|
|
create audio driver before initiating the synth
|
|
|
|
- include readline in project
|
|
|
|
- additional aux buses
|
|
|
|
- rewrite midi file using new sequencer
|
|
|
|
- direct access to audio buffer
|
|
|
|
- soft clipping, compressor, limitor, or automatic gain control
|
|
|
|
- register shell commands dynamically, no dependancy on iiwu_synth object
|
|
|
|
- load wave files (ramsfont)
|
2003-04-04 17:40:39 +00:00
|
|
|
- write a Max external
|
2003-03-11 16:56:45 +00:00
|
|
|
|
|
|
|
|
|
|
|
OLD STUFF, NEEDS TO BE FILTERED ------------------
|
|
|
|
|
|
|
|
|
|
|
|
Design
|
|
|
|
------
|
|
|
|
- determine and protect critical regions
|
|
|
|
- check out atomic_inc and atomic_dec for flagging on/off of sp
|
|
|
|
- check out lock-free lifo for synchronization
|
|
|
|
- test for maximum cpu usage, and limit
|
|
|
|
- watchdog
|
|
|
|
- better debugging features and monitoring
|
|
|
|
- MIDI events (driver status, received, errors)
|
|
|
|
- Audio out (driver status, time, errors)
|
|
|
|
- Debug message ()
|
|
|
|
- CPU, memory usage
|
|
|
|
- load, reload, replace, and print info about soundfonts the way creative does it
|
|
|
|
|
|
|
|
|
|
|
|
DSP
|
|
|
|
---
|
|
|
|
- improved float to int conversion
|
|
|
|
- 96kHz/24bits
|
|
|
|
|
|
|
|
Control
|
|
|
|
-------
|
|
|
|
- handle all continuous controllers
|
|
|
|
- handles RPN and NRPN messages
|
|
|
|
- OpenSoundControl
|
|
|
|
|
|
|
|
Testing
|
|
|
|
-------
|
|
|
|
- create soundfont with basic wave forms [sine, square, triangle];
|
|
|
|
make test midi file; compare with SBLive output; "regression" test
|
|
|
|
- compare performance with timidity
|
|
|
|
|
|
|
|
Availability
|
|
|
|
------------
|
|
|
|
- create a libiiwusynth library that doesn't necessarily depend on OSS
|
|
|
|
or ALSA.
|
|
|
|
- make an fts package that links (statically?) with libiiwusynth
|
|
|
|
- ladspa plugin
|
|
|
|
- alsa module
|
|
|
|
- language bindings (Java, Python, Perl, Guile, ...)
|
|
|
|
- QuickTime Component
|
|
|
|
- make netscape and ie plugin
|
|
|
|
|
|
|
|
Hardware
|
|
|
|
--------
|
|
|
|
- study ALSA interface, SBLive interface (OSS, win32)
|
|
|
|
- hardware detection
|
|
|
|
- specify hardware or software synth
|