Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Don't allow min key/vel ranges to exceed max range | Chris Robinson | 2014-01-03 | 1 | -2/+2 |
| | |||||
* | Allow selecting the default soundfont using ID 0 | Chris Robinson | 2014-01-03 | 5 | -12/+59 |
| | |||||
* | Add storage for a default soundfont object | Chris Robinson | 2014-01-03 | 5 | -4/+59 |
| | |||||
* | Remove an unused method | Chris Robinson | 2014-01-03 | 2 | -13/+0 |
| | |||||
* | Move ALsoundfont methods to the right source file | Chris Robinson | 2014-01-03 | 2 | -38/+38 |
| | |||||
* | Avoid using alFontsoundiSOFT when loading a soundfont | Chris Robinson | 2014-01-03 | 3 | -204/+213 |
| | | | | This should now make the soundfont loader thread-safe. | ||||
* | Don't handle the list type in the RiffHdr struct | Chris Robinson | 2014-01-03 | 1 | -20/+11 |
| | |||||
* | Use a uint map for modulators | Chris Robinson | 2014-01-02 | 2 | -10/+15 |
| | |||||
* | Mostly load into fontsound objects directly | Chris Robinson | 2014-01-02 | 4 | -311/+209 |
| | | | | This leaves only one unsafe alFontsoundiSOFT call. | ||||
* | Load presets directly into objects | Chris Robinson | 2014-01-02 | 1 | -34/+45 |
| | |||||
* | Move some error macros to alError.h | Chris Robinson | 2014-01-02 | 2 | -16/+15 |
| | |||||
* | Move some preset alloc/dealloc code to separate functions | Chris Robinson | 2014-01-02 | 3 | -56/+73 |
| | |||||
* | Update the soundfont preset count after loading a soundfont | Chris Robinson | 2014-01-02 | 1 | -0/+1 |
| | |||||
* | Move alLoadSoundfontSOFT to alSoundfont.c | Chris Robinson | 2014-01-02 | 2 | -42/+42 |
| | |||||
* | Don't allow soundfonts with existing presets in alLoadSoundfontSOFT | Chris Robinson | 2014-01-01 | 2 | -21/+16 |
| | |||||
* | Pass the ALsoundfont object to loadSf2, rather than its ID | Chris Robinson | 2014-01-01 | 3 | -23/+82 |
| | |||||
* | Force all FluidSynth sounds off when changing soundfonts | Chris Robinson | 2013-12-31 | 1 | -1/+6 |
| | | | | | | | Selecting soundfonts should only happen when the MIDI engine is stopped or reset. When stopped some notes may be left in a release phase, but we need to ensure all fluid_sample_t objects are finished before unloading since the soundfont (and associated sample memory) may be deleted at any time afterward. | ||||
* | Remove some unused MIDI backend methods | Chris Robinson | 2013-12-29 | 3 | -86/+0 |
| | |||||
* | Don't destroy the fluid_sfont_t if any of its samples are still playing | Chris Robinson | 2013-12-29 | 1 | -0/+20 |
| | | | | | FluidSynth apparently doesn't check for this itself before calling the free callback. | ||||
* | Remove explicit locking from alMidiSoundfontvSOFT. | Chris Robinson | 2013-12-29 | 1 | -2/+0 |
| | | | | The MIDI backend can lock as it needs. | ||||
* | Update soundfont selection functions | Chris Robinson | 2013-12-29 | 3 | -30/+8 |
| | | | | | A filename is no longer specified, and alMidiSoundfontsSOFT is renamed to alMidiSoundfontvSOFT. | ||||
* | Lock the device while selecting soundfonts | Chris Robinson | 2013-12-29 | 1 | -0/+2 |
| | |||||
* | Add the last remaining "real-time" properties | Chris Robinson | 2013-12-29 | 6 | -8/+91 |
| | |||||
* | Add chorus and reverb send properties | Chris Robinson | 2013-12-29 | 6 | -2/+36 |
| | |||||
* | Check for negative soundfont indices getting passed to the loader | Chris Robinson | 2013-12-29 | 1 | -1/+1 |
| | |||||
* | Add pan and attenuation properties | Chris Robinson | 2013-12-29 | 6 | -6/+41 |
| | |||||
* | Add tuning properties | Chris Robinson | 2013-12-29 | 6 | -17/+60 |
| | |||||
* | Add filter properties | Chris Robinson | 2013-12-29 | 6 | -5/+63 |
| | |||||
* | Add modulation envelope properties | Chris Robinson | 2013-12-29 | 6 | -22/+101 |
| | |||||
* | Add a few more pitch properties | Chris Robinson | 2013-12-29 | 6 | -3/+44 |
| | |||||
* | Add volume envelope properties | Chris Robinson | 2013-12-29 | 6 | -8/+116 |
| | |||||
* | Fix copy-paste errors in error messages | Chris Robinson | 2013-12-29 | 1 | -2/+2 |
| | |||||
* | Accumulate with default modulator amounts | Chris Robinson | 2013-12-29 | 1 | -0/+20 |
| | |||||
* | Add support for the fontsound loop mode | Chris Robinson | 2013-12-29 | 6 | -4/+24 |
| | |||||
* | Ensure the soundfont version is 2.x | Chris Robinson | 2013-12-28 | 1 | -2/+28 |
| | |||||
* | Add alLoadSoundfontSOFT to load a soundfont via callback | Chris Robinson | 2013-12-28 | 6 | -0/+1309 |
| | | | | | | | | | | | | | | | | | | | | | Some hefty caveats: This function is not thread-safe. In particular, the current context affecting the thread must not be changed, and the provided soundfont must not be altered while the function is executing. Ideally, this will be fixed. Error handling is poor. Some RIFF structure errors may not be caught (e.g. sub- chunks with sizes greater than the parent chunk allows for), and generated AL errors are ignored, possibly leading to resource leaks in certain situations. These should be fixed in time. There is minimal error checking on the provided soundfont ID. It does not ensure a valid ID has been provided, nor does it ensure the provided soundfont can be modified. These short-comings should be fixed eventually. Proper cleanup is the responsibility of the caller. The caller must get the preset objects from the soundfont before deleting it, and the fontsound objects from each preset before deleting them, to make sure all resources are properly deleted. | ||||
* | Allow loading multiple soundfonts with FluidSynth | Chris Robinson | 2013-12-27 | 1 | -21/+50 |
| | |||||
* | Create a custom fluid_sfloader_t loader | Chris Robinson | 2013-12-27 | 1 | -4/+299 |
| | | | | | | | This allows us to load and use soundfont objects the app specifies (the first one, at least), rather than having to load from a file. It doesn't sound that good since modulators and most generators aren't yet available, but this will steadily improve. | ||||
* | Add a method to set and get soundfonts | Chris Robinson | 2013-12-27 | 8 | -8/+145 |
| | | | | | The main purpose of this is to select soundfonts for playback, eventually, instead of the existing method that takes a filename. | ||||
* | Allow specifying all 4 sample types | Chris Robinson | 2013-12-27 | 1 | -1/+1 |
| | | | | ROM-based types will be specified with a separate property | ||||
* | Allow specifying some fontsound sample properties | Chris Robinson | 2013-12-26 | 2 | -1/+113 |
| | |||||
* | Remove the generator list | Chris Robinson | 2013-12-26 | 2 | -63/+16 |
| | |||||
* | Allow specifying key and velocity ranges on fontsounds | Chris Robinson | 2013-12-26 | 3 | -0/+140 |
| | |||||
* | Add methods to set and get sounds on a preset | Chris Robinson | 2013-12-25 | 3 | -0/+67 |
| | |||||
* | Store a list of sounds in the preset | Chris Robinson | 2013-12-25 | 2 | -0/+11 |
| | |||||
* | Remove the zone, sample, and instrument object types | Chris Robinson | 2013-12-25 | 6 | -413/+0 |
| | |||||
* | Add methods to add generators and modulators to fontsounds | Chris Robinson | 2013-12-25 | 2 | -0/+73 |
| | |||||
* | Add a new fontsound object type | Chris Robinson | 2013-12-25 | 6 | -0/+245 |
| | | | | This is basically a combined preset and intrument zone with sample header. | ||||
* | Do not allow deleting preset or instrument ID 0 | Chris Robinson | 2013-12-24 | 2 | -6/+0 |
| | |||||
* | Allow querying the soundfont sample length and format type | Chris Robinson | 2013-12-24 | 2 | -0/+9 |
| |