• Volume meter and multi-mic samples

    3
    0 Votes
    3 Posts
    717 Views
    d.healeyD

    Yes it's not a major issue for me, just briefly confused me

  • Small graphical glitch with connected script

    1
    0 Votes
    1 Posts
    383 Views
    No one has replied
  • Voice count includes purged mic positions

    4
    0 Votes
    4 Posts
    764 Views
    Christoph HartC

    Alright, this is fixed.

  • Mic load/purge status not saved

    2
    0 Votes
    2 Posts
    473 Views
    Christoph HartC

    Nice catches. The sampler gets bypassed when the samples are loaded and unbypassed after the loading thread is finished, but it totally ignores if the sampler was bypassed at all. I'll fix this.

    I'll also check the purge state, it should definitely restore it.

  • Assign to delay bug

    5
    0 Votes
    5 Posts
    1k Views
    C

    Thats awesome. Makes perfect sense now that the knowledge is there. : ) as with most things.

    Thanks again

  • Filter Bug

    2
    0 Votes
    2 Posts
    599 Views
    Christoph HartC

    Yeah, the other filters aren't biquads and don't have IIR coefficients that can be plotted, but I'll add some dummy coefficients to hide this :)

    But the Frequency modulation is supposed to work. I'll investigate.

  • Wavetable Synthesizer. [HQ] Toggle = "red button"?

    4
    0 Votes
    4 Posts
    920 Views
    Christoph HartC

    This is the most simple low pass filter implementation imaginable:

    reg lastValueL = 0.0; reg lastValueR = 0.0; reg thisCutoff = 0.0; reg invCutoff = 0.0; const var Cutoff = Content.addKnob("Cutoff", 0, 0); // [JSON Cutoff] Content.setPropertiesFromJSON("Cutoff", { "min": 0.01, "max": 0.99, "middlePosition": 0.1 }); // [/JSON Cutoff] function prepareToPlay(sampleRate, blockSize) { } function processBlock(channels) { thisCutoff = Cutoff.getValue(); invCutoff = 1.0 - thisCutoff; for(sample in channels[0]) { sample = thisCutoff * sample + invCutoff * lastValueL; lastValueL = sample; } for(sample in channels[1]) { sample = thisCutoff * sample + invCutoff * lastValueR; lastValueR = sample; } } function onControl(number, value) { }

    However, iterating over every sample and process it is where a weakly typed language like Javascript comes to a performance bottleneck - this example needs about 2% while the CPU usage of native code of the same functionality should be totally neglectible. So for now it's OK to play around with it (and prototype new algorithms), but I wouldn't consider using it in an actual instrument.

    I am planning to offer a collection of basic DSP building blocks that can be assembled via scripting (just like REAKTOR or MAX). The basic API is already there, but creating all those little modules will take a while...

  • ignoreEvent not working?

    3
    0 Votes
    3 Posts
    731 Views
    d.healeyD

    Thanks for the quick fix, this really helped me with a little issue. I had a retrigger script for my sustains that was being triggered even though the MIDI muter was enabled, this fix solved it.

  • AU Validation Crash

    5
    0 Votes
    5 Posts
    1k Views
    C

    I regret to say I just left the house for the weekend, so you'll have to wait until Monday before I can confirm how many outputs are listed in the JUCE plugin host. Logic itself is fine now, though!

  • Exiting the Preset Browser

    4
    0 Votes
    4 Posts
    934 Views
    C

    In regards to this problem, I had it and found a temporary workaround: how large is your instrument GUI? Setting my own to something large enough (in my case, 720x480) revealed the option to close the preset window on the upper right.

  • Preset folder not found bug

    11
    0 Votes
    11 Posts
    2k Views
    d.healeyD

    Ah okay, that makes sense

  • Text Colour Hex

    3
    0 Votes
    3 Posts
    828 Views
    d.healeyD

    I'm copying the font colours from my design in inkscape, which are provided as hex. I've tried using a hex to decimal conversion but that hasn't produced the same result that the JSON gives. My solution is to use the hex sliders in the colour picker and then copy what the JSON provides into my script - no big deal :)

  • getIdList misses hardcoded scripts

    2
    0 Votes
    2 Posts
    529 Views
    d.healeyD

    Oh I just realised I have to use Synth.getIdList("MidiMuter"). I'll leave this here for future reference :)

  • Adjusting sample start position in one sample affects another

    5
    0 Votes
    5 Posts
    873 Views
    d.healeyD

    That makes sense, I can see how it will be a little tricky to solve

  • Changing sample's RR group

    4
    0 Votes
    4 Posts
    910 Views
    Christoph HartC

    Ah ok now I get it. It might be the case that if you say cancel it resets the group amount to 1, which would be pretty annoying. i'll take a look.

  • Getting out of the routing view

    2
    0 Votes
    2 Posts
    614 Views
    Christoph HartC

    Yes this is already fixed but I think I forgot to push this commit.

  • Velocity modulator invert button

    1
    0 Votes
    1 Posts
    500 Views
    No one has replied
  • Sample mapper CTRL+A Single Group

    4
    0 Votes
    4 Posts
    786 Views
    d.healeyD

    In the sample editor could you we have a read out in ms for the start mod? Or perhaps overlay a ms scale onto the waveform.

  • Iterator variable clashes

    3
    0 Votes
    3 Posts
    701 Views
    d.healeyD

    Yep that will work :)

  • Synth.sendController() crash

    2
    0 Votes
    2 Posts
    619 Views
    Christoph HartC

    Ah yes, I forgot a safe check... It's fixed now (Synth.addVolumeFade() was also crashing).

21

Online

1.9k

Users

10.6k

Topics

92.4k

Posts