LamptonWorm posted Sep 11 '15, 23:21:
Hi guys,
Is there a quick way to implement either mute groups in the definitions or fix polyphony to one?
This is good when I'm using certain samples that when one is playing, I can hit another key and I want only the 'new' key to play, and so on.
Implementing trigger types like hold, one shot, loop etc. similar to the MPC could be quite nice too :)
Cheers,
LW.
James posted Sep 13 '15, 00:32:
One way I discovered to limit to single poly is to edit the file /root/SamplerBox/samplerbox.py and change MAX_POLYPHONY from 80 to 1. There is a small side effect though, it will abruptly cut off existing sounds which can cause clicking.
On a related note, changing this setting to 20 or so prevents the older Raspberry Pi from lagging, especially when holding the sustain pedal down on piano notes. It works quite well.
LamptonWorm posted Sep 13 '15, 19:43:
Ah thanks re: polyphony.
If anyone has any time to implement mute groups and trigger types that would be cool.
Cheers,
LW.
Jure Matoh posted May 8 '17, 12:40:
anything new on this? I've tried to create a custom mute group for hihat but cannot get it to work to mute a single note.
AlexM posted May 9 '17, 04:19:
This is a cool idea - I'm keen to look into this. But can someone please explain exactly how mute groups are intended to function?
I'm currently working on sample-specific playback modes ;)
Jure posted May 9 '17, 15:46:
the idea is (at least for drums) that you have hi-hat which has anywhere from 2 to 6 midi notes assigned, so lets say we assign all these 6 or so notes to a single mute group. now, when a note is triggered (lets say, open hi-hat, which is a long and loud sound) and right after another note is triggered inside this same mute group, the note before should stop playing (effectively choking the hihat). should also be applicable to crash chokes.
Jure posted May 10 '17, 14:28:
@AlexM: how would someone go about doing this?
AlexM posted May 11 '17, 02:18:
Some initial thoughts: introduce a new %mutegroup keyword for the definition file. In the script add this value to the sample's Sound object. When playing a note, iterate through the playingsounds list to find any other objects with the same mutegroup property value and stop them playing.
AlexM posted May 11 '17, 18:26:
@Jure: not sure how far down the rabbithole you're willing to follow me down ;) but I've added %mutegroup to my development here:
https://github.com/alexmacrae/SamplerBox/commit/a5c62d82ac9802f13146ccbb17e719c9c985f105
This is light years from Joseph's SamplerBox script so some sections here might make your brain melt. If you can hold out a week or two we'll have a new image available on the site for you with a load of new features including this one!
Jure Matoh posted May 12 '17, 00:15:
... plus playing the notes in their entirety? that is, the Once parameter?
Jure Matoh posted May 12 '17, 00:18:
how have you gone about doing the Once thing? I changed the sustain timeout to 30 seconds to have my notes play entirely :) but this is most surely the wrong approach.
Jure Matoh posted May 12 '17, 00:19:
anyway, can't wait for your implementation if this feature makes it in!
Jure Matoh posted May 12 '17, 00:25:
I'll take a look at your latest commits. I'm not really at home with python, but I'm learning
AlexM posted May 12 '17, 03:37:
I gave every sample object a mode
property which is pulled from %mode
in the definition.txt. When a note is played, the script looks for mode
and determines whether it should ignore note off or sustain pedal methods
Jure Matoh posted May 12 '17, 11:55:
that is awesome! so which files do I have to replace if I want to test this out before the image is available? All of them? :D
AlexM posted May 12 '17, 15:38:
Implementing these features into your version may be a lot of work (are you using Hans' version?) and might cause you many headaches if you're not at home with python. I can send you a (buggy) image you can try: [email protected] :)
Jure Matoh posted May 14 '17, 14:27:
@AlexM, sent you an email!
Jure Matoh posted May 15 '17, 23:07:
hi, haven't reviewed the code but you're right, it is pretty buggy :) anyway, you seem to have changed the pinout for the hw buttons and the i2c display, what are they from the top of your head? :) also, if I kill the script and then restart it, there's no sound,seems that it can't read samples anymore. also, doesn't read samples from the sd card even from the start. only the saw kit.
AlexM posted May 16 '17, 10:54:
Some configuration info here: http://samplerbox.readthedocs.io/en/latest/config.html
You can change the pins in a config.ini file found in /boot/samplerbox
Newer (more stable) image coming soon ;)
Jure Matoh posted May 17 '17, 22:46:
sent you an email regarding the errors.