• Building Hise github

    General Questions
    14
    0 Votes
    14 Posts
    74 Views
    Y

    @David-Healey It was already default to 500 mb in 4.1

  • 0 Votes
    9 Posts
    33 Views
    MorphoiceM

    @dannytaurus yeah, the Valhalla UI was the real inspiration behind it, along with that flat design phase Apple is now dialing back on. I kind of love it, and it's really easy to do thanks to David's LAF tutorials.
    Most of the art is my own — drawings, photography, or renders. There's some circuit-cyberpunk background on Circuit Mix, and the three guys on Wingmen are early AI imagery, because I was too lazy to draw something for hours and I can't draw men - but that's about it. There's even a media section where you can download my drawings and photography. People see what they want to see, though.
    And I don't get the problem. 100 years ago they were railing against the moving production line. Now it's AI. The complaint never changes — only the target. Those who can't do will always resent those who do, and no new tool will ever fix that, because the tool was never really the issue.

    Point taken, though! I should simply charge. A lot ;)

  • Control ScriptNode from UI knob AND envelope?

    ScriptNode
    6
    0 Votes
    6 Posts
    67 Views
    Christoph HartC

    It depends whether you want it to be a static connection or a dynamic modulation routing.

    If static, then a control.pma node would be the best candidate - connect the UI knob to the value and the envelope output (either from an extra_mod or an inbuilt scriptnode AHDSR) to the add output, this will combine the two with unipolar modulation mode.

    Scales and offsets a normalised modulation signal using a multiply-add formula with clamped output.
    The PMA node (Parameter Multiply Add) scales and offsets a normalised modulation signal. It takes a 0-1 input value, multiplies it by a configurable factor, adds a constant offset, and clamps the result to the 0-1 range. This is one of the most commonly used control nodes for adjusting modulation depth, inverting signals, or combining parameters.

    Each parameter change triggers an independent output update. If Value, Multiply, and Add all change in sequence, three separate output values are sent to connected targets.

  • sync faust delay times to host

    General Questions
    4
    0 Votes
    4 Posts
    46 Views
    Christoph HartC

    I'm not sure whether MIDI tempo information messages makes it through to the Faust node, but the tempo sync node is definitely the way to go. just build your Faust node with a absolute delay time parameter and then connect it to the tempo sync node - it automatically sends the correct time value matching the tempo and reacts to tempo changes etc.

    upcoming docs:

    Tempo Sync (control.tempo_sync)

    Converts a musical tempo value to a duration in milliseconds and sends it as a modulation signal.
    Tempo Sync converts a musical time value (such as 1/4 note or 1/8 triplet) to a duration in milliseconds based on the current DAW tempo. The output updates whenever the host tempo changes or any parameter is adjusted, making it suitable for driving time-based effects that need to lock to the beat.

    The output is an unnormalised modulation signal carrying the raw millisecond value. If the target parameter expects a different unit (such as frequency in Hz), place a control.converter between this node and the target. When Enabled is set to Off, the node outputs the manual UnsyncedTime value instead, allowing a smooth fallback for standalone operation or manual control.

    CPU: negligible, polyphonic.

    Signal Path

    Pseudo-code - hover highlighted terms for details // control.tempo_sync - musical time to milliseconds // BPM + parameters -> ms out (unnormalised) onParameterChange() { if Enabled: output = tempoToMs(bpm, Tempo) * Multiplier else: output = UnsyncedTime } onTempoChange(newBpm) { bpm = newBpm if Enabled: output = tempoToMs(bpm, Tempo) * Multiplier }
  • 3 Votes
    2 Posts
    26 Views
    griffinboyG

    @elanhickler Interesting work, thank you

  • Verb Factory

    C++ Development
    8
    4 Votes
    8 Posts
    102 Views
    griffinboyG

    @Orvillain Nice work

  • Modulating ShapeFX Gain

    General Questions
    8
    0 Votes
    8 Posts
    85 Views
    dannytaurusD

    @HISEnberg @Christoph-Hart I hit a problem with controlling a ScriptNode macro with a UI knob AND an envelope.

    New post here: https://forum.hise.audio/topic/14793/control-scriptnode-from-ui-knob-and-envelope

  • Thoughts on Moonbase?

    General Questions
    18
    0 Votes
    18 Posts
    430 Views
    J

    @David-Healey cool cool
    I did make just a licensing system with traditional serial keys...so Ill probably just use that for now, and then update.
    and I finally actually fininshed making this instrument😁

    now just working on some vids and demos and final testing. but ill include some screenshots here.
    Its just a sample based synth, where i sampled the f-k out of a LYRA 8 synthesizer..
    recorded through some amps and speaker cab impulse responses etc.
    Screenshot 2026-05-29 at 2.41.06 PM.png Screenshot 2026-05-29 at 2.41.18 PM.png

  • Get Panel Attributes - Colours

    Solved Scripting
    11
    0 Votes
    11 Posts
    145 Views
    ustkU

    @David-Healey There might be a bad parsing at some point. Without really knowing, the hex might be first parsed as string by the property editor...

  • 32bit macOS flag

    General Questions
    3
    0 Votes
    3 Posts
    89 Views
    David HealeyD

    @Lurch Not sure if it affects compiling networks

  • Stupid Quotation marks behavior....

    Solved Scripting
    14
    0 Votes
    14 Posts
    106 Views
    ChazroxC

    @Christoph-Hart I can breathe again....and move much faster now lol

  • How can I improve my reaction time?

    General Questions
    2
    -2 Votes
    2 Posts
    60 Views
    Christoph HartC

    @nohasm191 haha yes we all do human things as humans. Because we are human and not a robot.

  • HISE plugin as virtual midi port?

    Unsolved General Questions
    13
    0 Votes
    13 Posts
    230 Views
    ChazroxC

    @David-Healey I guess you're right. I haven't tested any automation through that method yet. Only midi messages.

  • js file not found

    General Questions
    3
    0 Votes
    3 Posts
    86 Views
    Y

    @David-Healey

    Thank you so much

  • 4 Votes
    2 Posts
    101 Views
    tobbentmT

    @dannytaurus Thanks for sharing this! If anyone has questions about the data going into this, or suggestions for the next survey, please let us know! :)

  • Meta Ads

    General Questions
    25
    0 Votes
    25 Posts
    1k Views
    David HealeyD

    @dannytaurus said in Meta Ads:

    Or get someone much younger and more in-touch with social media to make them for me!

    Don't know if you know about this, but here is a creator/influencer marketplace built into ad manager where you can hire people to make ads for you. If you hire someone, get them to make 10 3 second intros for each ad. Then you can mix and match the intros with the ads so you get more chances to catch a viewer's attention (Ben Heath's idea).

    8dd61f3b-86ad-4008-847a-eae77c41d288-image.png

  • Change Look And Feel Dynamically

    General Questions
    13
    0 Votes
    13 Posts
    1k Views
    OrvillainO

    @Lindon said in Change Look And Feel Dynamically:

    @Orvillain said in Change Look And Feel Dynamically:

    @Lindon Nice! And you're doing all that with branching logic in the LAF's ??

    I did make a start, and I got a mix control to turn into a slider versus a knob, depending on what effect I have loaded. Seems pretty flexible for sure!

    actually Im doing all this with json, so when the user selects an FX I go find the JSON object for its background and its sliders, and use those in the LAF... so hardly any branching going on.... it'd be a fairly massive switch statement....

    Gotcha! Yes that makes total sense.

  • 0 Votes
    13 Posts
    266 Views
    David HealeyD

    @Yannrog said in Hello, easy one, How do we set a value to a knob by scripting so it never changes.:

    If I update, will I get the exact features on my project?

    Maybe, depends if your current version has a bug

  • Recent commit to Processor.cpp breaking old project

    Bug Reports
    23
    0 Votes
    23 Posts
    1k Views
    David HealeyD

    @Christoph-Hart How about this to fix the original issue? https://github.com/christophhart/HISE/pull/959

  • 0 Votes
    17 Posts
    314 Views
    David HealeyD

    My network contains a lot more than just some gains so recreating it all via scripting is a pain and means I don't get to work with the nice GUI. Is there a simple build network from JSON type thing? Edit: dsp.createFromJSON might be it..

    Another option I thought of is I can park all the chains in the multi as unused nodes, then in the script use this to add them for just the number of channels:

    const dsp = Engine.createDspNetwork("SimpleGain"); const numChannels = dsp.getNumChannels(); const multi = dsp.get("multi"); const numPairs = numChannels / 2; for (i = 0; i < numPairs; i++) dsp.get("chain" + i).setParent(multi, i);

    This works for my multi channel simple gain because each channel has its own chain, but I don't think it would be a good general solution for all networks.