HISE Logo Forum
    • Categories
    • Register
    • Login
    1. HISE
    2. TNTHM
    3. Posts
    T
    • Profile
    • Following 1
    • Followers 0
    • Topics 91
    • Posts 259
    • Groups 0

    Posts

    Recent Best Controversial
    • RE: Audio / DSP - how to start

      @Ben-Catman Here's a HISE Snippet for a simple reverb. This is not script node, this is the default reverb module that comes with HISE. You can load this by copying the snippet, opening HISE, and going to File > Import HISE Snippet. HISE is the best, hope you enjoy the journey.

      HiseSnippet 1469.3oc0X07aaTDEe1jLgZml.UD3FnUQBoToRkcRof.jhahSPVjjtp1MkaUS1cb7nr6LV6NaRbqpTO1+BPp23OhdgaUbqRHwU3FW4VO.m3P4M6re5X2r1hVD4Pjm2Lu48leuuWKegMMHP3iLpzYPeJx3x31C3xda0iv3nVMQFKg2iDHo9lZRaNnOIHf5fLLl8aTDLpLGJ5uWtwlDWB2llQBgNPvro6x7XxLpVM9Vlq6NDGZGlWtSeiFsrE7sDthPPelEWC0mXeL4H59D0wlAiLleaGlT32VRjz.jAdSgyf18Dmx0m+.V.6PWpZQcTa3hzju8IT+SXzS2Q35nzbEs7+FsUOlqiUBVDfPFyYkgLypQlkw6wbXozyPn2KZCyLNxiQFyTTkmsfJWebp7HTIibpzbZU5J3119r9xrcT5yB3Vbvf0k.lh7ph9rHimi2R.GfKutG4X5N9vhTFV8l0pcMy0qU6peU2PtsjI3lB99BI817UuZ0GVsR0GU0b3s51cj6oDiuv0k5OxsUVe+WGiqxC8Nj5eMySHtgzzCBO+hX57kCSs0u5bGTvawYxa2mFuNyon9Hr.nXXCrEyGqgvQkQVhkhsDscYNTeDCtj2AeOlirGJR4y7x+8MPkf4p36HDdsYOfVf+G+S+0uVJ9W.2j3AuKF+ngUf3GxEp.2iJ2kdB0s.++vSe5KJ4Cno+fyyeTdhwx+lgRofGw+kvZW2Qn82sUShjnhHhMHfQpO0WxT9BFMom.obzwGUvMoAGKE8AIskvqufqLeFyqk5hIQODNnkJg9936.Zr+gcXRWpEwWc5yxj89MF.4bLpB+7zHSKr3OMPndT1Q8jpUeMRqVohZghhZWxgwhZw7hRIDrwx.ymW.+bAArJrkjdF76OD2oG0bSZfzTeSlaC+G0EfjH2lDs9wMZvjTOcZ00.xy+L79+MJ9dRx1VY9e4ibekhZ+nmctmvn.ETYPyOHlwXq8XvyD0jzXLX52izAboBbwKLjKBNeVBbZodUIwwsbTIray756RiAt5p2LThARA1J2kbNfXzuGOgCUYM1W36QbAj2wh5aC6.EtPAgc6xNSkP4SPdLGG..EALUVt7IDbncIgtxCFNQAKvxM7HF2JQ8.eqY5Wjjt1XhNm2trTYRtTzwaBQpb2i1mbgHBlQT9OE9fzT+1D.e4067P3kKU90HLriwzggUhtH0071CvlDfI6YVVeqz5FE8sVdR8sRumDeKffolRIgpQ6X7hMdKCgY5cYgvzRmESjMwPX58j.g.gICBeikc6kSlWXpdmGBqbwcOTL17imL.L8VJIXU9WT5MWpBoKi2wUPjPPXG1X6KIYQmwUGcsg6MItN5xwxKuLRBkImP6BVdMLhR7CQiuAn0FUGDiT+i6cS2n16huUnCSbKNwcP.faGdTViIqu95QMlj0Eih5SdxSFhZTuMMa17Umu2ljNGi5azXW7CqZZthUlivJeo4JIxt9JWSsaKtC8Lfd8nUvfAthSumv+3.XlTJPuKwMfV8QvzrmapLXdPgSnKQVbHQ0zxwanhPxOYlZ7KND4LHe7wvSNN23mxoVtobtfYXJo5dErESZ2az56LiPeAeq2z5a7b3Kh2taWpsLSYmCuy28ZG5dtxMf3E7MAlw5besjkhyenyFDanGJkRdEKseobiykT+OGTlV5KWQqzb4oz9iMzM8kKW6N9T5Cn6EkzN4X+3FFy9uz2f.cGQnJLdOhzWk3GuenWaHFylBFCNjtR8MYLlQMgodcsjzEsobmnEuB9Kdy5p0FwaVOYy7VbrFkqhSSLn+9FowpE.2MgxQT+BC+fddCKep5a+DOPXL4K03+WXxaCY3Qr8E22VWQS4ueoHJv6lGUypBdO0Zy5Iijiw0tdMUge18ssUQgeJDAOZdVaJ3Y8ofmaLE77YSAO2bJ34ymBd9hWKOpO63sBkBOcFZff015RbFayIf2aTXA5e.nfLU.H
      
      posted in General Questions
      T
      TNTHM
    • RE: Response gets slower and slower with every synth module added/ deleted

      @Christoph-Hart what are the implications of this for compiled plugins? Is this only something that is of concern for working in the HISE IDE?

      posted in Bug Reports
      T
      TNTHM
    • RE: Response gets slower and slower with every synth module added/ deleted

      @d-healey what are the implications of this for compiled plugins? Is this only something that is of concern for working in the HISE IDE?

      posted in Bug Reports
      T
      TNTHM
    • Tooltip question

      I have a 2 state button and I want to have a different tooltip based on the state. I am using the method

      Label1.setTooltip();

      in a function that looks like this

      inline function onLabel1Control(component, value)
      {
      
      	if (value == 1) {
      		Label1.setTooltip("1");
      	} else {
      		Label1.setTooltip("2");
      	}
      };
      
      Content.getComponent("Label1").setControlCallback(onLabel1Control);
      
      

      The tooltip change only registers if I press compile after toggling the state of the button. How do I get it to register without having to do that?

      posted in General Questions
      T
      TNTHM
    • RE: onboardConsole

      @d-healey Great idea!

      posted in Presets / Scripts / Ideas
      T
      TNTHM
    • onboardConsole

      Hey just wanted to share this quick script incase it is of value for anyone. I have been in need of console statements for debugging in daw but you can't print console statements outside of HISE. So I created a little python script that looks for all instances of "Console.print" in a .txt file and adds a line directly below them that makes a function call to onboardConsole().

      Then in the onboardConsole() function we can update the value of a ScriptLabel with the same information we log to console.

      I have been finding it pretty handy and I hope it is of value to you too.

      What you do is copy your HISEScript and save it to a .txt file. Then run the following python script. The script will prompt you to choose the .txt file where you saved your HISEScript. It will then prompt you for a name and location to save the new version of your HISEScript with the added onboardConsole() function calls. You can then copy and paste this into HISE.

      Here is the python script:

      import tkinter as tk
      from tkinter import filedialog
      
      def add_onboard_console(input_file, output_file):
          with open(input_file, 'r') as f:
              lines = f.readlines()
      
          with open(output_file, 'w') as f:
              for line in lines:
                  f.write(line)
                  stripped_line = line.strip()
                  if stripped_line.startswith("Console.print(") and stripped_line.endswith(");"):
                      onboard_line = stripped_line.replace("Console.print(", "onboardConsole(")
                      f.write("\n" + " " * (line.index("Console.print(")) + onboard_line)
      
      def main():
          root = tk.Tk()
          root.withdraw()
      
          # Prompt for input file
          input_file_path = filedialog.askopenfilename(title="Select the text file to transform")
      
          # Exit if no file is selected
          if not input_file_path:
              return
      
          # Prompt for output file
          output_file_path = filedialog.asksaveasfilename(title="Save the transformed file as", defaultextension=".txt", filetypes=[("Text files", "*.txt"), ("All files", "*.*")])
      
          # Exit if no save path is chosen
          if not output_file_path:
              return
      
          add_onboard_console(input_file_path, output_file_path)
      
      if __name__ == "__main__":
          main()
      
      

      Then add this function to the top of your project right under where you create the interface:

      
      const var Label1 = Content.getComponent("Label1");
      
      // Declare an array to hold the recent messages
      var recentMessages = [];
      
      function onboardConsole(message) {
          // Convert everything to a string using JSON.stringify
          var messageStr = JSON.stringify(message);
      
          // Remove unwanted newline characters
          messageStr = messageStr.replace("\n", " ");
      
          // Truncate the message to the first 100 characters
          var truncatedMessage = messageStr.substring(0, 100);
      
          // Add the new message to the start of the array
          recentMessages.insert(0, truncatedMessage);
      
          // If the array has more than 10 messages, remove the oldest one
          while (recentMessages.length > 10) {
              recentMessages.pop();
          }
      
          // Update the Label1 label's text with the concatenated recent messages
          Label1.setValue(recentMessages.join("\n"));
      }
      

      Here the label is called Label1, but you can change this based on the ID of the label you want to display the console content in.

      Here is a HISESnippet of how it works:

      HiseSnippet 1195.3ocsV09aaSDF+bacUafgXR6Ofi7Eb0JYIkw.ABnqugBr1FszUgDfltZ+33iZem0cmaZzz9N+4x+Avyc1IwwMzsEIxGb7879K+d7yMPICAsVpHdaewjbf38w9CmHLIGlv3BR+iHdeh+oLsATzRRGLImo0PDwya8exRva6MHte+8Od.KkIBg4jHjKk7P3E7LtYN0A6+K7zzSXQvE7rZR+z86GJEGJSkEX7rteWRNK7Z1H3LlUr07IdadbD2HUCMLCnQYNPFMYXhbrnT9K4Z9Uof8POxPzPkjIGlvSiFLMW0Dh2FClm4qWl4Ox+TdDeF84UfO0wfNWi50.u0tuPp2GPH4UKj1nLjdn+vPEO2LmiMd9H+9BrgDyvRc8PoTVxZ+ku+gRTBgoSF6Z3DEdXlFA60s6tT7wNeWqVX4Van2vTzWvtBR6Q+d5TMGAlCkY4RAdHncI61VcdxSnGAgoLEPYBJSoXSnFIMQlFQMI.UAgnJzLLdwVmtk05kzNshD5ke6OPKEWHBMbofJEWIYpHz0ZYJDTo5Nz2zhh+PGhbtATFJfOmXR3hQVWxnZix9dg197mGd9YcJovim3T056JqMznP+tnLy7DFLUd5kPl7FfVHFyv5PDU.iS4BfFlvTrPrFpcRtfQmeniBxSsE41+tn8tz1z10L8EJLeQPhqJUoiMMrGi4JrQzqa2lNxlAlJEipJfK5RcwUkIT.1W6U1Wq73yiJaIXRzzgZCCqmxX2AWSzozhMpNbgFK6VC2LFp4k90LBMgooYRkMIQzQutyvA6h11UZsxhXE.yWDb4LxXbV.nAMbdJHFYRn+.ZkoPgkDh4x7.LXrbdq6YSLyRvjyQsyPvXkPTjcEnvd9Ln6zFvTN0.vMhhLVdvT3bPldztTtHBtcw31TnDz.GC5io81Aez9aQPxionFUoPs55qxilhVplNSs+84ZpAt0PGywhikINDa6LBa24NSeVaUpcGMXtjkV.AMSmN+ojKbP1cP2+V2H9YxwzbDUYnZYlEtTDG+YsplP633DzdnkEaLTSDKfuw37+kXK0ZgRY56xTMjo92QNSZfyEA6z5Ms1FyDZSVwwKkm8idJYZJnVJa6ZJ08oXUIcWDsfE3YBheGewkCa99sbHr7av0DTJ5K3lyygpymXmfhJe+tqRHUeDGe6U8OhYX1sKUzP4xwwBtMb7NBtAWOWtqYa+i.80FYtS1pu7S71x339fpMQNrDgitdK+RbE41566mT+fEmR7552CQ42oy0ZuoTa.MHi4Qlj41gueBvGkXpSgkxGIxbA3l9oPLlp2c6It2VFUjxLKtL2dqkJFXSbgMn1sjBM2Lo9sZ9.1v28d2v+9FhOze.2Dlr7XbskDiX68+iXr5dQOv+33XHzLO.2v+jecUuDz6v8uTVXvcYmxvUZHvx+rhrg30ACAz6BAjhF22aMKDu7bW6YaEXHHhbG9G7WEyd1ydUL6MkIIiEpjuNrbz0dyqsbTvXR3tn413MdwyzdD23Lpme2NcIY3k.ecXnM8+Bbpa45r2JnyWtB57zUPmuZEz4YqfNe8Jny2bu5Xu+8yKLxrxwAjvficeWyy6XACQVNTH4eALJDrmA
      

      I hope this is helpful.

      posted in Presets / Scripts / Ideas
      T
      TNTHM
    • RE: Reassign sliders with script

      @aaronventure Thank you. I appreciate the info.

      posted in Scripting
      T
      TNTHM
    • Reassign sliders with script

      Can we reassign what parameter sliders modify?

      If I set a slider to control reverb wet can I reassign it to later affect reverb width?

      If yes, how?

      posted in Scripting
      T
      TNTHM
    • Code editor slow down

      I found today that if you make the code editor really small, to the point where the editor displays one character per line (so the whole code is separated by character onto separate lines) HISE slows down a lot. And if you make the code editor a reasonable size again it speeds back up. Thought it was worth mentioning.

      posted in Bug Reports
      T
      TNTHM
    • RE: How I got my plugin codesigned for AAX!

      @johnmike thank you for the information! Congratulations.

      posted in General Questions
      T
      TNTHM
    • RE: Erasing in a Paint Routine

      @Christoph-Hart Is it possible to upload an image through a server and then convert it to an svg and paint it?

      posted in Scripting
      T
      TNTHM
    • RE: Preset name -> DAW Track name

      Following up on this, how can we detect the name of the track a plug-in is on?

      posted in General Questions
      T
      TNTHM
    • RE: Dark Mode

      @Dominik-Mayer I see. Okay, will do. Thanks for the info.

      posted in General Questions
      T
      TNTHM
    • Dark Mode

      What happened to dark mode for the forum? I can’t find it. Is it still available?

      posted in General Questions
      T
      TNTHM
    • RE: Who Wants My Plugin Code?

      @clevername27 This looks great. I would like to use this code. I sent you a direct message.

      posted in Scripting
      T
      TNTHM
    • RE: Memory persistence

      @Christoph-Hart is it possible to routinely clear the plug-in memory usage without clearing the preset data? I see the method

      Engine.getMemoryUsage()

      Is there a way to use this to set a max threshold for memory usage?

      posted in Scripting
      T
      TNTHM
    • RE: Memory persistence

      @Christoph-Hart @Lindon Thank you for explaining and clarifying. I appreciate it.

      posted in Scripting
      T
      TNTHM
    • Memory persistence

      Does onInit fire every time the plugin is opened in the daw? Or does onInit fire once when an instance of the plugin is created in the daw?

      Is there a way to specify that some code should fire once when an instance of the plugin is created in the daw?

      If I initiate an instance of a plugin which has an empty object, object1, and then I modify that object to contain the string "I am an object", will that string remain in the object if I close the plugin gui in the daw?

      posted in Scripting
      T
      TNTHM
    • RE: iOS/iPadOS/VisionOS Support

      @dxmachina can you use third party AU plug-ins in logic for iOS? I thought you could only use stock logic plugins.

      posted in Feature Requests
      T
      TNTHM
    • RE: Some methods not present in HISE API

      @d-healey Ahh, understood. Thank you!

      posted in General Questions
      T
      TNTHM