Our band needed a one-time sample player with looping capabilities and I've used Joseph's great idea to build it.
Please feel free to use (parts of) this build for more nice things, but mind it's still in early stage of usage so there may still be some flaws in it.
You can find a description and source here.
Sorry, link went wrong, so try this instead.
The one-time sampler is exactly what i need for my band. I think your idea with the mode selection in the definition.txt is a very good idea, making it possible to drive various configurations with the handling of the note-off-messages. I also like the implementation of a non-serial-LCD, although it needs some more wiring than the serial displays.
I have an old AX30G guitar effect with a broken preamp section, maybe i use the 16x2 LCD for the samplerbox :D
Man - couldn't use your build unfortunately - but really want to know how do you implemented a MIDI filter - i really need it to be fixed on one channel only while using other channels to drive other equipment
Can you be so kind and share how you did that?)
Filtering the midi channel is basically no more than an extra if-statement in the MidiCallBack procedure.
After the statement setting the message channel variable (line 196 in [Joseph's source] (https://github.com/josephernest/SamplerBox/blob/master/samplerbox.py)), add something like:
"if (messagechannel == xx):"
Where xx can be any valid channel (1-16) or a variable you've set somewhere.
Don't forget to indent the rest of the procedure properly; any errors in there can cause unexpected results.
Hope this helps.