-
solipp
posted in technical issues • read moreBut a delay line gives you the circular buffer for free. It isn't the first thing you'd think of but it is so much easier.
Pitch shifting can be done by modulating the delay time. If you're playing a 100 ms grain, run a line~ with "100, 0 100" as the delread4~ delay time and you'll get 2x speed, 2x frequencies.
hjh
a bit late to the party, but wanted to emphasize on this.
You can imagine delwrite~ as a tape loop that is constantly being written to and delread4~ as a movable tape head. So, if you have a circular buffer of 1000ms with [delwrite~ foo 1000], you can position the tape head at any point of the loop, like [delread4~ foo 400] and you hear the sound with a delay of 400ms... or you can move the head across the entire length of the loop in 1000ms like this:[0, 1000 1000(
|
line~
|
delread4~ foo...and you hear a second of silence, because the head moves at exactly the same speed as the tape and therefore outputs just a single sample for one second.
As @ddw_music mentioned, if you want to pitch up one octave, you move the tape head against the direction of tape travel, so that the relative speed of the tape is twice as fast.
And if you want to reverse playback, you move the tape head twice as fast in the direction of tape travel, so that the tape in relation to the head moves in the opposite direction:[0, 1000 500(
|
line~
|
delread4~ foo -
solipp
posted in technical issues • read moreSure. You can interact with objects. But, anything that requires a menu or a dialog box, you'd better take off your glasses, get right up to the screen, and squint. In the Windows screenshot above, menus look normal size and everything else looks big. That isn't at all what you see on a high(er) DPI monitor (2880 x 1800 here). If I zoom in on a patch, I see normal-size objects and teeny tiny menus.
And changing the font size doesn’t help?
Here is font size 10 compared to font size 24 on a my screen, also on XFCE:

-
solipp
posted in technical issues • read more@ddw_music you can compile pd with this PR: https://github.com/pure-data/pure-data/pull/1659
-
solipp
posted in news • read more@jamcultur this would be easy to fix, but pd currently has no method to get the zoom factor of a patch window. I filed a pull request to add this to [pdcontrol]; https://github.com/pure-data/pure-data/pull/2846 let's see if it makes it into the next release.
Here is a larger version of pp.xypad that you can use: xypad-large.zip
-
solipp
posted in news • read moreVersion 0.80 is now available.
-
3 new objects: [pp.distort~] and [pp.dystort~] for distortion and saturation effects, and [pp.xypad], which is a 2D controller that allows you to record and play back moves.
-
[pp.fft-partconv~.s] runs cpu-heavy partition convolution in a subprocess using [pd~]
-
A new example shows how to use [pp.grainer~] as a polyphonic granular synth.
-
New control rate outlets for [pp.lfnoise~], [pp.shiftlfo~] and [pp.adsr~].
-
[pp.vcfilter~] now has an option for an audio rate notch filter.
-
[pp.sfplayer~]: new option to write recorded audio to file
-
many bugfixes etc.
Happy patching!
-
-
solipp
posted in technical issues • read moreI'm trying to extract level crossings between 2 signals, [...] and use that to switch signals.
the patch i posted above does this. However, it doesn't generate a trigger (one sample impulses?) from each crossing...
I do think it's very similar to what [max~ ] is doing, unless I'm misunderstanding?
mh i don't know. It depends on what you do with [max~], which is not clear to me.
For my purposes, I'll need a stream of triggers to gate a trigger (vs gate) stream that I'm going to gate with another process so that trigger signals only pass when the other process opens to gate the level crossing triggers. The problem is, then I need a flipflop/toggle...
This works, for reference:
...looks like you found a solution(?) I'm wondering if you even need to generate/process a stream of audio rate triggers to achieve your goals. I know supercollider uses audio rate triggers, but in pd it is a bit tricky to work with this concept.
-
solipp
posted in technical issues • read more
like this, maybe?
Edit: multiplication with smaller values should also be sufficient: [*~ 1e+12]
-
solipp
posted in technical issues • read morei missed this somehow. It is fixed now in the github repo and will be included in the next deken upload.
-
solipp
posted in news • read more@jyg said:
just out of curiosity : why did you move to "deprecated" some objects (for example : pp.rev~) ?
because I am not planning to develop them any further (i don't use them anymore) and there are better alternatives, such as pp.phiverb~. I'm keeping them for anyone who wants to use them, Just copy from the deprecated folder.
There is a lot of stuff I'd like to change in this library, particularly the names of some of the objects. "pp.phiverb~" "pp.butterkreuz3~" etc., just horrible! plain stupid. I don't know who came up with this. So whenever i make a fundamental change in the future, i will keep a copy of the old stuff in the deprecated folder. However, the worst is the name of the library itself; "Audiolab" ... I hate it!
Too late to change that now i suppose
-