• MIDI FX Chord Plugin -- Using Message.sendToMidiOut() For Generated Notes

    2
    0 Votes
    2 Posts
    189 Views
    VirtualVirginV

    @dusseldorf
    sendToMidiOut() will not capture generated notes at that level.
    You have to place sendToMidiOut() in a script in a container level beyond the one your MIDI notes are being generated in.

    Screenshot 2025-08-07 at 11.39.19 AM.png

    And don't forget to put it on the other MIDI callbacks as well!

  • Knob that controls step modulator in increments of 1, 2 ,4 ,8 ,16, 32?

    3
    0 Votes
    3 Posts
    208 Views
    ustkU

    @mjc123 as Dave said, or if the mathematical relation is always 2^n−1, then

    local step = Math.pow(2, value-1);
  • Can't drag knobs in presentation mode?

    3
    0 Votes
    3 Posts
    198 Views
    M

    @d-healey thank you!

  • MIDIPlayer || .clearAllSequences on .MID file drop?

    1
    0 Votes
    1 Posts
    105 Views
    No one has replied
  • MIDIPlayer || Need Note Events .

    Solved
    7
    0 Votes
    7 Posts
    518 Views
    ChazroxC

    @dannytaurus

    @dannytaurus said in MIDIPlayer || Need Note Events .:

    It's like you have to know the answer, to look up the answer

    I seriously feel like that sometimes. hahahahahah

  • Sample stops playing when key is released

    4
    0 Votes
    4 Posts
    182 Views
    rglidesR

    @rglides and false if you want Normal mode

  • Completely flummoxed over panel value...

    4
    0 Votes
    4 Posts
    246 Views
    ustkU

    @VirtualVirgin hard to tell without knowing what scribeData is

  • Extract information from .midi files? || Midi file dropper tile?

    Unsolved
    8
    0 Votes
    8 Posts
    604 Views
    ChazroxC

    I think im going about this backwards in a way....

    How do I get midi note information from .mid files that are dropped into a midi player? The midi player is obviously able to parse the note event information. How would I extract the information from files loading into the midi player? In this method I could just use a built in midiDrop overlay panel and script the extracting process but the data source would now be the MIDIPlayers built in data structure.

  • Hide table perimeter lines?

    5
    0 Votes
    5 Posts
    298 Views
    ustkU

    @mjc123 or just do this:

    laf.registerFunction("drawTablePath", function(g, obj) { var thickness = 5.0; var area = Rectangle(obj.area).expanded(thickness/2.0); // make the drawing area slightly larger g.setColour(obj.bgColour); g.drawPath(obj.path, area, thickness); });
  • Any ideas on why .charAt() would suddenly stop working?

    7
    0 Votes
    7 Posts
    355 Views
    VirtualVirginV

    @d-healey Actually, I think I just found the error:

    local MPN = direction == "up" ? noteObject.y[0] : noteobject.y[noteObject.y.length -1];

    vs.

    local MPN = direction == "up" ? noteObject.y[0] : noteObject.y[noteObject.y.length -1];

    I forgot the camelCase on noteObject for the false branch :P

  • Buttons

    7
    0 Votes
    7 Posts
    437 Views
    rglidesR

    @SBKZ setControlCallback

  • This topic is deleted!

    Unsolved
    9
    0 Votes
    9 Posts
    11 Views
  • Console.print "drawThumbnailRange" start and end

    Solved
    2
    0 Votes
    2 Posts
    132 Views
    rglidesR

    Solved. Thanks to an old post from @Lindon , thanks!

    inline function onbtn_GET_SAMPLE_LENGTHControl(component, value) { if (value) { local selection = SP_1.createSelection(".*"); local sampleStart = selection[0].get(SP_1.SampleStart); local sampleEnd = selection[0].get(SP_1.SampleEnd); Console.print("Sample Start: " + sampleStart + ", Sample End: " + sampleEnd); } }; Content.getComponent("btn_GET_SAMPLE_LENGTH").setControlCallback(onbtn_GET_SAMPLE_LENGTHControl);
  • Global Variables || Global Icon Paths in namespaces?

    8
    0 Votes
    8 Posts
    451 Views
    David HealeyD

    @Christoph-Hart said in Global Variables || Global Icon Paths in namespaces?:

    Can you make an example of what customization makes internal scripts "more approachable"?

    Here's a script for handling guitar picking

    fbb92c17-f5df-4c3f-b1df-74a5a150e782-image.png

    Here's the front end view that the users see

    4f8476f7-31b3-4bdf-84fe-5d60719ee565-image.png

    Making the back-end look a bit more like the front end would make it easier for developers to understand how the two things relate, without having to look into the script so much.

  • Drop Shadows || Can we do drop shadows for text?

    4
    0 Votes
    4 Posts
    212 Views
    ChazroxC

    I love it when we work together.

  • 0 Votes
    24 Posts
    3k Views
    David HealeyD

    @Lurch said in XY Panel controlling Knobs, Panel does not create DAW automation but Knobs do?:

    but I get a load of errors

    Start by making a minimal snippet. 1 panel and 1 knob.

    Then try and implement Christoph's solution.

    You can leave this part out if you want, it's just a check to see if you've compiled HISE with the HISE_SEND_PANEL_CHANGED_TO_PLUGIN_PARAMETER preprocessor definition, and this needs to go at the very top of your script, before any comments.

    #on #if !HISE_SEND_PANEL_CHANGED_TO_PLUGIN_PARAMETER // If this causes an error, you need to add HISE_SEND_PANEL_CHANGED_TO_PLUGIN_PARAMETER=1 // to your ExtraDefinitions of the project and rebuild the component tree (either reload the patch) // or click on the refresh icon in the interface designer) Console.assertTrue(false); #endif // FOR AUTOMATION FROM PANEL
  • How to specify text color

    3
    0 Votes
    3 Posts
    195 Views
    Christoph HartC

    "#FFB7AA5B" is a hex representation of a colour with the #AARRGGBB format. You're almost there, you just need to turn that into an actual number with the hex format:

    const var RED = 0xFFFF0000; const var GREEN = 0xFF00FF00; // same as #FF00FF00 const var TRANSPARENT = 0; // shortcut for 0x00000000
  • Do something only when automating?

    7
    0 Votes
    7 Posts
    525 Views
    Christoph HartC

    @tomekslesicki yes there are plenty of other solutions

    just not calling changed() in the slider would prevent the infinite loop writing a custom panel instead of the buttons that store its value and is assigned to a plugin parameter would also work. you could even get away with just styling the slider with a laf and make it look like a few buttons but that‘s advanced hackery and might not work with you design.
  • Timestretching sounds robtic/metalic

    5
    0 Votes
    5 Posts
    377 Views
    W

    @griffinboy Thanks for the information. I'll continue finishing my plugin without it for now then, and look into zynaptiq in case. Otherwise, might just have an informational snippet on saying use FL or the DAW built in stretching.

  • Moddifying the table UI element

    9
    0 Votes
    9 Posts
    744 Views
    DanHD

    @Christoph-Hart ah nice, didn't know about this :)

    It would be also be an excellent ux upgrade to include drag handles for the curves rather than mousewheel / right-click dragging.

23

Online

2.1k

Users

13.1k

Topics

113.6k

Posts