pure-data / pure-data Goto Github PK
View Code? Open in Web Editor NEWPure Data - a free real-time computer music system
License: Other
Pure Data - a free real-time computer music system
License: Other
# Pure Data This is the README file for Pd, a free real-time computer music system. ## Getting Pd You can get Pd for Linux, macOS, or Microsoft Windows from: http://msp.ucsd.edu/software.html or from the Pure Data community site: https://puredata.info Installation instructions are in INSTALL.txt and the Pd Manual at: http://msp.ucsd.edu/Pd_documentation/index.htm If you download and unpack Pd, you will also find the Manual locally in the file "doc/1.manual/index.htm". Linux (or FreeBSD): In some Linux installations you can download Pd via "apt-get install puredata" or "dnf install puredata"; otherwise you can download the source and compile it as described in INSTALL.txt. Apple macOS: Pd binaries are distributed as a "tar.gz" file. The web browser will probably download this archive into your Downloads folder. Double click to extract the archived Mac app which you can then run and/or drag into your Applications folder. Microsoft Windows: Pd binaries are distributed as a self-extracting executable or as a "zip" file. If you have questions about Pd or if you wish to be notified of releases, you can browse and/or join the Pd mailing list: https://lists.puredata.info/listinfo Many extensions to Pd are available, for instance to add video and 3D graphics. The easiest way to get these is to use the "Find externals" command in Pd's Help menu. ## Copyright Except as otherwise noted, all files in the Pd distribution are Copyright (c) 1997-2024 Miller Puckette and others. For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see LICENSE.txt included in the Pd distribution. (Note that Tcl/Tk, expr, and some other files are copyrighted separately). ## Acknowledgements Thanks to Harry Castle, Krzysztof Czaja, Mark Danks, Christian Feldbauer, Guenter Geiger, Kerry Hagan, Trevor Johnson, Fernando Lopez-Lezcano, Adam Lindsay, Karl MacMillan, Thomas Musil, Toshinori Ohkouchi, Winfried Ritsch, Vibeke Sorensen, Rand Steiger, Hans-Christoph Steiner, Shahrokh Yadegari, Dan Wilcox, David Zicarelli, IOhannes m zmoelnig, Christof Ressi, Antoine Rousseau, Alexandre Torres Porres, Claude Heiland-Allen, Roman Haefeli, Lucarda, Seb Shader and probably many others for contributions of code, documentation, ideas, and expertise. This work has received support from Intel, Keith McMillen Instruments, ZKM, IEM, and UCSD.
I stumbled across the FILE_LARGE_ADDRESS_AWARE flag on Windows and apparently it doubles the available RAM for a 32-bit Pd process on 64-Windows from 2 GB to 4 GB.
I couldn't find any disadvantages so far...
This is related to #145. The new add-to-path message calls _sys_savepreferences which is not built with libpd:
Undefined symbols for architecture x86_64:
"_sys_savepreferences", referenced from:
_glob_addtopath in s_path.o
ld: symbol(s) not found for architecture x86_64
I'm not 100% sure if this is a beta bug with the latest Xcode or a deliberate deprecation/removal, but in any event, when I try to build libpd
for iOS in Xcode 9 beta 2, I am seeing a compiler error in the sys_putpreference
here. (I also don't have the latest version checked out, but it looks like the other system call in glob_forgetpreferences
will also generate this error.
The error is: 'system' is unavailable: not available on iOS
I almost filed this in https://github.com/libpd/libpd or in https://github.com/libpd/pd-for-ios, but since the core of the issue is here in pd itself, I thought this would be a better place.
Unfortunately, I also haven't fully figured out the best way to solve the problem, but it does look like it should be possible to set user defaults analogous to defaults write
using Core Foundation.
The cos table in d_osc.c is constructed in one shot using cos() from math.h. This table is slightly asymmetric, which means it is unstable for FM using [osc~]. [tabosc4~] fares a little better with a similar table constructed in Pd due to cubic interpolation, but for real symmetry, the segment of the cosine table from phase 0 to pi/2 should be copied. See attached Pd patch for an illustration; I have a working d_osc.c modification that fixes the problem, which I can submit if desired.
(This issue was raised by Porres on the list some time before PdCon16, but I think it got lost among everything else)
Is this a reasonable place to file general PD issues? Seems like @millerpuckette is paying some attention to this repo despite it's unofficial status so it would be great if this were a place people could file issues in a way that doesn't get lost into the mists of pd-users. Also the sourceforge "issue tracker" link here is a 404.
EDIT: clarify which link I'm referring to
Externals added with Deken only show-up on the Browser's "externals" sub-folder.
After a restart they show-up in the Browser's main column.
Tested on win8.1 & win10.
This problem occurs when, while receiving OSC data from inside the machine (thus using a localhost), DSP is turned on. The OSC data stops visually flowing (the GUI freezes) until the DSP isn't turned off.
Even though it might seem like a GUI glitch, this has a major delay effect also on the digital sound processing. The delay rises up to 5 seconds when the glitch occurs. The same effects appear if the patch is launched with the -nogui command from the terminal.
The only workaround I found to solve this issue is to run two separate instances of Pd: the first one that will act as an OSC parser, not having the need to turn on DSP. Once the data is parsed, the data is sent to a second instance of Pd via FUDI protocol (netsend) where it can coexist with DSP on without causing any issues.
This unfortunately brings up the amount of computing power needed.
The bug can be replicated in two different ways.
On MacOS the glitch appears even by simply sending OSC data from pd and receiving it on the same patch at a high rate.
On Linux this doesn't happen, but it can easily be reproduced by sending OSC data to Pd from another application, Processing for example, at a high frame-rate.
Example patches are attached below.
# UPDATE
The same glitch appears with large amount of data incoming NOT formatted in OSC, but in Pd's native formatting FUDI. To replicate this, run this small python script in the terminal typing first:
python
and then pasting the code below:
import socket
import time
IP="127.0.0.1"
PORT=5005
addr=(IP, PORT)
EOL=';\n'
sock=socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
for i in range(10000000):
msg="list foo "+str(i)+" bar"
sock.sendto(msg+EOL, addr)
time.sleep(0.001)
This example sends data to PD via FUDI using the local host on the port 5005 every millisecond. As said previously if DSP is turned on the GUI freezes. The issue is avoided if the data is throttled once every 10 milliseconds. (This is achieved by changing the last line of the python code to: time.sleep(0.01)
After looking around the code I found pdtk_text_new:8
which takes a variable color
.
This function appears to be used in g_rtext.c:312-320
where it appears the the colours "black" and "blue" are hardcoded, although I don't understand the C code to figure this out myself sorry.
Is this true?
another cool suggestion I would like to make, is that perhaps, we could think of a way of suddenly making a qtquick UI with a better aesthetic appeal then even MaxMSP one. I can contribute to this, but I will need the help of people in the community to accomplish such an issue
When I use a block size >= 2^20 (and sometimes >= 2^19) with [rfft~], pd crashes.
I tried with Pd 0.47.1-32 & 64bits on MacOS 10.12.5.
Here the console report:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 pd 0x00082bd4 mayer_realfft + 36
1 pd 0x0007a46c sigrfft_perform + 28
2 pd 0x0006ce55 dsp_tick + 37
3 pd 0x00059ef6 sched_tick + 214
4 pd 0x0005ad63 m_mainloop + 1875
5 pd 0x0005e8b9 sys_main + 1577
6 pd 0x00001f19 _start + 208
7 pd 0x00001e48 start + 40
Here the files to test it (FFT-tests-1.pd makes Pd crash and FFT-tests-2.pd is alright - remove the extension .txt):
FFT-test.pd.txt
FFT-tests-1.pd.txt
FFT-tests-2.pd.txt
I uninstalled 0.47.1 and installed 0.48.0.test1 and tried to open a file of
seven placed abstractions but only two appear as the expected gop objects.
(the dark green canvas was moved manually). Screenshot 1
Uninstalled 0.48 and reinstalled 0.47.1 and the file opens correctly. Screenshot 2
Forgot to mention system is win 10 when I sent this to Pd-lists
Cheers
David Adams
The osx-app.sh script only copies the minimal requirements into the Pd macOS app bundle: the binaries, help files, translations, etc. The source files are left out in favor of the headers only.
Recently, it's come up that the entire source tree should be included inside the app bundle: pure-data/pd-lib-builder#33
A solution to this could be to add a "--fat" flag to the script which optionally copies in the full source tree.
There is a small bug in PD while turning off the GOP area through the properties menu. Let's say you have a subpatch or abstraction on the canvas which has "GOP" and "hide object name and arguments" selected. If you go to the properties menu and deselect GOP and hit apply, it won't turn off.
What does work is to turn the "hide..." option off, apply, then turn the GOP off and apply. But I'd imagine that a lot of users will get confused searching for this.
On MacOs with Pd 0.47.1
When I try to resize an object close to another one (but doesn't overlaps it visually), there is a confusion between the objects about which one must be resized.
I think this happens when one is above another, when you want to resize the one at the bottom this is the one at the top that is resized.
I guess the good object to select can be found easily because it is selected anyway - even if the wrong object is resized.
See the example with comments:
I've been noticing that with the new GUI prefs, the recent files entries do not work after restarting Pd since they all have a single quote char suffix ala some-patch.pd'
.
In digging into pd_guiprefs.tcl, I see embedded single quotes in the string are escaped properly but that the string is enclosed by single quotes when passed to the defaults command to update the macOS preferences plist. From what I can tell, Tcl treats single quotes as regular string characters so the single quotes are not actually treated as marking the beginning and ending of a string but as being added to the string itself aka this in Tcl:
set path /path/to/some-patch.pd
set quoted '$path'
puts $quoted
prints:
'/path/to/some-patch.pd'
So this string now contains the quotes and those are then added as the string into the defaults file. When Pd restarts and loads the recent files list, the single quotes are there and the ' suffix means the file path is invalid.
I'm digging into how to pass the single quotes along to exec so they are treated as actual string delimiters and not as part of the string. This is all down to the fact the defaults man page states that single quotes should be used, annoying.
This is an issue that relates to other Pull requests and parallel discussions, like: #183
In short, some of us were used to relying on "additional standard paths" for managing externals, but @millerpuckette points out (and I quote) "the way forward is to somehow get the "path" mechanism to do what people are asking for." see full message at: https://lists.puredata.info/pipermail/pd-list/2017-07/119839.html
Regarding that, there is a user case related to [declare] if you use "standard paths" and the -stdlib and -stdpath flags that I hope we can achieve with the -lib and -path flags as well.
Say you have externals elsewhere than Standard Paths (which should only be the "extra" folder, according to Pd's manual). The idea is that you have to add them to pd's Path, but if you wanna use [declare], you can only use relative or absolute paths, which I think are much more complicated to manage. So we could make the "-path" flag also search and find subdirectories in user added paths.
Let me illustrate. If I have cyclone in a standard path, I can keep the search path empty and just use declare to call it. This seems to be what Miller suggests it's a good practice in #152 (comment) - and I agree it's a nice one, but we need an enhancement to [declare] so it really works.
See the picture below: search path is empty, and declare is being used to load cyclone with the "-stdpath" flag.
So, now we do not want to mess with standard paths no more, and we can put it in a different folder, such as ~/Documents/Pd/externals - if I have cyclone in there, I cannot use [declare] in a simple way like this:
Unless I do an absolute path, and that is much more complicated than before with standard paths. But if [declare -path] also searches in the added search paths, this would happen.
cheers
I don't find a way (or create a simple patch) to reproduce the error but Pd crashes when I perform some actions on a abstractions that manage a graphical data structures system.
I don't know if it's relevant but for example my patch contains one or more [struct] objects and it automatically draws at loading (mostly with [append] objects) inside a canvas (given as an argument). If I make a patch that I can share (with no dependencies) that crashes I'll add it to this issue.
I tried with Pd 0.47.1-32 & 64bits on MacOS 10.12.5.
Here the crash report:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 pd 0x0000000103c0a82f pd_findbyclass + 63 (m_pd.c:191)
1 pd 0x0000000103bde102 template_findbyname + 66 (g_template.c:489)
2 pd 0x0000000103bdc9eb scalar_vis + 107
3 pd 0x0000000103bdc35f scalar_doredraw + 31
4 pd 0x0000000103c13b75 sys_flushqueue + 293 (s_inter.c:809)
5 pd 0x0000000103c12956 sys_poll_togui + 86 (s_inter.c:832)
6 pd 0x0000000103c128e7 sys_pollgui + 39 (s_inter.c:893)
7 pd 0x0000000103c0bfde m_pollingscheduler + 462 (m_sched.c:523)
8 pd 0x0000000103c0bd32 m_mainloop + 50 (m_sched.c:597)
9 pd 0x0000000103c15a83 sys_main + 595 (s_main.c:363)
10 pd 0x0000000103c0f282 main + 34 (s_entry.c:32)
11 libdyld.dylib 0x00007fffb43f0235 start + 1
It seems that the problems come from the name (sc_template) of the structure in a scalar. Sometime the symbol is not valid. I tried to add conditions that check if the symbol isn't NULL in template_findbyname and scalar_vis, it seems to solve some of the crashes but not all.
Currently, Pd on macOS connects to jackd only when Jack was installed with the JackOSX package, which installs something called Jackmp.framework. When using jackd from homebrew or a self-compiled binary (with traditional lib format), Pd won't detect it and complains:
"Can't open Jack (it seems not be installed on this Mac)"
If it's technically feasible, it would be nice, if Pd would talk to jackd without Jackmp.framework.
I get this error running test7 pd from terminal, but I haven't had any problems and I don't know what it means, so I just copy it here:
The error happens after quitting pd from the gui (even if no patch was opened).
Pd-0.48.0 ("test7") compiled 18:17:00 Aug 9 2017
port 5402
"/Applications/Pd-0.48-0test7.app/Contents/Resources/../MacOS/Pd" 5402
Waiting for connection request...
... connected
Pt_Start() called
pdsend errorname: >>error writing "sock14": broken pipe<<
I started to update my project zpd (that is a kind of libpd) with the last version of Pd (before testing the new features in libpd). I don't really understand how sys_startgui should be used and what it does. In the Miller's branch of libpd, the example use a relative path but I don't know what is the path to my application and what should be the target of the path. The solution I found for the moment is to copy the static function sys_fakefromgui but it's dirty. Anyone has a solution?
Whilst I was packaging Pd (0.47-1 as well as current master) for gentoo I ran into the following issue: Pd compiled and ran fine but it would crash because of a SIGFPE when I tried to add any of the 5 default objects.
This is the accompanying backtrace
#0 0x000000000045c62a in rtext_senditup ()
#1 0x000000000045d454 in rtext_height ()
#2 0x000000000046b6cf in text_vis ()
#3 0x000000000043f06c in gobj_vis ()
#4 0x0000000000448e19 in glist_add ()
#5 0x0000000000468715 in canvas_objtext ()
#6 0x0000000000468ae5 in canvas_obj ()
#7 0x0000000000483a08 in pd_typedmess ()
#8 0x000000000044ccc9 in guiconnect_anything ()
#9 0x0000000000483edc in pd_typedmess ()
#10 0x000000000047dacf in binbuf_eval ()
#11 0x000000000048ddb7 in socketreceiver_read ()
#12 0x000000000048d0cb in sys_domicrosleep ()
#13 0x000000000048d152 in sys_microsleep ()
#14 0x000000000048881e in m_pollingscheduler ()
#15 0x000000000048895f in m_mainloop ()
#16 0x000000000049107b in sys_main ()
#17 0x000000000048b071 in main ()
After some digging I found out this was caused by my Tk being installed without xft/libXft support.
Now I did get a warning in the Pd console that Pd couldn't load it's font, but no errors.
AFAIK this is a compile time dependency that should be catched at configure time.
This can be done by passing --static
and --libs
to pkg-config
, like this
pkg-config --static --libs tk
And then checking if -lXft
is in the list.
In case that's problematic checking at runtime is, according to Tk's docs, relatively easy as wel
tk::pkgconfig get fontsystem
This should return xft
On current state (0e32313) built for Linux, after Font dialog is closed, the Font entry in the Edit menu is then greyed (for every window).
edit: actually opening most dialogs (preferences, help browser, Find, ...) then disables the Font entry.
It would be really super wonderful if Ctrl + s, e, c, v, and d worked with capital letters also. Reason: you can't use these handy shortcuts if caps lock is on. Seems like this would be an easy fix.
There is currently still a bug with saving the guiprefs on macOS. It's related to quote & string escaping. I fixed the issue with single quotes being added to the recent files paths but that approach now breaks saving filenames with parens. (Can't win.)
In any case, I'm opening this as a reminder that it needs to be fixed (and I'm working on it).
Below follow some DSP bugs I encountered while doing patches on pd:
Looking forward,
T.
Furthering recent chats on the mailing list, I've tried packaging Pd.app with the included scripts, specifically with an embedded Tcl/Tk framework, and the resulting Pd.app is crashing on launch.
I've removed ActiveTcl/Tk entirely from my system first, just leaving the Apple system Tcl/Tk.
Steps from git clone:
$ ./autogen.sh
[...]
$ ./configure
[...]
$ make
[...]
$ cd mac/
$ ./osx-app.sh -t 8.6.6 prod
[...]
$ open Pd-prod.app
Backtrack here:
https://gist.github.com/rnkn/0f6fafa718b164ad7ebc0a58d90e254e
This may be macOS only, but I'm seeing that the recent files menu is not being updated after the first file in the list. It looks like that value is being written as a string an not an array, so the list grows but only the first item remains. I'm also seeing that the log level is being saved as an empty array at start.
I'm making some progress so far...
currently, Pd-for-windows is built with both msvc
(to create a usable pd.lib
) and mingw32
(for the distributed binary).
it seems that the pd.lib as created by mingw32 is not really usable, yet.
this should of course be fixed.
here's a few tests if the created binaries are usable (new means Pd-binaries/libs/externals created solely by mingw; old refers to the traditional double-compilation)
pd
loadspd
can load new externalspd
can load old externalspd
can load new externalspd.lib
using mingw (without modifications of the build-system)pd.lib
using MSVC (without modifications of the build-system)I would suggest that we consider to:
by doing so:
Hello, I am trying to make a version of libpd which is up to date with Pd's master branch.
The pd-test program fails on test-extra.pd, having Pd built with PDINSTANCE defined.
bonk version 1.5
fiddle version 1.1 TEST4
pique 0.1 for PD version 23
sigmund~ version 0.07
error: consistency check failed: pd_globallock
This traces back to ooura_init. The bug condition suggests a pd_globallock() is attempted without a previous sys_lock(). It works for me using this solution, is this a correct fix?
diff --git a/src/d_fft_fftsg.c b/src/d_fft_fftsg.c
index 36853b2..d915008 100644
--- a/src/d_fft_fftsg.c
+++ b/src/d_fft_fftsg.c
@@ -48,6 +48,7 @@ static int ooura_init( int n)
return (0);
if (n > ooura_maxn)
{
+ sys_lock();
pd_globallock();
if (n > ooura_maxn) /* recheck in case it got set while we waited */
{
@@ -64,6 +65,7 @@ static int ooura_init( int n)
error("out of memory allocating FFT buffer");
ooura_maxn = 0;
pd_globalunlock();
+ sys_unlock();
return (0);
}
ooura_costab = (FFTFLT *)t_getbytes(n * sizeof(FFTFLT)/2);
@@ -73,12 +75,14 @@ static int ooura_init( int n)
t_freebytes(ooura_bitrev, ooura_bitrevsize);
ooura_maxn = 0;
pd_globalunlock();
+ sys_unlock();
return (0);
}
ooura_maxn = n;
ooura_bitrev[0] = 0;
}
pd_globalunlock();
+ sys_unlock();
}
return (1);
}
There's a new menu entry in "Help" named "Pd Help" which just opens the browser, so it the same thing as the "Browser" option below, thus, completely redundant.
Was this supposed to open something else?
cheers
If Pd cannot find the pd-watchdog
for whatever reasons, but is started with -rt
(real-time scheduling), it wlil crash
bang@foobar:~/src/pd/bin$ ls
pd pd-gui pdreceive pdsend pd-watchdog
bang@foobar:~/src/pd/bin$ mv pd-watchdog pd-watchcat
bang@foobar:~/src/pd/bin$ ./pd -rt
disabling real-time priority due to missing pd-watchdog (../bin/pd-watchdog)
sh: 1: ../bin/pd-watchdog: not found
Cannot lock down 1186 byte memory area (Operation not permitted)
Cannot lock down 82274202 byte memory area (Operation not permitted)
Cannot lock down 422 byte memory area (Operation not permitted)
pd: watchdog process died
bang@foobar:~/src/pd/bin$ pdsend errorname: >>error writing "sock5563782e16a0": broken pipe<<
^C
$
this has been around a while and thought i would submit as issue.
when copy/paste selected objects, objects are pasted over the top of the original copied objects.
there is much discussion on the list/forum about this and i think it makes it difficult for students, beginners when that are used to just copy/paste to paste a large selection of patch, try to more section and just get one object move and then fast lose selection.
the issue is for in same doc NOT when copy paste from one doc to another.
maybe this is just up for discussion. im taking to @porres on facebook about it now.
let's say there's an abstraction called 'foo'. if you create [clone foo 16], loadbangs inside foo instances don't fire as they would if you created a single instance (without clone). they do fire however if you save and reopen the patch OR if you click on [clone] and save [foo]. since the latter method is an easy workaround, it's not a big deal once you're aware of the issue. if you're not aware, however, you easily end up scratching your head why your abstraction isn't working as expected...
Using 0.46-6, bonk~ 1.5. Pd crashes completely if you try to read a template with bonk~. Help file is good test case. Works fine on OSX and Linux. Tested on Windows 7.
In the Add menu, the shortcut for horizontal slider is said to be Shift-Ctrl-G (which is actually Graph's shortcut), while it's still (fortunately...) Shift-Ctrl-H.
The major stumbling block for installing Gem via Deken is that Gem also needs to be added to the startup libs. Deken currently does not do this by default, so Gem is installed but not loaded, leading to confusion.
Two possible solutions:
line 24 of m_atom.c
t_symbol *atom_getsymbol(t_atom *a) /* LATER think about this more carefully */
{
char buf[30];
if (a->a_type == A_SYMBOL) return (a->a_w.w_symbol);
else return (&s_float);
}
'buf' is not used at all!
When compiling Pd version 0.48-0test5b with jack support and using the jackd2 version 2:1.9.11+git20170722-1~xenial2 that comes with KXStudio and should be similar to what's available from https://github.com/jackaudio/jack2 , Pd segfaults.
It looks like temporary paths passed to pd via the -path startup flag are being saved to the preferences since they are added to $::sys_searchpath:
pd -path some/path
We need some way to differentiate between the two so we only save paths manually added via the Path dialog & not the command line.
greetings. My name is Tiago Morais Morgado I have been using pure data since 2007, although not always in a systematic way, once I also work with other tools. I would suggest you guys to create a duplicate version of README in both txt and md format, so that we can actually stylize the README file using stylization
I know this is not much a priority but thought I would log issue anyway since maybe there is easy fix:
when creating a new doc and saving it without retitling it (ex. Untitled.pd) when the user "save" doc the "save as" dialog appears rather than just resaving "Untitled.pd"
I am not sure I am even explaining this correctly. I think this has been brought up on the list but considered a minor issue, which I agree with, but and issue none the less.
older versions of Pd (up to Pd-0.47; i guess starting with the Pd-GUI rewrite) would take the Pd-paths into account when looking for gui-plugins.
it seems that Pd-0.48 has dropped this.
looking at the output of "-d 1", it seems that this has happened accidentally, as the extra paths are transmitted to Pd-GUI, but are then cleared (before the built-in paths are transmitted).
$ ./bin/pd -nostdpath -noprefs -nrt -path /tmp/:/usr/bin/ -verbose -d 1
gives:
::pdwindow::post {running at normal (non-real-time) priority.\n}
set ::tmp_path {}
lappend ::tmp_path {/tmp/}
lappend ::tmp_path {/usr/bin/}
set ::STUFF->st_searchpath $::tmp_path
set ::tmp_path {}
lappend ::tmp_path {/home/zmoelnig/.local/lib/pd/extra/}
lappend ::tmp_path {/home/zmoelnig/pd-externals}
lappend ::tmp_path {/usr/local/lib/pd-externals}
lappend ::tmp_path {./extra}
lappend ::tmp_path {./doc/5.reference}
set ::sys_staticpath $::tmp_path
also that ::STUFF->st_searchpath
looks a bit suspicious...
Hi @danomatika I think there's a tiny error in osx-app.sh
on line 173.
I think it should be:
@@ -170,7 +170,7 @@ if [ $included_wish == true ] ; then
elif [ "$WISH" == "" ] ; then
if [ "$TK" != "" ] ; then
echo "Using custom $TK Wish.app"
- tcltk-wish.sh $universal $TK
+ ./tcltk-wish.sh $universal $TK
WISH=Wish-${TK}.app
elif [ "$SYS_TK" != "" ] ; then
echo "Using system $SYS_TK Wish.app"
Pd-0.48-0test3 doesn't produce any output with
[bang(
|
[print]
the problem seems to be, that when upgrading from Pd<0.48-0test3, no loglevel settings are stored in the preferences, so Pd assumes a value of 0
(aka fatal
); thus not showing the printout by default.
manually setting the loglevel to 2=normal
fixes this, but i think this is going to cause a lot of confusion.
When a subpatch has his size specified (after resizing it for example), the size is well saved at the end of the restore line (#X restore 15 16 pd zaza 10, f 55;
for example). But when the parent patch is reloaded (from the file) this is the last object in the graph of the subpatch (an [outlet] for example) that is resized. Then if the patch is saved, the size is saved for this object (#X obj 22 18 outlet, f 55;
for example) and ignored for the subpatch (#X restore 15 16 pd zaza 10;
for example).
Behind, this is the patch in the text format.
The video starts when the subpatch is resized.
On Windows. it looks like the string encoding from the Pd core to the GUI strips the Windows backslashes from the Patch path displayed in the Patch window titlebar.
I don't have a screenshot, but it basically looks like:
Untitled C:UsersNameDocumentsPd
When it should be
Untitled C:\Users\Name\Documents\Pd
I can confirm the string is sent to the GUI without the slashes.
I need to get the number of channels to automatically load multi channel files into a set of tables according to the number of channels in the original sound file.
But maybe [soundfiler] is not the best place for this, as it would spit it out after the file has already been put into a table. If so, maybe the only way out is with another object that gives us info.
cheers
i've configured Travis CI and Coverity Scan to automatically build and analyse the code-base of Pd.
Currently the configuration is only active in the travis-ci
branch, but eventually i will create a pull-request to merge it into master
.
If anybody wants access to the Coverity Scan dashboard to see the actual bugs/vulnerabilities/issues, drop me an email.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.