Multiple patches sending to the same Arduino / change block size?
I'm working on a project involving Pure Data and Arduino. The idea is to play an audio file while controlling a pump that breathes air into an aquarium, based on the envelope of the audio, so that the bubbles correspond to the voice that you hear in headphones.
My problem is, while it works perfectly with one aquarium (playing the audio file + controlling the pump), it's less precise, and sometimes completely off, when I'm adding the others.
The logic of one aquarium is inside an abstraction, [aquarium], with the file, threshold, audio output and Arduino pin as creation arguments. Every instance of the abstraction is playing its own file into a given audio output, and sending messages to the Arduino ("turn on pump X" or "turn off pump X"). It works quite well for most of the aquariums, so I guess (hope) the fix must be simple.
I tried different ideas to limit the message flow but didn't quite succeed (hence the mess below the [dac~] object, this stuff is not used anymore).
I only recently thought about increasing block size, thinking that would reduce the number of messages sent to the Arduino. However using the audio settings, it didn't seem to change anything, and I'm not sure how to use the [block~] object. Do I have to send the audio output through an [outlet~] object? I guess that would mean each of my 9 [aquarium…] blocks would need to have 9 outlets going into a [dac~] object in my main patch, and that would be a big spaghetti plate
I'd be curious to know if any of you has ever encountered this kind of issue, or has an idea to fix it, either with block size, pure data magic or anything else…
Is it possible to execute an .exe from within Puredata
I'm fairly sure not. But my reason for asking is that I have written a small exe in vb.net that reads the presets (instruments) of a soundfont2 file and puts them in a text file that is compatible with [popup]. I can use this to read the huge SGM-V2.01.sf2 (250mb) soundfont and use puredata to send program change/control change/nrpn etc. to fluidsynth/soundfont player.
I am reluctant to upload the exe. but would be happy to upload the vb.net source as text if anyone is interested.
But running the program external to puredata is clunky to say the least.
Adjust Hue of pix_video or film
Hello Is there a way to shift the hue for a video or film?
This is what I am aiming for:
Thanks a lot!
Little help please, "TiGR_Resurrected", smart phone guitar rack, (beta) to be issued for free
I returned to this project after a haitus and more learning and while it has become much, much more streamlined and higher headed (:---) it is still having the same issues running inside MobMuPlat: garbled sound.
If you have or can make the time, please, have a look at it, and tell me how I can resolve this problem, as I think it would of benefit to the world-at-large, thru the guitarists in the world, and as there are so few guitar apps, for Android.
It has a simple master patch, largely based on the "Router", into which all of the pedals (16) have been embedded.
And taking whale's (?) advise I added switch~'s to all the pedals so dsp only turns on when they are activated.
The first (MobMuPlat) page is the "rack", TiGR=The (i) Guitar Rack, which each pedal being on a subsequent page (swipe at the top) (note: currently "Presets" and "Record" do not do anything).
The hardware I am using which may be the issue is a Motorola Moto E (2nd Generation) with 4G LTE, Android 5.1, Kernel 3.10.
And I can't tell if it is my hardware's problem or libpd is just not up to the task to handle the load.
You select the pedal from the first page (the sliders, so you can stack multiples of the same pedal)
Each page has it's own settings/controls and a bypass.
(Note: more "slots" could be added, if 6 is not enough , by just adding sliders and Routers.)
I thank you so very, very much in advance for any advise you can offer.
Maybe if enough of us chime in we can get this (free) into the hands of all those guitarist who do not have enough supplementary income to spend on a rack.
p.s. as to credits, it depends on a lot of other people's work. To name a few, Guitar Extended, hardoff's DYI2 library, tb_compressor, etc., etc.
And to them I say: "Thank You. It is so wonderful to walk on the shoulders of giants who are so kind, generous, and loving. -Peace"
Please help: Random sampling gets more complicated
To stop the metro you need to send it a [stop( message.
You will need to send a bang to the stop message when you have completed the sequence.
Can you upload the actual patch (my_patch?.pd), rather than a picture....... it is easier for us than building it again?
Mini Drummer, Very cool for Jamming
i bring you this little drummer, you have to load some samples, and sequence a pattern, you can change it to some Metrics (4/4, 12/8, 3/4), And set if a sample jumps some measures, (The knobs "Steps"),
Click in "Eq/Mix" to open a new window
Hope you like it, i accept critics
get name of an open pd patch as a symbol?
@heyok @heyok No, but it does return the reference that you can then use in messages........ that tk/tcl will understand and interpret......... it does not care about the filename.......... you could have a sub-window open........
Try this........... it's quite powerful......
If you want the canvas name as a symbol (in extended) then use [iemguts/canvasname-abs]
If you want it in vanilla I think it will have to be an abstraction, with its name added as an argument..... and then you can bang $n into a symbol atom..
What do you want to do with the canvas name?
You will need sys_gui in your path for vanilla.........