• katz

    @phil123456

    How about this test with the [vcf~] ? It sounds close to me but maybe you are hearing something else.

    vcf.zip

    **edit ** updated with [vcf~] <--> [moog~] low freq cutoff comparison. Try vcf~ with only the right outlet as well.

    posted in technical issues read more
  • katz

    Here is another kind of array object (no structs this time) with free point plotting and curve transitions. There are two layers in the GOP box: the layer with the canvas points and one below with an array-table and a resized slider in front to block mouse interaction.

    array2.zip

    posted in patch~ read more
  • katz

    @weightless

    Ok here is a final one that simulates the cz waveforms in series by writing half of the array in the first chosen waveform and the other half by the second. If both waveforms are the same, the second phase slider won't do anything.
    txcz-wavs3.pd

    As far as the array size I am not sure, but I believe at the really low resolutions the actual shape of the waveform is simply altered.

    posted in technical issues read more
  • katz

    @weightless

    I tried your idea with the alternating tables only, but even the "set" messages will cause some clicks, so here is one with tabread4~ & volume alternating that works. The extra cost is one tabread4~ & two sets of line~s and [*~]s but with effective [switch~]ing you could take away the extra tabread4~.

    I also experimented with different array sizes (see the switcher at the top-right), and certain waveforms are affected quite a bit while others remain the same, so if someone wants to go this route, the whole setup could be fine-tuned per waveform. In this patch the [*~] before the tabread4~s is changed by a 20ms line~, but if you wanted to change the waveform per voice in a polyphonic setup, before the volume envelope kicked in, and each waveform had a specific table size, this would have to be done immediately with a way to avoid the click.
    txcz-wavs2.pd

    posted in technical issues read more
  • katz

    @weightless

    I thought it might be nice to group all the waveforms to be read from a single tabread4~ for each operator, and here is the result. The trade-off is that the casio waveforms cannot be modulated at the 2nd input since they are now calculated statically (you can change them live but since the tables are being redrawn, its unusable that way). The feedback is in here too and a comparison w/ the original cos~ style.
    txcz-wavs.pd

    posted in technical issues read more
  • katz

    @weightless

    I cheated to get some pre-made waveforms with this one (waveforms 2,4,6,8 may not be accurate), and I am wondering if there is an advantage to using the audio math instead, because this one is certaintly lighter. I added a tri-wave at 9 too.

    tx-wavs.pd

    posted in technical issues read more
  • katz

    @weightless

    Ah that was right there in your first example. Nevertheless, amazing - thanks.

    posted in technical issues read more
  • katz

    @weightless

    I don't have any answers for you to get those arcsin-looking waveforms... but I have also been curious about how to use tables instead of the phasor-cos~ pairing... since the latter generally has nicer sounding modulation
    cos_vs_sintable.pd

    posted in technical issues read more
  • katz

    Two more versions. The first one only adds the lateral restriction to graph-adsr-v2 while keeping the minimalism. The second is a kind of hybrid between the last two postings.

    adsr-g2.zip

    posted in patch~ read more
  • katz

    @Balwyn

    I separated the background canvas from the nested gop, as you did in your adsr, and made sure the gop was created later in the object order, relative to the canvas. It seems stable now.

    adsr_g.zip

    posted in patch~ read more
  • katz

    I gave the struct challenge a go myself. It seems to have been a success, except for these really annoying graphic drop-outs. I added as many tricks as I could think of to get the structs to reappear in various scenarios.. like edit dragging, menuclose, and first mouse click after opening window. It would be nice to at least have a reliable way to show it as the patch loads.

    adsr-g.zip

    posted in patch~ read more
  • katz

    Another version with creation arguments for width and height :
    adsr-g.zip

    posted in patch~ read more
  • katz

    Hi W-A,

    The 5 values it spits out are ramp1 time (attack), ramp1 level, ramp2 time (decay), ramp2 level (sustain), and ramp3 time (release)... all of which are in 0-1 range, so you'll see an example where they are scaled in "audio-test".

    posted in patch~ read more
  • katz

    Here is an interactive version using dynamic canvas creation instead of a pd-array. Has options for line resolution and color.

    adsr-g.zip

    posted in patch~ read more
  • katz

    Hi,
    This is a very simple adsr-parameter to array conversion patch for monitoring purposes. It can handle two stage decay addsr too. All parameters are within a 0-1 range. It would be amazing to be able to output new lists from array editing, but this would mean some kind of index change detection. However, I like it as is and hope someone finds it useful.

    adsr_g.zip

    posted in patch~ read more
  • katz

    This will work well enough:
    easing-test.zip

    posted in technical issues read more
  • katz

    Hi,
    This is a [line] object with added sine-easing. Messages behave
    identical to original [line].
    line-e.zip
    I think the behavior should change during a new message interruption where the easing at the start is removed but kept at the end. Does anyone know how to generate a table with a linear start and sine at the end? An option for sharper sine curve would be useful too.

    posted in technical issues read more
  • katz

    @whale-av
    Thanks for the info - I'll continue to look into it. The upsample isn't even necessary for lowpass because vcf~ behaves similarly to vcf_lp2~ (some differences with the way the q and amplitude behave) & if you want vcf_lp4~, just stack two vcf~s etc etc. For right now it's useful for the bandpass and highpass and the other "filter~" filters.

    posted in technical issues read more
  • katz

    This patch fixes the issue to an extent. There were two different unwanted sounds that I was hearing: 1) a high frequency tambourine-like sound. This went away if I put the filter in a subwindow and upsampled 2x. 2) a pop sound when a large change in filter frequency was made quickly. I created a dual-filter crossfade for this. Each has a switch~ to cut down on CPU, but the vcf_filter~ type which originally used less CPU than the vcf~ now uses more.

    Sounds like maybe this isn't an issue for some people, but here it is anyway:

    vcf-crossfade.zip

    (mp3 with the high frequency sound is included here so it doesn't have to be played in the browser)

    posted in technical issues read more
Internal error.

Oops! Looks like something went wrong!