else externals not working on Raspberry Pi 4B running PD 0.51.4
@Dizzy-Dizzy I do have a RPI but I am not very familiar with Linux.
On my RPI3B Raspian... stretch I think....the wish executable is in /usr/bin.... and also the wish86 executable.
wish86 was probably installed when I installed Pd via apt-get.
First check that you have them on your system........I think they must be there because you had Pd installed before.
Then, so far... the only help I have found is here..... https://askubuntu.com/questions/515610/wish-missing-but-tk-is-installed ........ but I find it strange that your error was for wish and not wish86.
If you don't find wish86 in that folder maybe you can simply copy it from the source code folder...... but it probably needs to be installed so..... sudo apt install wish86.... and maybe also sudo apt install wish.
... from this page....https://wiki.tcl-lang.org/page/Raspberry+Pi
I hope I am helping, but I am not confident.
Pd starts and then uses wish to create the on-screen windows and draw the patches..... so your build might well be good but without wish nothing will be drawn to the screen.
David.
pack not outputting values from tabreads correctly
Hear, hear. I've been getting into the habit of (trying to) ALWAYS use [t whatever whatever], even when it seem unimportant. Too many times have I been bitten by a seemingly-innocent execution order (egad that sounds sinister) from the earliest experimental stages of whatever patch I've been building.
Connect multiple outlets to the same inlet
@lo94 just noticed that where I have put $2 below it should be $3 as you have two arguments already
Just back home and admiring the giant spirograph screenshot you posted above.
As [select 0 1 2 3 etc.] is receiving numbers you can simply do away with it and send those numbers to all the [control] abstractions...... [send whatever]
You will move the [select] function into the abstraction itself.
Create your abstractions as for example [control-guts DrumSeq#_ClapProb_hsl1 $0 arg] where "arg" is 0 to 15 for the 16 abstractions.
Then, in the abstraction, instead of the inlet (or alongside) put.....
Then each abstraction produces the bang on the left outlet of [sel $2] only when it receives its number.
My "cold inlet" in the screenshot is just to show that you will connect the left outlet of [select $2] to the same place as your current inlet.
David.
Ps..... now might be a good time to change the data to 1-16 so that $2 can match the "hsl" number (1-16) and so avoid later confusion..... a [+1] before [send whatever] will suffice.
Of course "whatever" is also just for demo purposes.
Passing a list as parameter to csound6~
Hi everyone,
I've been playing a bit with a Csound handpan synth from here and I've used the r_cycle external to make a handpan with my Launchpad (the patch is not very complicated so I didn't try to make it neat, sorry!).
The csound patch maps specific MIDI notes to the synth according to a scale, and the Pd patch lights up the pads so each colored group of pads sends the corresponding MIDI note to CSound:
I'm super happy with it, but the next step is to make it configurable: the csound patch contains many different scales defined with giNotes = ftgen(0, 0, -<number of notes>, -2, <list of note numbers> )
:
; B Kurd
;giNotes = ftgen(0, 0, -10, -2, 47, 54, 55, 57, 59, 61, 62, 64, 66, 69)
; B Golden Arcadia
giNotes = ftgen(0, 0, -9, -2, 47, 51, 54, 58, 59, 61, 65, 66, 68)
So instead of editing the CSD file and changing the color mapping of the launchpad when I want to change scale, I would like to send a list/array/table of note numbers from Pd to [csound6~] via a message (and adjust the MIDI notes sent by the launchpad at the same time).
I know basically nothing about Csound, so I've read up and found examples using chnget
/chnset
or invalue
which seem relatively straightforward to change the value of a single int variable. However I don't really have any idea on how to pass the list/array of scale notes using chnset or invalue, or if there is a better way to do it.
Maybe someone around here has an idea? Thanks for reading so far in any case
Launchpad4Oktatrack
hello everyone
since you cannot change outgoing midi messages in those devices,here is my patch to turn Novation Launchad mini mk1&mk2 into Octatrack midi controller,plus i added few small but nice features...
Repo
https://github.com/k2z3k0/launchpad-for-octatrak-in-pure-data
Example video
Getting Started with Raspberry Pi, Pure Data
How to deal with Raspberry Pi as usb midi host
Raspberry Pi audio/midi board
https://blokas.io/pisound/
Raspberry Pi audio/midi board
https://www.osaelectronics.com/.../midi-board-for.../
Raspberry Pi how to get midi out out of onboard GPIO
https://github.com/nugluke/midi2gpio
best regards
Kazik
Animation jitters?
@rep - Hi. Thanks for the reply but I'm just replicating Bryan WC Chung's patch on page 76 of his Guide.. Will give it a try later though. Many thanks.!
Purr Data GSoC 2021
Hi all,
Purr Data is participating again as an organization in Google Summer of Code. Anyone interested in applying is welcome-- visit the Google Summer of Code page for more info:
https://summerofcode.withgoogle.com/
And our Purr Data page there:
https://summerofcode.withgoogle.com/organizations/6001000428601344/
We also have a project ideas page here:
https://git.purrdata.net/jwilkes/summer-of-code-ideas-list
I just added the idea of building a General Midi synthesizer using only Pd Vanilla abstractions.
Changing pitch of mic input real time (autotuner)
@damonb8222 Not simple.
This is worth a read....... http://www.katjaas.nl/pitchshift/pitchshift.html
and on the next page you will find the "Soundtouch" library. It is old, so the binaries are 32-bit and will need recompiling.
On the next page after that is "Helmholtz" which does a good job of finding the incoming pitch.
But the LADSPA plugin was ported years ago. I have this for Pd 32-bit in windows..... autotune.zip
You should find a 64-bit version on this page....... https://github.com/uliss/pure-data/releases
as part of the Ceammc library.......
It should also be available for your version of Pd through the "Find Externals" Help menu in your Pd terminal...
Search for ceammc in that window.... and follow the on-screen instructions.
That will be the easiest way to get what you are looking for.
David.
Slider that can be "stepped" with keyboard Arrow keys?
@sdaau_ml It can always be done and @ingox solution is easier and prettier......
Here you go....... whatever.zip
And @Boran-Robert is quicker than me because I gave you a selectable abstraction......
Add arguments to set the slider range within the abstraction if you wish..... 0 254 or 1 10 or whatever.
Give the slider a $0 receive address and loadbang the range into it from the arguments sending it a message [$0-this_slider range $1 $2(
Then it will be more universal.
To be totally universal you will need arguments for log/lin, size and the colours.
David.
Starting a Pure Data Wiki (Database/Examples Collection)
@ingox So, how is it going to work?
Someone needs to work out a hierarchy and format with appropriate page titles.
Permissions will be needed to keep it under control.
I think it will need to be quite constrained or it will just become a parallel of this forum.
It will need to be kept very tight.
References at the bottom for useful follow-up like in Wikepedia, but restricted concise information for each page or it will run out of control.
Any links will have to lead to a concise sensible page too......... not a discussion.
I would suggest starting with all known Pd objects, especially as the documentation is already mostly done in their help files.... that currently you only get to see once you have created the object....... that you might not know exists.
So maybe the same hierarchy as Pd..... math, audio, audio math, gui, ..... as in help-intro.pd... ?
But the elephant in the room is the tilde~. A wiki which doesn't use it as a Boolean operator?
David.