Releases: schollz/mx.samples
v1.4.3
v1.4.2
v1.4.2 - more samples!
new instruments:
- asat classic clean
- clarinet (short and sustained)
- fender strat (excellent with delay+reverb!)
- hohner guitaret
- marimba
- banjo
- raindrop c40 guitar
- trembling radiator (w/ and w/o ebow)
thank you @stvnrlly!!
v1.4.1
v1.4.0
v1.4.0 - pedal + instruments
- new feature: sustain / sostenuto pedal added (
PARAMS > MX.SAMPLES > pedal mode
to switch) - new instruments: added three drum sets ("acoustic", "violin" and "snapping")
- better ux: moved delay to "delay send" and added "reverb send".
plug in a keyboard with a pedal and it will now work! its very fun to play. to get a "piano" feel (if that's what you are going for) I recommend changing the sustain to 1.0
and the release to be a bit faster (0.5
).
a couple new drum sets are added. they have drums positioned around the keyboard in arbitrary ways, so it might take some searching to find the drum you want.
the "send" fx are added so that each synth doesn't have its own fx but can send arbitrary amounts through a bus. this should help a little more with cpu, as the cpu was used up a lot by computing the delay.
v1.3.1
v1.3.0
v1.3.0 - 99.9% less cpu when idle
- new feature: less cpu use when idling
- mew feature: last instrument is remembered when reloading script
I'm working on incorporating mx.samples into other things and previous versions utilized an "always-on" approach to the synths in the engine. in this version I'm trying a different approach - synths are generated on the fly and then freed up when they are finally released. the overall headroom hasn't changed (you'll hit cpu limits if you have lots of simultaneous keys) but if you are only using a few keys you'll use waaaaay less cpu.
v1.2.0
v1.2.0 - twice the polyphony
- new feature: more polyphony - 2x as many voices (30 now versus 14 before)
- bug fix: buffer's weren't deallocating when getting used, causing memory overages and freezes (possible what happened to you @rcf and @ninoshiro)
I've did more thorough testing of the extremes (i.e. in the case of plonky using possibly 8 instruments with polyphony on each). based on tests I've found that a decent hard limit is up to 30 voices + 80 buffers. if I try using all the buffers and all the voices (i.e. playing a fast sequence on plonky and then dialing through all the instruments) I can see that I top out at ~800 MB of RAM. before this change there were 200 buffers would was a definite no-go and probably caused lots of freezes for people, sorry about that. now, with 80 buffers and buffer stealing in place, you should stay within the RAM (~1000 MB on shield/stock norns) in the most extreme cases.
I also added an api to limit the number of voices, so if you want to use this as a library you can cut down on CPU/RAM by doing:
mxsamples=include("mx.samples/lib/mx.samples")
mx=mxsamples:new()
mx:max_voices(4) -- limits to only 4 voices
that being said, there are some samples that are more expensive than others (i.e. longer samples), so if you have the right combination of samples all playing at the same time with lots of polyphony you might get a freeze. if you do, let me know and I can problem solve some more, maybe reduce a little further.
v1.1.0
v1.0.0
v1.0.0 - no more update errors
- store all samples in the
~/dust/audio/mx.samples
directory from here on out (should fix update errors) - better midi handling
if you already have mx.samples
installed you can either delete mx.samples
entirely or you can enter the following line into maiden to migrate all your current samples to the new sample directory:
os.execute("mkdir -p /home/we/dust/audio/mx.samples; mv /home/we/dust/code/mx.samples/samples/* /home/we/dust/audio/mx.samples/")
v0.3.0
v0.3.0 - more instruments
- added claustrophobic piano (two versions)
- added cow pad
- added gentle vibes
- added music box
- added reverse piano
- added string spurs (two versions, and wow this one is a knockout)
- added uilleann pipes