Signature
-
cacosomoza
Hi there! I haven't been puredating for a while. I have BIG problems with dsp load and I don't know how to solve it. I created a big patch to play live. It contains several sub-patches and abstractions. Honestly, I think the code is very untidy and inefficient and I resolved to redesign it.
I'm on OS X , Book pro 2.9 Ghz i7, 8GB Ram. The main problem is that my program seems to overload CPU. Whenever I open it, Activity Monitor shows constantly 99%-100% CPU usage.
- I would like to know which are the best and more informative ways to monitor CPU usage within a big patch. I would love "local" information.
Laptop fans start like if the system was being raped and it looks as if the laptop is going to take off. The program gets super slow and it takes seconds to answer my movements. Things became pretty unusable. I tried several things: First, [switch] off the program so that I can study my code and see where are my cpu burglar routines. I saw switch just shuts up audio but computation remains. Turning audio off with Cmd+. doesn't help neither.
- Is there a way to see a complex patch and make sure no computation is taking place? I thought about taking images of every abstraction/subpatch within. Obviously, reading the patch as text file is nightmarish.
Alternatively, I delete modules one by one in order to inspect where I have a considerable decrease of cpu usage. Problem is, deleting abstractions or subpatches causes PD to crash almost every time I do this.
- Why?
As far as I know, things one should avoid to increase efficiency are:
-
Do not overload patch with GUI components. Is this also true for bangs? Sometimes I use gui bangs to convert a message signal into a bang (throw event x when parameter y is changed) Is this problematic? Are signal graphs very cpu demanding? what about knobs, faders, etc?
-
Use data signals instead of audio signals when possible. I like to use audio signal to control audio, but I'm aware this should not be escalated quickly.
- Do you know a comprehensive tutorial on efficient design? Is there any place I can check how come cpu-demanding are every object?
Thank you guys for your time, I'm in desperate need of your help!
I also increased latency up to 500 ms as recommended in this thread:
http://puredata.hurleur.com/sujet-6781-dsp-cpu-usage -
cacosomoza
Hi there! Just searched about it but didn't find any results.
Whenever I use a subpatch with 'graph-on-parent' enabled, I have to right click on it from the parent patch and hit 'open' in order to see it.
Is there any way to define a key combination, such us 'ctrl +click' in order to access them faster? It drives me nuts whenever I'm live and need to change something specific within a subpatch. (In my honest opinion, working with abstractions is painful whenever you keep using them and updating them in different projects. While with subpatches it is a Copy+paste matter)
Thanks in advance!
-
cacosomoza
Hi there! I find myself kind of lost. I'm designing a simple drum sequencer. I want to be able to use mp3, flac, and related files so my only way out is readanysf~
Problem is when using readnsysf~, if I send several "play" messages in short bursts, this object won't play this file every time, so there's always a humble limit to how many plays can receive per second.
I thought I should dump the file to a table (I'd use soundfiler if I could get it to read other files) and then play it using tabosc~ or similar. How do you usually approach this issue?
-
cacosomoza
First of all, I already read excellent tutorial on the subject by Maelstorm and the superb online book on https://ccrma.stanford.edu/~jos/filters/filters.html.
I would like to compute simple schemes in pd in order to study digital filter design.
However, I don't want to use [cpole~] and related. I want to create the filter on a sample by sample basis using the signal flow from the difference equation.My first try was:
[sig~ 1] [sig~ 1]
| |
| [lrshift~ -1]
| |
[-~]
| %%%this is my impulse input signal%%%%%
|
[+~]\[r~ feedback]
/|
/ [*~ 0.5]
/ |
/ [s~ feedback]
[bang~]I get the following error "DSP loop detected (some tilde objects not scheduled)". I'm not an advanced user of pd, and I get kind of lost when trying to implement stuff that implies working on a sample-by-sample level. Do you guys have any recommendations?
Thanks in advance and long live pure data
-
cacosomoza
Hi there! I was just trying to compare two strings with expr, but [expr $s1==$s2] won't even create. Why? I'm familiar with using floats on expr, but not symbols
-
cacosomoza
Hi there! First of all, I'm not a software developer, but just a Pd freak. I'm trying to get a working pd app for my Samsung Galaxy SII on Android. I have surfed the internet, like for 4 hours at least, and didn't actually get any satisfying and lay-man's way of doing it.
-
Both Pd and Droidparty require Vanilla-limited pd patches. Why is so? I think most of my work on pd is extended based.
-
Is there any kick-ass tutorial, embed pd for dummies or such that I'm not aware of? I've seen this process implies using Eclipse, Android SDK for dev. I'm open minded, and I want to research on this, but I have other projects too and don't wanna get stuck in every step.
Thanks everybody!
-
-
cacosomoza
Did you ever guys tried to implement those or related on Pure Data? Is there any kind of patch out there with a whole bunch of mathematical common expressions?
I'm not entirely familiar with [expr] but I will give it a try. Is it gonna be a nightmare or should I just dump values coded with Mathematica or Matlab from a txt file?
My intention is to drive sound events with hydrogen wave functions. Any experience on that¿
-
cacosomoza
If I want to work with an array within an abstraction and make it strictly local naming the array $0-my-table or such, it won't work when actually using the abstraction and I continously receive: "error: 0-my-table: no such table"
What am I missing?
-
cacosomoza
Hi all, I searched for some info on the shortest time interval available for the tempo object. I pressume 1/ 44100 secs won't work. I'm trying to fill (sample) a table with sequenced snaphshot~ values taken from an audio signal.
Which is the shortest interval available on [tempo]?
-
cacosomoza
A simple question folks:
Is it possible to send audio from a bus within a subpatch using [throw~ name] and receive it in the parent patch using [catch~ name]? I actually tried it and didn't seem to work. What am I missing?
Thanks in advance!