B.16.long-varispeed.pd can we make it loop without pops?
Thank you for the reply. By windowing do you mean enveloping with a fade in & fade out? If so I'm trying to avoid doing that. My loops are edited so that they loop seamlessly (in a daw) without any pops or clicks and without the need of enveloping or ending/starting at the zero crossing.
I'm looking for away to sample accurately loop the file. This works fine with smaller files using Tabread4~ and Phasor~. And it works with larger files, but for the larger files you get the nasty artifacts if you just simply run your phasor into a multiplier and then into a Tabread4~. That's why i really like the B.16 Example, it gets rid of the artifacts by polling the phase. Any help in figuring out how to build a sample accurate loop component into this patch without enveloping would be much appreciated! Thanks!
Do you know of any good Envelope Patches?
So I've made this module to allow for stochastic variation of dynamic envelopes. It allows you to choose between three envelope types or determine the probability of each occuring. With the "ran"(dom) setting, the envelope lengths can be determined autonomously, or you can input a bang (third inlet) to coordinate the envelopes with other modules.
Depending on the length of the envelope, I can sometimes hear the low "resolution" of the "moderate" and particularly the "sharp" envelope, as they are only a four-point approximation of a curve. I can add more points of course, though, ideally, I should probably add a mechanism that takes the length of the envelope into consideration when determining the amount of points and the proportions of the envelope. Of course, if there are already excellent abstractions out there of which I'm unaware, I'd be happy if you could share them with me, so that I can avoid (further) re-inventing the wheel.
N.B: Open demo.pd to test the module.
P.S. It's possible that I've re-invented the wheel in multiple ways in this module, e.g. in the probability determination found in [dynamics]>[pd envelope_type]>[pd envelope_type_pool_and probability]. Any advice regarding pre-existing objects is appreciated.
EDIT: re-uploaded without [gate] and in .zip format.
envelope.zip
New to PD, need help with notes failing to turn off.
@JakeForReal Hello Jake.....
Here is your patch.......... not fixed...... but with a little test added to your polynotein subpatch.
You will see in the terminal that every "off" (after the first) is followed immediately by the "on" for the envelope.
It looks as though the combination of poly and stripnote that you have patched stops the off message from getting through to the envelope (or to the correct envelope).....
I might look closer this evening, but that might help a bit...........
poly2.pd
David.
Multiplex~ fade
Is there any way to smooth out the switching?
I'm working on a piece where I need to have the option of clicks when I have fast envelopes, but no clicks when the envelopes are slow, and be able to dynamically change between these.
Any way to set up a structure using multiplex~ or some other object that will switch between envelopes smoothly without a click?
Here's what I'm using now, and the stages are basically ramp up, stay up, ramp down.
Beatmaker Abstract
http://www.2shared.com/photo/mA24_LPF/820_am_July_26th_13_window_con.html
I conceptualized this the other day. The main reason I wanted to make this is because I'm a little tired of complicated ableton live. I wanted to just be able to right click parameters and tell them to follow midi tracks.
The big feature in this abstract is a "Midi CC Module Window" That contains an unlimited (or potentially very large)number of Midi CC Envelope Modules. In each Midi CC Envelope Module are Midi CC Envelope Clips. These clips hold a waveform that is plotted on a tempo divided graph. The waveform is played in a loop and synced to the tempo according to how long the loop is. Only one clip can be playing per module. If a parameter is right clicked, you can choose "Follow Midi CC Envelope Module 1" and the parameter will then be following the envelope that is looping in "Midi CC Envelope Module 1".
Midi note clips function in the same way. Every instrument will be able to select one Midi Notes Module. If you right clicked "Instrument Module 2" in the "Instrument Module Window" and selected "Midi input from Midi Notes Module 1", then the notes coming out of "Midi Notes Module 1" would be playing through the single virtual instrument you placed in "Instrument Module 2".
If you want the sound to come out of your speakers, then navigate to the "Bus" window. Select "Instrument Module 2" with a drop-down check off menu by right-clicking "Inputs". While still in the "Bus" window look at the "Output" window and check the box that says "Audio Output". Now the sound is coming through your speakers. Check off more Instrument Modules or Audio Track Modules to get more sound coming through the same bus.
Turn the "Aux" on to put all audio through effects.
Work in "Bounce" by selecting inputs like "Input Module 3" by right clicking and checking off Input Modules. Then press record and stop. Copy and paste your clip to an Audio Track Module, the "Sampler" or a Side Chain Audio Track Module.
Work in "Master Bounce" to produce audio clips by recording whatever is coming through the system for everyone to hear.
Chop and screw your audio in the sampler with highlight and right click processing effects. Glue your sample together and put it in an Audio Track Module or a Side Chain Audio Track Module.
Use the "Threshold Setter" to perform long linear modulation. Right click any parameter and select "Adjust to Threshold". The parameter will then adjust its minimum and maximum values over the length of time described in the "Threshold Setter".
The "Execution Engine" is used to make sure all changes happen in sync with the music.
IE>If you selected a subdivision of 2, and a length of 2, then it would take four quarter beats(starting from the next quarter beat) for the change to take place. So if you're somewhere in the a (1e+a) then you will have to wait for 2, 3, 4, 5, to pass and your change would happen on 6.
IE>If you selected a subdivision of 1 and a length of 3, you would have to wait 12 beats starting on the next quater beat.
IE>If you selected a subdivision of 8 and a length of 3, you would have to wait one and a half quarter beats starting on the next 8th note.
http://www.pdpatchrepo.info/hurleur/820_am,_July_26th_13_window_conception.png
Low pass filter for smooth fade
@Maelstorm said:
I fairly recently was trying to make one of those smoothed-out sample-and-hold LFOs and discovered that [lop~] generates asymmetric curves: logarithmic going up and exponential going down.
Well, it's actually exponential both ways, but it's always exponentially decaying toward the destination value. So going up it's an inverted exponential decay.
But if you're considering something like an amplitude envelope, you may want the rising portions to be an exponential decay (most analog envelope generators work this way, moving to the next stage at a preset threshold). A DX7 has a true exponentially increasing attack (since it's a linear function passed through an exponential lookup table), but it sounds strange and sort of unmusical, like a sound played in reverse.
As suggested in the tutorials, quartic envelopes are a nice compromise. The curves are exponential-like, but they reach the destination values in a finite amount of time.
Line, line~, vline~ and ADSR envelopes
here we go step by step through the basic construction of an ADSR envelope, looking at some functions of line, line~ and vline~ along the way.
http://www.pdpatchrepo.info/hurleur/diy-envelope-tutorial.pd
Line, line~, vline~ and ADSR envelopes
here we go step by step through the basic construction of an ADSR envelope, looking at some functions of line, line~ and vline~ along the way.
http://www.pdpatchrepo.info/hurleur/diy-envelope-tutorial.pd
MIDI activated envelopes
Sorry to repost about this, but there is something I'm not getting.
In Csound and SuperCollider (as in any VST instrument, etc.), there are standard, built-in mechanisms for MIDI-activated envelopes -- meaning playing synths from a keyboard.
In Csound, it's the 'r' family of line and envelope opcodes. In SuperCollider, it's the 'gate' parameter of the EnvGen UGen.
What these do is:
- start the envelope when you press a keyboard key,
- keep the sustain level as long as you hold the key,
- engage the release segment of the envelope when you release the key (ie Note Off MIDI message).
When I posted about this ealier, someone kindly pointed me to the [c_adsr] object in RjLib. But RjLib is part of neither Pd vanilla nor Pd extended.
Leading me to ask:
-
Is playing synths from a keyboard something that Pd people just do not do? Those who need this use Csound or SC?
-
Or do all Pd users immediately install the RjLib after installing Pd, and use RjLib all the time?
-
Or does Pd have another mechanism for MIDI-driven envelopes that I'm unaware of and that everybody uses?
Thanks very much.
I'd be very curious to know if other Pd users have asked themselves the same question.
Phasor~ as index to tabread~ with del and line~ envelope glitch
Hey
I'm using phasor for an index to a tabread~ to play a sample.
I'm also using line~ as an envelope to control audio output.
The timing for the envelope is set by the size of the sample size and samplerate~ as well as the frequency for the phasor~.
The magnitude of the phasor is adjusted to the sample size.
The sample player can be re-triggered and when this happens a line~ is set to go to 0 in 5ms,
a delay is set for 5ms,
then bangs another line~ to go to velocity in 0,
as well as setting phasor~ frequency to 1/t and phase to zero.
At which time another delay is setup at samplelength in ms.
After the sample is played the phasor~ frequency is set to 0 then
another line~ to 0 in 5ms is sent to the [*~] .
This causes a glitch when the sample is retriggered because the phasor~ is reset to zero and starts replaying the sample.
This glitch can not be heard when the sample is not re-triggered so maybe it's a control vs signal timing issue.
I did hear the glitch at the end of the sample re-triggered or not using vline~.
So my question is how do you do audio rate envelope triggering of envelopes ? I would post the patch but it is a mess. A good answer or pointer to some reference material would be greatly appreciated. I haven't quite wrapped my head around the sample and hold sampler examples yet.

