HISE Logo Forum
    • Categories
    • Register
    • Login
    1. HISE
    2. keysounds
    K
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 4
    • Groups 0

    keysounds

    @keysounds

    0
    Reputation
    2
    Profile views
    4
    Posts
    0
    Followers
    0
    Following
    Joined
    Last Online

    keysounds Unfollow Follow

    Latest posts made by keysounds

    • RE: Octave Up/Down Buttons

      @ILIAM when I move with Slider is changing values on Transposer, but over ,,+“ and ,,-" it doesn’t. And with ,,+" and ,,-" buttons Value on Slider are changing but not on Transposer.

      posted in General Questions
      K
      keysounds
    • RE: Octave Up/Down Buttons

      @ILIAM

      Thanks, I will try this.

      posted in General Questions
      K
      keysounds
    • RE: Octave Up/Down Buttons

      @ILIAM
      They should be whole step 12 Semitones(Octave).

      posted in General Questions
      K
      keysounds
    • Octave Up/Down Buttons

      Hi everyone 👋

      I’m developing a standalone live instrument in HISE for realtime performance — mainly for solo playing using a touchscreen (iPad-style) interface.

      I need a very simple and reliable live transpose function that can shift all incoming MIDI notes ±12 semitones per click (like the “Transpose” buttons on Korg or Yamaha arranger keyboards), but without cutting off held notes or affecting sampler pitch parameters directly.

      Basically:
      • Two large buttons (▲ / ▼) for +12 / −12 semitone steps
      • A central display showing the current octave offset (−2, −1, 0, +1, +2)
      • Works in Standalone HISE (not compiled project, no Project Manager)
      • Touchscreen friendly (for iPad performance)
      • Ideally realtime MIDI-based transpose (not pitch engine change)

      I’ve tried several methods:
      • Synth.setGlobalTranspose() → not available in my standalone build
      • Sampler.setTranspose() and Sampler.Transpose → property not found
      • Sampler.setAttribute(2, value) works for pitch but affects currently playing notes
      • So I switched to a pure MIDI re-routing approach via onNoteOn() and onNoteOff()

      Here’s my current working script (it does MIDI remapping correctly, but maybe there’s a cleaner HISE-native way to do this?):

      Content.makeFrontInterface(800, 400);

      // Touch-friendly UI
      const btnDown = Content.addButton("btnDown", 140, 150);
      const btnUp = Content.addButton("btnUp", 540, 150);
      const lblVal = Content.addLabel ("lblVal", 350, 150);

      btnDown.set("text", "▼");
      btnUp.set("text", "▲");
      btnDown.set("fontSize", 72);
      btnUp.set("fontSize", 72);
      lblVal.set("fontSize", 72);
      lblVal.set("alignment", "centred");
      lblVal.set("textColour", 0xFFE8C66A);

      reg octaveShift = 0;
      const tShift = Engine.createTable("TransposeShiftPerNote", 128);
      tShift.fill(0.0);

      inline function updateLabel()
      {
      lblVal.set("text", "" + (octaveShift / 12));
      }

      btnUp.setControlCallback(function(c, v)
      {
      if (v) { octaveShift = Math.min(octaveShift + 12, 24); updateLabel(); }
      });
      btnDown.setControlCallback(function(c, v)
      {
      if (v) { octaveShift = Math.max(octaveShift - 12, -24); updateLabel(); }
      });

      function onNoteOn()
      {
      local n = Message.getNoteNumber();
      tShift.set(n, octaveShift);
      Synth.playNote(n + octaveShift, Message.getVelocity());
      }

      function onNoteOff()
      {
      local n = Message.getNoteNumber();
      Synth.noteOff(n + tShift.get(n));
      }

      updateLabel();

      I wonder if there’s a built-in or cleaner way to achieve live transpose inside HISE, maybe something like a MIDI processor or node graph that can handle note remapping directly — especially in standalone mode?

      Any advice, or confirmation that this “manual table” approach is the best practice, would be super appreciated 🙏

      Something like this hiier

      9153ac9e-955e-4221-9f57-463209150bf4-image.jpeg

      Thanks in advance!
      Keysounds

      posted in General Questions
      K
      keysounds