Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add filter properties | Chris Robinson | 2013-12-29 | 3 | -0/+47 |
| | |||||
* | Add modulation envelope properties | Chris Robinson | 2013-12-29 | 3 | -14/+76 |
| | |||||
* | Add a few more pitch properties | Chris Robinson | 2013-12-29 | 3 | -0/+34 |
| | |||||
* | Add volume envelope properties | Chris Robinson | 2013-12-29 | 3 | -0/+91 |
| | |||||
* | Add support for the fontsound loop mode | Chris Robinson | 2013-12-29 | 3 | -0/+16 |
| | |||||
* | Add alLoadSoundfontSOFT to load a soundfont via callback | Chris Robinson | 2013-12-28 | 2 | -0/+12 |
| | | | | | | | | | | | | | | | | | | | | | 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. | ||||
* | Add a method to set and get soundfonts | Chris Robinson | 2013-12-27 | 3 | -8/+92 |
| | | | | | 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 | 1 | -14/+5 |
| | |||||
* | Allow specifying key and velocity ranges on fontsounds | Chris Robinson | 2013-12-26 | 2 | -0/+136 |
| | |||||
* | Add methods to set and get sounds on a preset | Chris Robinson | 2013-12-25 | 2 | -0/+66 |
| | |||||
* | Store a list of sounds in the preset | Chris Robinson | 2013-12-25 | 1 | -0/+2 |
| | |||||
* | Remove the zone, sample, and instrument object types | Chris Robinson | 2013-12-25 | 3 | -208/+0 |
| | |||||
* | Add methods to add generators and modulators to fontsounds | Chris Robinson | 2013-12-25 | 1 | -0/+2 |
| | |||||
* | Add a new fontsound object type | Chris Robinson | 2013-12-25 | 3 | -0/+184 |
| | | | | 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 |
| | |||||
* | Do not accept preset or instrument ID 0 as valid | Chris Robinson | 2013-12-23 | 2 | -4/+2 |
| | |||||
* | Unlock the soundfont earlier after switching preset lists | Chris Robinson | 2013-12-23 | 1 | -2/+1 |
| | |||||
* | Add methods to get and set presets on a soundfont | Chris Robinson | 2013-12-23 | 2 | -2/+101 |
| | |||||
* | Add methods to get and set a preset object's preset and bank numbers | Chris Robinson | 2013-12-23 | 3 | -2/+111 |
| | |||||
* | Free thunk entry in the object destructor | Chris Robinson | 2013-12-20 | 3 | -9/+0 |
| | |||||
* | Better protect against improper alSoundfontSamplesSOFT calls | Chris Robinson | 2013-12-20 | 2 | -9/+21 |
| | |||||
* | Add functions to set a soundfont's sample data | Chris Robinson | 2013-12-19 | 3 | -1/+89 |
| | |||||
* | Allow creating instrument objects | Chris Robinson | 2013-12-19 | 3 | -0/+158 |
| | |||||
* | Call the right delete method when generating presets fails | Chris Robinson | 2013-12-19 | 1 | -2/+2 |
| | |||||
* | Rename some ALsoundfont fields | Chris Robinson | 2013-12-19 | 1 | -2/+2 |
| | |||||
* | Move the soundfont and preset extension functions to separate sources | Chris Robinson | 2013-12-19 | 3 | -253/+282 |
| | |||||
* | Add methods to create and destroy presets | Chris Robinson | 2013-12-19 | 3 | -0/+142 |
| | |||||
* | Properly initialize and cleanup the soundfont map | Chris Robinson | 2013-12-18 | 2 | -0/+22 |
| | |||||
* | Make alIsSoundfontSOFT check soundfont IDs | Chris Robinson | 2013-12-18 | 2 | -7/+6 |
| | |||||
* | Add a new ALsoundfont object type | Chris Robinson | 2013-12-18 | 3 | -0/+205 |
| | | | | | Includes a basic hierarchy for presets, instruments, samples, zones, generators, and modulators. | ||||
* | Fix header guard and remove duplicate code | Chris Robinson | 2013-12-18 | 1 | -98/+0 |
| | |||||
* | Move the base MidiSynth to a separate file | Chris Robinson | 2013-12-17 | 2 | -232/+3 |
| | |||||
* | Move the dummy MIDI handler to a separate file | Chris Robinson | 2013-12-17 | 2 | -118/+1 |
| | |||||
* | Move FluidSynth to its own file | Chris Robinson | 2013-12-17 | 2 | -334/+15 |
| | |||||
* | Make MidiSynth's methods non-static | Chris Robinson | 2013-12-17 | 2 | -51/+33 |
| | |||||
* | Render some MIDI samples even when stopped | Chris Robinson | 2013-12-15 | 1 | -3/+4 |
| | | | | | Because stopping MIDI playback puts any playing notes into release phase, they should be rendered. Ideally it could stop rendering once output goes silent. | ||||
* | Use macros for MIDI controller values | Chris Robinson | 2013-12-15 | 1 | -3/+9 |
| | |||||
* | Don't explicitly set reverb or chorus | Chris Robinson | 2013-12-13 | 1 | -2/+0 |
| | |||||
* | Add a alMidiResetSOFT method to reset the synth | Chris Robinson | 2013-12-13 | 2 | -7/+27 |
| | | | | | Playback is stopped, the queue is flushed, the clock is reset to 0, and the MIDI system is reset to power-up status. | ||||
* | Update behavior for alMidiStopSOFT | Chris Robinson | 2013-12-13 | 2 | -3/+44 |
| | | | | | | | | | alMidiStopSOFT now has the following behavior: * All pending MIDI events up to the current time are processed first, before the queue is flushed. * All channels then receive an All Notes Off event so that notes go through their release phase. Controllers are *NOT* reset. * Clock time is reset to 0, like before. | ||||
* | Fix retrieving source properties | Chris Robinson | 2013-12-09 | 1 | -6/+6 |
| | |||||
* | Fix leak if inserting a sysex event fails | Chris Robinson | 2013-12-08 | 1 | -5/+7 |
| | |||||
* | Simplify dummy synth processing loop | Chris Robinson | 2013-12-01 | 1 | -27/+15 |
| | |||||
* | Minor comment update | Chris Robinson | 2013-12-01 | 1 | -1/+1 |
| | |||||
* | Use a method to get the default soundfont filename | Chris Robinson | 2013-12-01 | 1 | -17/+19 |
| | |||||
* | Add methods to set and get the MIDI gain | Chris Robinson | 2013-11-30 | 4 | -0/+62 |
| | |||||
* | Add a method to check if a file is a soundfont | Chris Robinson | 2013-11-30 | 3 | -15/+91 |
| |