Been a while
Im wanting to simply use a midi plugin that simulates the guitar synth hold functions of old eg sustain vs hold and play over top of held notes (infinity hold) etc. Did it ages ago...works nicely.
So to make sure all was ok before I spent too much time on porting my own stuff for use as a vst plugin; I installed the pdmidi example.(PDVst)
No problems, installed fine
When it loads...the cpu in whatever host I load it into maxes out.
I tried turning of the inputs (setting the init file to inputs = 0) etc but no avail
I have the latest PD installed into the vst plugin directory using the new way of installation
PD version 0.61-4
Kore 2 64 (last version)
Ableton 10.17 64bit
Been a while since I was here...
Dont whether Im using the wrong search terms but I am wanting to build;
A play back sample module for a simple headless raspberry pi setup for my cajon (I use it with a wavedrum but it has no connectivity etc)
The sample module should have 8 velocity layer plus a round robin for max velocity of eg 4 samples
Primarily percussion etc
I am reasonable at programming/designing on Kontakt.
The trigger inputs would be 4 piezos plus a kick trigger (yamaha pedal) so 4 in total...inspired by this set up
Would have positional info for 2 top triggers...the hpd20 has some nice positional instruments and I hooked the positional controllers up to the hand pan library...its brilliant fun.
So the question is...
Does anyone know of some resources/existing projects that might help
Anyone done any raspi only setups like this?
Thanks in advance and kind regs
A little bit of work to set up but forget midi mapping...google it if you dont believe me.
After a lot of time spent trying to get a simple but sophisticated way (using a minimal 8 button floorboard) to control Live on w10, I thought I would share this particular solution to possibly help others (especially after the help offered here on this forum). I tried a number of scenarios, even buying Max 4 Live, but it turns out a lot simpler than that. It needs 3 main areas set
FOOT CONTROLLER BEHAVIOURS/GESTURES
Create pd patch that gives you 'behaviours' per switch. Ill be happy to share mine but Im just cleaning them up atm.
eg I have 4 standard behaviours that dont take too much time to master
- Action A: A quick click (less than 500ms) Always the primary action
- Action B: Long click ie 1 click down and pedal up after 500ms. I use this eg always as a negative ramp down for things like lowering volume but if its just held down and released in a natural way, it is the secondary action of the switch
- Action C: 3 Click ie 1 quick down, up and then hold down. I use this for a positive ramp eg as volume up
4 Actiion D: Double click, Always a cancel
These are all mapped to note/ctrl outs that match the 'Selected Track Control' below
Use PD VST to create a plugin version of your patch. This is loaded into Live as a control track. Live manages the connection of your floor board etc into the actual track so you dont wrestle with the io. I always use track 1 for click (forget Live metronome, this is much more flexible and can have feel/swing etc) so I dedicate track 2 to control.
Use LoopMIDI to create a virtual midi cable that will go from this track and be fed into the remote script.
REMOTE SCRIPT: 'Selected Track Control'
Download latest from http://stc.wiffbi.com/
Install to live and make sure your notes/control conform.
Enable this as a control surface in live and connect midi in from the plugin. Think about giving the guy a donation...massive amount of work and he deserves it!
I use it to control 8 tracks x 8 scenes and is controlled by 3 switches
- Scene control up and down (A = down, B = up)
- Track control same as scene
- Rec/Fire/Undo Volume up and down (A = fire/rec, B = Volume Down, C = Volume Up, D (Dbl Click) = Undo
The scenes and tracks wrap so there isnt too much foot tapping
There is quite a bit more to it of course...its and maybe no one else needs this but it would have saved me a couple of weeks of time so Im happy to help anyone wanting to achieve gigging without a massive floor rig and an easy way to map and remember.
hehe...too true. Windows 10 is hideous for updates...metered connection seems to be the only saviour.
Max for Live seems to be ok...most of the PD stuff can be copied verbatim...mostly.
Understanding the Object Model is a little tough but just bought a book on it...dont have the time to fumble so its worth it.
Your help has been amazing David!
I didnt realise you could make a vst out of pd...that would have probably stopped me going further ie Live max.
Thanks @bang; that sounds like a great solution. I have taken the plunge and bought max 4 live as it removes a whole bunch of issues and makes the simpler extremely simple. Now Im just hoping everything that was programmed works in M4L without too much trouble :-\
Send keys is broken in vbs/w10 and documented to be so when doing a google...so Im guessing that may be why input_event is broken ie api changes.
I have tried autoit and its send still works if I run it from the editor...however using pd 'system' to run the script or exe doesnt seem to work...so def stuck...and for anyone trying to send an undo to Live for looping...it really does present a shop stopper...
Thanks @whale-av. I should have given more background...
Im trying to emulate the rotary knob endless type encoder that sends incremental relative controllers. It would seem that it sends 2 messages using NRPN which Im completely unfamiliar with and not really understanding what I have read...so here is the background;
Building on the behaviour abstraction you helped me with previously, we have 4 possible behaviours (and flag outputs); a single quick click, a double click, which are fairly immediate actions Ill refer to as primary and secondary. Then there are 2 behaviours that have a pedal hold action;
AA. PedDown held for more than 500ms and its cousin;
AB. PedDown/PedUp/PedDown and hold
Ill refer to AA - (A)ction(A) etc and AB - (A)ction(B) below
These will standard actions of lower/raise volume as the pedal is held...
So Ill use the metronome in Live as my first example; I want to be able to turn the it on and off during various looping during performance (which is really a click track that uses hi hats samples instead of obnoxious ping pong sound). This happens by the primary action of a quick click as a toggle.
Depending on context, the click volume quite often needs to be varied as the song progresses in layers, so I want AA (Action A) to send inc controller up and AB dec etc. The same AA and AB are used when Im controlling volume on a track so it needs to be relative and not absolute.
No resets are required etc as only a relative controller will do, because I dont know what current level may be applied...absolute scaling is not really what Im after...I did try that originally but is not ideal.
This is a sketch I came up with...but the actual message for inc/dec type multi part controller is the mystery I need solved. This is using the track number + 16 as the cc number but I was thinking to parametise the input once its working. I realise this sketch misses the first fire from the pedal but I can live with that due to the extra simplicity...unless there is another easier way to do it?
EDIT: Ok...answered by myself but hopefully help others..in Live, you set controller to Signed Bit 2. Then any cc can be treated as relative. The key to the step size is expected acceleration; 1-63 is increment speed, 65-127 is decrement speed ie value of 1 is slow ramp, 63 is large steps.
I have a need whereby I hold a foot pedal down and want it to send a relative controller to change a Vol slider...but it seems quite complex...not just a single eg 64 127 1 type controller message...would help if I could see example of others using it.
Eg If I send a cc 96 (inc) with 127 it increments but in large steps...one controller Ive never to had to manage...always a first!
That might work...autoitx.dll can target windows directly...might be a bit clunky but Live doesn't have a midi remote for undo...despite their forum being littered with requests.
Totally agree with lock down. My daw hasn't changed since 2011 with xp...no net etc.
See how it goes. Cheers
I did spend a bit of time with Mr Bome (Floria) trying to get timers to work, even writing it all in vbs/midi and then pd. MT is a great tool...
Can pd execute or run any system stuff? The undo isn't millisecond critical...and ideal if I could use autoitx.dll as it doesn't need focus
I'll check out tcl...early morning here...off to play some music
You are a great help David!
Thanks for your thoughts...great to get feedback from your very much wider perspective.
RE Bug...bit of a background
It was as you said...but more the point that pd was trying to take exclusive control of the audio i/o and seemed to create a collision...as soon as I unticked the io...it all worked...thanks again.
Your patch seems to work great...good to see a clean up and understand a little deeper.
The help file for input_event still opens so I think the dll is kaput...sadly as there is no other way to undo via midi in Live. Not sure what to do there. Could pd execute an autoit script or dll? That way you could use a direct send to window rather than needing focus?
Im obviously trying to set up performance rig like a hardware box whereby I basically plug up, turn on and play (have performance daw set up on a dedicated surface pro 3 that doesnt do anything else)
I use the setup in a couple of modes;
A. Midi Guitarist
B. Percussionist/atmospheres etc
with LIve as the centre hub.
- Floor board is always present (looking for some way of installing better switches on the rig kontrol 3 if anyone has any pointers or maybe arduino/pd/bluetooth would be amazing)
- UR44 IO always present
- Fishman Triple Play always present
- Optional Axiom Controller Keyboard or Percussion controller eg KMI Boppad
In boot sequence (using vbs/autoit script to facilitate auto start up);
- loopMidi - To setup internal patching
- Midiox - To take care of different usb hardware being plugged in via vbs as I have had a lot of trouble trying to do this in pd and eventually gave up...although it would be a lot simpler. Can interrogate usb devices plugged in etc
- Pd patch
- Ableton Live
So if there are any resources really detailing the auto connection of midi io in Pd, that would be brilliant...would like to remove the need for midiox.
The idea of using arduino to hardwire this into a new foot controller sounds amazing but I just dont have the time to learn more atm...anyone out there interested...Id be willing to donate towards it
GUI prob: I'm not using audio in pd at all...midi only and the 2 machines are mostly the same except w8 vs w10. The console window does bring an error up on the w10 on open of the file...
could not create
So I used old school deduction ie continually halving the file until its located, not realising you can just use the find tool...doh (although the error is not the actual name of the objectd). So it seems that input_event seem to be broken on w10? I have the same 0.43.4 extended on both
Commenting the s & r makes sense. I didn't think the execution order mattered too much as each action type is mutually exclusive until the pedup flag is reset.
Q: just before outlets 2 and 4, you have inserted bangs...why is that...to keep visual debug? Doesn't sel send bangs from successful outlets? Just trying to make sure I understand. I had bangs off the sel purely as a debug tool...is there a better way to visually debug?
Also, is it better to use a symbol or a float to store a constant ie sel 1 3 is using a number 0 to reset the checkbox...what is the better reset atom?
Really appreciate your excellent advice!
I admit I have a long way to go with styling...commenting is hard work in pd
Is there a problem with W10? I did all the dev on this w8 lappy and moved it on to identical setup on w10 surface...I run pd...all good...as soon as I boot Live, the buttons on pd are erratic and its so simple I cant see any midi feedback loops etc?