Just a quick question... If I select this option, will it allow Pd to run like Csound? I mean like, if I compose something but the synthesis method I want to use is too expensive to just play it, will a writesf~ create a flawless audio file if "defeat real-time scheduling" is checked? -Chuckk
-- "It is not when truth is dirty, but when it is shallow, that the lover of knowledge is reluctant to step into its waters." -Friedrich Nietzsche, "Thus Spoke Zarathustra"
On Tue, 4 Apr 2006, Chuckk Hubbard wrote:
Just a quick question... If I select this option, will it allow Pd to run like Csound? I mean like, if I compose something but the synthesis method I want to use is too expensive to just play it, will a writesf~ create a flawless audio file if "defeat real-time scheduling" is checked? -Chuckk
That's an unrelated option. There are two kinds (levels) of scheduling.
There's the scheduling of the pd process by the OS kernel, and there's the
scheduling of pd objects by the pd process. IIRC "defeat real-time
scheduling" is at the OS level.
If you have a patch that takes "250% of the CPU" or something like that, and it doesn't use the microphone/linein, and only writes to a file, then Pd should be able to do that flawlessly, if no objects use physical time, that is, they all use logical time instead. Logical time slows down when you use "more than 100% of the CPU" to account for the fact that only 100% of the CPU is usable (!) and it catches up on physical time when you allow it to.
What Pd currently can't do is the other way around, that is, force itself to use all of the CPU and accelerate logical time accordingly.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju | Freelance Digital Arts Engineer, Montréal QC Canada
Awesome, that makes sense. So I'm guessing if I overtax the CPU and I hear those cracks, it is the sudden negation of the signal that I'm hearing, the return to zero of the speakers, which won't be passed on to an output file. Thanks. Chuckk
On 4/4/06, Mathieu Bouchard matju@artengine.ca wrote:
On Tue, 4 Apr 2006, Chuckk Hubbard wrote:
Just a quick question... If I select this option, will it allow Pd to run like Csound? I mean like, if I compose something but the synthesis method I want to use is too expensive to just play it, will a writesf~ create a flawless audio file if "defeat real-time scheduling" is checked? -Chuckk
That's an unrelated option. There are two kinds (levels) of scheduling. There's the scheduling of the pd process by the OS kernel, and there's the scheduling of pd objects by the pd process. IIRC "defeat real-time scheduling" is at the OS level.
If you have a patch that takes "250% of the CPU" or something like that, and it doesn't use the microphone/linein, and only writes to a file, then Pd should be able to do that flawlessly, if no objects use physical time, that is, they all use logical time instead. Logical time slows down when you use "more than 100% of the CPU" to account for the fact that only 100% of the CPU is usable (!) and it catches up on physical time when you allow it to.
What Pd currently can't do is the other way around, that is, force itself to use all of the CPU and accelerate logical time accordingly.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju | Freelance Digital Arts Engineer, Montréal QC Canada
-- "It is not when truth is dirty, but when it is shallow, that the lover of knowledge is reluctant to step into its waters." -Friedrich Nietzsche, "Thus Spoke Zarathustra"
If you have a patch that takes "250% of the CPU" or something like that, and it doesn't use the microphone/linein, and only writes to a file, then Pd should be able to do that flawlessly, if no objects use physical time, that is, they all use logical time instead. Logical time slows down when you use "more than 100% of the CPU" to account for the fact that only 100% of the CPU is usable (!) and it catches up on physical time when you allow it to.
Interesting. This explains to some weird behaviour I noticed with patches that I use mainly to trigger MIDI synthesizers. If I have set the audio buffer too low, then it my clocks run way too slow. I always thought that pd goes crazy when it can't deliver the requested latency but your explanation makes very much sense to me.
Best Urs
I just tested this, it didn't work. My sequencer was dropping out at certain passages with lots of chords, so I just set it to record to aiff and went about my business. The AIFF file is full of skips; not dropouts, but whole sections that aren't there at all. I'm not using any real-time controls, I just hit record and Pd does it. I wonder if there is some way to make Pd compile straight to disk?
-Chuckk
On 4/4/06, Mathieu Bouchard matju@artengine.ca wrote:
If you have a patch that takes "250% of the CPU" or something like that, and it doesn't use the microphone/linein, and only writes to a file, then Pd should be able to do that flawlessly, if no objects use physical time, that is, they all use logical time instead. Logical time slows down when you use "more than 100% of the CPU" to account for the fact that only 100% of the CPU is usable (!) and it catches up on physical time when you allow it to.
I just tested this, it didn't work. My sequencer was dropping out at certain passages with lots of chords, so I just set it to record to aiff and went about my business. The AIFF file is full of skips; not dropouts, but whole sections that aren't there at all. I'm not using any real-time controls, I just hit record and Pd does it. I wonder if there is some way to make Pd compile straight to disk?
pd's logical time is bound to the audio driver, so the way to go is to use an audio backend, that can do other than realtime processing ...
e.g. jack implements a freewheel mode, this way you can record your pd patch to ardour without taking any realtime needs into account ....
tim
-- TimBlechmann@gmx.de ICQ: 96771783 http://www.mokabar.tk
Life is really simple, but we insist on making it complicated. Confucius