rekado [Sun, 28 Jul 2013 04:41:28 +0000 (12:41 +0800)]
[piano] fix: hardness offset may result in negative values
rekado [Sun, 28 Jul 2013 04:01:02 +0000 (12:01 +0800)]
[epiano] fix: pick different sample for different velocity
rekado [Sun, 28 Jul 2013 03:42:18 +0000 (11:42 +0800)]
crudely merge mdaEPiano and mdaPiano
There are some differences in the types of certain variables that don't
seem very important. This will be addressed in future commits.
rekado [Sat, 27 Jul 2013 14:46:34 +0000 (22:46 +0800)]
find ttl files in $TYPE directory
rekado [Sat, 27 Jul 2013 14:46:13 +0000 (22:46 +0800)]
add ttl files for mdaEPiano
rekado [Sat, 27 Jul 2013 14:45:52 +0000 (22:45 +0800)]
move ttl files to mdaPiano directory
rekado [Sat, 27 Jul 2013 14:40:49 +0000 (22:40 +0800)]
merge mdaPianoVoice.h and mdaEPianoVoice.h
rekado [Sat, 27 Jul 2013 14:31:45 +0000 (22:31 +0800)]
merge mdaPiano.h and mdaEPiano.h
rekado [Sat, 27 Jul 2013 14:30:42 +0000 (22:30 +0800)]
rename peg file to ports.peg
rekado [Sat, 27 Jul 2013 14:23:02 +0000 (22:23 +0800)]
generalise defines for both plugins
rekado [Sat, 27 Jul 2013 14:14:03 +0000 (22:14 +0800)]
add mdaEPiano presets and data files
rekado [Sat, 27 Jul 2013 14:12:47 +0000 (22:12 +0800)]
generalise Makefile
rekado [Sat, 27 Jul 2013 12:50:22 +0000 (20:50 +0800)]
move mdaPiano data and preset to own directory
rekado [Sat, 27 Jul 2013 12:48:55 +0000 (20:48 +0800)]
update README
rekado [Sat, 27 Jul 2013 02:13:39 +0000 (10:13 +0800)]
replace Event with Atom extension
rekado [Sat, 26 Jan 2013 07:29:27 +0000 (15:29 +0800)]
switch to LV2 Toolkit (lvtoolkit.org)
lv2-c++-tools is apparently no longer maintained.
lvtk is a fork of lv2-c++-tools.
rekado [Sat, 26 Jan 2013 01:46:58 +0000 (09:46 +0800)]
update comments
rekado [Sat, 26 Jan 2013 01:46:38 +0000 (09:46 +0800)]
move keygroup loader to end of file
rekado [Sat, 26 Jan 2013 01:45:52 +0000 (09:45 +0800)]
trust find_free_voice to return a valid index
rekado [Fri, 25 Jan 2013 14:00:38 +0000 (22:00 +0800)]
define number of samples as NSAMPLES
rekado [Fri, 25 Jan 2013 11:11:45 +0000 (19:11 +0800)]
mark polyphony parameter as unused
rekado [Fri, 25 Jan 2013 11:06:13 +0000 (19:06 +0800)]
define SAMPLES_PER_NOTE
rekado [Fri, 25 Jan 2013 11:05:11 +0000 (19:05 +0800)]
replace note with key, remove note parameter
rekado [Fri, 25 Jan 2013 10:44:01 +0000 (18:44 +0800)]
only use types in declarations
rekado [Fri, 25 Jan 2013 10:42:21 +0000 (18:42 +0800)]
everything is public
rekado [Fri, 25 Jan 2013 10:39:55 +0000 (18:39 +0800)]
rearrange variables in header file
rekado [Fri, 25 Jan 2013 10:37:56 +0000 (18:37 +0800)]
move around headers to match epiano project
rekado [Fri, 25 Jan 2013 10:33:23 +0000 (18:33 +0800)]
remove unused: param array, Fs, iFs, noteOn
rekado [Fri, 25 Jan 2013 10:32:21 +0000 (18:32 +0800)]
change formatting to match mdaEPianoVoice.h
rekado [Fri, 25 Jan 2013 10:30:36 +0000 (18:30 +0800)]
update internal state on render
rekado [Fri, 25 Jan 2013 10:29:42 +0000 (18:29 +0800)]
move around block for easier comparison with mdaEPiano
rekado [Fri, 25 Jan 2013 10:29:11 +0000 (18:29 +0800)]
cosmetic changes
rekado [Fri, 25 Jan 2013 10:28:45 +0000 (18:28 +0800)]
do not reset voices on default case
rekado [Fri, 25 Jan 2013 10:27:28 +0000 (18:27 +0800)]
fix typo
rekado [Fri, 25 Jan 2013 10:27:11 +0000 (18:27 +0800)]
remove unneeded headers
rekado [Fri, 25 Jan 2013 10:26:51 +0000 (18:26 +0800)]
remove setParameter
rekado [Sun, 20 Jan 2013 02:57:09 +0000 (10:57 +0800)]
cut out individual samples more accurately
rekado [Sat, 19 Jan 2013 13:41:14 +0000 (21:41 +0800)]
set pos = 0 and get end from sample size
rekado [Sat, 19 Jan 2013 13:40:02 +0000 (21:40 +0800)]
load individual samples
rekado [Sat, 19 Jan 2013 13:38:34 +0000 (21:38 +0800)]
add split samples to bundle
rekado [Sat, 19 Jan 2013 13:37:44 +0000 (21:37 +0800)]
do not hard-code pos and end
rekado [Sat, 19 Jan 2013 13:36:18 +0000 (21:36 +0800)]
split samples
Split samples.raw according to the keygroup information (pos / end).
rekado [Fri, 18 Jan 2013 14:15:01 +0000 (22:15 +0800)]
is_sustained queries m_key, not note
rekado [Fri, 18 Jan 2013 14:14:29 +0000 (22:14 +0800)]
remove commented code
rekado [Fri, 18 Jan 2013 10:26:39 +0000 (18:26 +0800)]
remove commented code
rekado [Wed, 16 Jan 2013 14:14:18 +0000 (22:14 +0800)]
update parameters on note on
Since there is no program change event we could catch when the host
loads a new preset, the internal values have to be re-computed on note
on.
rekado [Wed, 16 Jan 2013 13:51:13 +0000 (21:51 +0800)]
fix tag names of presets
rekado [Wed, 16 Jan 2013 12:16:32 +0000 (20:16 +0800)]
set m_key to INVALID_KEY when silent
rekado [Wed, 16 Jan 2013 12:16:12 +0000 (20:16 +0800)]
replace note with m_key
rekado [Wed, 16 Jan 2013 12:15:49 +0000 (20:15 +0800)]
connect audio outputs
rekado [Wed, 16 Jan 2013 12:15:34 +0000 (20:15 +0800)]
update voice on initialisation
rekado [Wed, 16 Jan 2013 12:14:12 +0000 (20:14 +0800)]
wrap conditional block in curly braces
rekado [Wed, 16 Jan 2013 11:40:43 +0000 (19:40 +0800)]
do not render voice if no key has been pressed
rekado [Wed, 16 Jan 2013 11:38:38 +0000 (19:38 +0800)]
remove EVENT* defines
rekado [Wed, 16 Jan 2013 11:37:57 +0000 (19:37 +0800)]
statically declare comb array
rekado [Wed, 16 Jan 2013 00:28:06 +0000 (08:28 +0800)]
register plugin URI
rekado [Wed, 16 Jan 2013 00:22:10 +0000 (08:22 +0800)]
remove activevoices and voices loop
rekado [Wed, 16 Jan 2013 00:18:35 +0000 (08:18 +0800)]
move cmax constant to where it is used
rekado [Wed, 16 Jan 2013 00:16:42 +0000 (08:16 +0800)]
remove pointer indirection
rekado [Wed, 16 Jan 2013 00:13:38 +0000 (08:13 +0800)]
convert process into render
rekado [Wed, 16 Jan 2013 00:05:45 +0000 (08:05 +0800)]
replace programs[curProgram] with direct parameter lookups
rekado [Tue, 15 Jan 2013 23:59:24 +0000 (07:59 +0800)]
replace param[n] with calls to p_helper
rekado [Tue, 15 Jan 2013 23:46:57 +0000 (07:46 +0800)]
remove voice[vl] from `mdaPianoVoice::on`
rekado [Tue, 15 Jan 2013 23:45:41 +0000 (07:45 +0800)]
fix: key -> note
rekado [Mon, 14 Jan 2013 14:18:45 +0000 (22:18 +0800)]
dampen/undampen notes on pedal
rekado [Mon, 14 Jan 2013 14:18:03 +0000 (22:18 +0800)]
handle note off event
rekado [Mon, 14 Jan 2013 14:17:21 +0000 (22:17 +0800)]
implement key release handler
rekado [Mon, 14 Jan 2013 14:01:03 +0000 (22:01 +0800)]
handle note on event
rekado [Mon, 14 Jan 2013 14:00:30 +0000 (22:00 +0800)]
find next free voice
rekado [Mon, 14 Jan 2013 13:55:19 +0000 (21:55 +0800)]
move voice parameters to mdaPianoVoice
rekado [Mon, 14 Jan 2013 13:36:55 +0000 (21:36 +0800)]
implement muffling setter
rekado [Mon, 14 Jan 2013 13:35:09 +0000 (21:35 +0800)]
implement volume setter
rekado [Mon, 14 Jan 2013 13:22:24 +0000 (21:22 +0800)]
replace setParameter
rekado [Mon, 14 Jan 2013 13:19:34 +0000 (21:19 +0800)]
store key in m_key; implement get_key
rekado [Mon, 14 Jan 2013 13:16:47 +0000 (21:16 +0800)]
add type and declaration of `on`
rekado [Mon, 14 Jan 2013 13:11:47 +0000 (21:11 +0800)]
include C standard lib
rekado [Mon, 14 Jan 2013 13:09:45 +0000 (21:09 +0800)]
move `update` to voices and call from synth
rekado [Mon, 14 Jan 2013 12:56:29 +0000 (20:56 +0800)]
rewrite `processEvents` as `handle_midi`
rekado [Mon, 14 Jan 2013 10:43:38 +0000 (18:43 +0800)]
remove `resume` function
rekado [Mon, 14 Jan 2013 10:41:55 +0000 (18:41 +0800)]
remove call to `suspend`
rekado [Mon, 14 Jan 2013 10:40:58 +0000 (18:40 +0800)]
move `process` to voice
rekado [Mon, 14 Jan 2013 10:34:13 +0000 (18:34 +0800)]
remove processReplacing
`processReplacing` is almost the same as `process`. The differences are
now in `process`, but commented until further review.
rekado [Mon, 14 Jan 2013 10:24:42 +0000 (18:24 +0800)]
implement note reset
rekado [Mon, 14 Jan 2013 10:17:44 +0000 (18:17 +0800)]
create mdaPianoVoice objects
rekado [Mon, 14 Jan 2013 10:16:19 +0000 (18:16 +0800)]
move mdaPiano::noteOn to mdaPianoVoice::on
rekado [Mon, 14 Jan 2013 09:53:22 +0000 (17:53 +0800)]
move destructor into header, declare load_* functions
rekado [Mon, 14 Jan 2013 09:48:55 +0000 (17:48 +0800)]
rename LV2::Synth parameters
rekado [Mon, 14 Jan 2013 09:48:07 +0000 (17:48 +0800)]
remove program change handler
rekado [Mon, 14 Jan 2013 09:37:35 +0000 (17:37 +0800)]
move shared definitions into mdaPianoCommon
rekado [Mon, 14 Jan 2013 00:33:29 +0000 (08:33 +0800)]
begin moving voice-related stuff to mdaPianoVoice
rekado [Sun, 13 Jan 2013 23:47:36 +0000 (07:47 +0800)]
replace VstInt32 with uint32_t
rekado [Sun, 13 Jan 2013 23:44:04 +0000 (07:44 +0800)]
move keymap initialisation to separate function
rekado [Sun, 13 Jan 2013 23:43:06 +0000 (07:43 +0800)]
instantiate LV2::Synth, not AudioEffectX
rekado [Sun, 13 Jan 2013 23:41:14 +0000 (07:41 +0800)]
remove more unneeded VST functions
rekado [Sun, 13 Jan 2013 14:46:35 +0000 (22:46 +0800)]
load samples from file
rekado [Sun, 13 Jan 2013 14:20:20 +0000 (22:20 +0800)]
Convert pianoData array to raw audio file
To play back the raw audio file use:
aplay -t raw -f S16_LE -r 44100 data/samples.raw
It should be possible to replace the samples with something of a little
higher quality later.
rekado [Sun, 13 Jan 2013 14:43:32 +0000 (22:43 +0800)]
add Makefile
For now this depends on larsl's `lv2-c++-tools`, which can be downloaded
from http://freecode.com/projects/lv2-c-tools . Revert to plain C later.
rekado [Sun, 13 Jan 2013 14:17:48 +0000 (22:17 +0800)]
remove VST functions
rekado [Sun, 13 Jan 2013 14:13:37 +0000 (22:13 +0800)]
update copyright header
rekado [Sat, 12 Jan 2013 13:45:16 +0000 (21:45 +0800)]
consistent use of two space indentation