• Broadcaster error

    14
    0 Votes
    14 Posts
    938 Views
    Christoph HartC

    Alright, the docs are online, but let me know if something is unclear.

  • Sample loop play in Sampler

    4
    0 Votes
    4 Posts
    303 Views
    David HealeyD

    @plugintutor
    You don't need to add any code for looping to work.

  • MidiChannel is always 1 in NoteOn when logging midi players output

    6
    0 Votes
    6 Posts
    503 Views
    ulrikU

    @Christoph-Hart
    Related to this issue of not being able to grab notes by their midi channel in the NoteOn Cb, I tried a different approach using no arp or midi players at all. Instead I've built 4 arpeggiators manually and now to my question:

    I use the TransportHandler and made the "NoteOn callback inside the GridChange function set to 18, 1/96 (1/64T)

    const TH = Engine.createTransportHandler(); TH.setEnableGrid(true, 18); TH.setSyncMode(TH.PreferExternal); if (MPsActivate[0].getValue()) { local nv = NVLookUpNum[MPsSpeed[0].getValue()-1]; if (gridcount % (nv*96) == 0) { slider1 == NumSliders.getValue()-1 ? slider1 = 0 : slider1++; //for (sp in S) local nn = MPSPs[0][0].getSliderValueAt(slider1); local v = MPSPs[0][1].getSliderValueAt(slider1); local l = MPSPs[0][2].getSliderValueAt(slider1); local len = Engine.getSamplesForQuarterBeats(nv*l*4); for (n in PKs) { local ev = Synth.addNoteOn(1, Math.range(nn + n, 0, 126), v, 0); Synth.noteOffDelayedByEventId(ev, len); } } }

    I have not tested this carefully yet.

    Is there a drawback using this approach?
    It feels like it will not be as accurate as using the built in NoteOn cb

  • Display preset name and folder in label

    Unsolved
    10
    0 Votes
    10 Posts
    1k Views
    David HealeyD

    If you fancy playing with C++ this is the function and I don't think it would be difficult at all to modify.

    String ScriptingApi::Engine::getCurrentUserPresetName() { return getProcessor()->getMainController()->getUserPresetHandler().getCurrentlyLoadedFile().getFileNameWithoutExtension(); }

    What I think might be better is to add a function to the user preset handler that returns the current preset as a file object.

  • Get data from Woocommerce via server api

    109
    0 Votes
    109 Posts
    30k Views
    David HealeyD

    @Dan-Korneff That's what I did too. Once you've made a basic plugin and got a feel for it get back to me and I'll help you get up and running

  • Broadcaster + SliderPack

    6
    0 Votes
    6 Posts
    404 Views
    ulrikU

    @Christoph-Hart Ok, I understand, thank you!

  • Changing film strips dynamically

    2
    2 Votes
    2 Posts
    498 Views
    lalalandsynthL

    @d-healey not possible as far as i can tell.

  • set midifile name on midi drag?

    1
    1 Votes
    1 Posts
    137 Views
    No one has replied
  • Execution time out on array.clear

    1
    0 Votes
    1 Posts
    172 Views
    No one has replied
  • Broadcaster

    12
    0 Votes
    12 Posts
    1k Views
    David HealeyD

    If I attach a listener to a child panel, and later that child panel is removed, does HISE automatically remove the listener too or is it left hanging around somewhere?

    If I have to do the cleanup manually could we get a removeAllListeners function?

  • Paint: Hise Edition

    7
    4 Votes
    7 Posts
    1k Views
    David HealeyD

    @KimiA

    alt text

  • script cc and pitch bend

    7
    0 Votes
    7 Posts
    412 Views
    ulrikU

    @ulrik never mind, I set the pitch bend value with the same function

    setControllerValue()
  • Need some help with MidiFX plugin

    1
    0 Votes
    1 Posts
    126 Views
    No one has replied
  • EQ curve from object.

    23
    0 Votes
    23 Posts
    2k Views
    Christoph HartC

    @iamlamprey said in EQ curve from object.:

    Could this be a use-case for Faust when it's ready?

    No, not really, Faust is not really suited for spectral processing, it shines in circuit simulation and physical modeling.

    Actually I also think that using 30+ bands of peak EQs is not the 100% right way to simulate AET as this amount of filters will smear the phase and is not super efficient (especially if it's per voice). The proper solution would be writing a FFT filter that applies interpolated gain reduction for each FFT bin based on the analysis of the loudest and softest sample:

    Create a samplemap with two layers (ff and pp) For each note / sample, do an FFT, and compare the gain factor for each bin (should be <1.0 so it only works subtractive) Write that gain factor array into a data file. You can just use audio files to store that, then you can load the data as SFZ into the realtime processor. Ditch the pp layer. Write a FFT processor that applies the gain factor on each bin (the FFT size of the analysis and of the realtime processor must be the same, so you need to find a compromise between latency and frequency resolution).

    Everything from 1-4 can be done inside HISE, but for 5. you need to write (or commission) a custom C++ module, but I would say that's rather beginner level spectral processing. Then you need to tweak the parameters to match your use case (FFT window, FFT size, smoothing between bins, etc).

  • Looking for someone to script

    1
    0 Votes
    1 Posts
    138 Views
    No one has replied
  • XY Pad Modulation

    12
    0 Votes
    12 Posts
    1k Views
    David HealeyD

    I made a couple of videos all about XY pads. Currently they're only available to Patrons.

    https://www.patreon.com/posts/how-to-create-xy-68847672

  • Possible to get Browser Window info?

    5
    0 Votes
    5 Posts
    210 Views
    ulrikU

    @d-healey Yes of course, I've already done this plenty of times, I need one of your t-shirts!!!!

  • How to set markdown renderer alignment?

    7
    0 Votes
    7 Posts
    370 Views
    David HealeyD

    @Dan-Korneff I don't think any of this is possible with HISE

  • Get Sample Rate in Hz from Effect

    2
    0 Votes
    2 Posts
    564 Views
    oskarshO

    It seems like this is a bug for these components.

    The Sample Rate is taking a numeric value between 0.5 and 0.65 for it to function properly. 0.5 is the minimum = 44100Hz. You cannot use the frequency mode on the sliders for this. Same for the PostFilter while this one takes values between 0 and 1.0, using a Frequency Slider results in a Crash of Hise.

  • Reverb Freeze Mode

    4
    0 Votes
    4 Posts
    841 Views
    oskarshO

    @Lindon @iamlamprey Thanks for the answer, I managed to get it to work. I simply added a Button and set the processorId to Simple Reverb and the parameterId to FreezeMode.

13

Online

2.4k

Users

13.8k

Topics

119.7k

Posts