HISE Logo Forum
    • Categories
    • Register
    • Login
    1. HISE
    2. Dominik Mayer
    3. Best
    • Profile
    • Following 3
    • Followers 2
    • Topics 13
    • Posts 121
    • Groups 2

    Posts

    Recent Best Controversial
    • Introducing: HISESnippet Browser

      Hey,

      It's my pleasure to introduce to you the new HISESnippet Browser. In the latest development build you can find it under Help > Browse example snippets.

      Screenshot 2024-04-25 120410.png

      It's intended use is to:

      1. Provide a quick glimpse into the breadth of things you can do with HISE (esp. for newcomers)
      2. Fill a documentation gap in the middle between reading the docs and digging in the Forum for already existing solutions, by providing commented and working examples.
      3. To serve as a local repository for saving your own snippets that can be commented and are easily retrievable.

      Screenshot 2024-04-25 121550.png

      The menu entry opens a window with a HISE instance decoupled from your main project to quickly browse, save and load HISESnippets. It comes with a bunch (to be expanded) example snippets that you can download in the the Snippet Browsers settings. Here you can set a Snippet directory that will contain the example content and your saved snippets. You can set your username to identify your own snippets, as well. (The icon underneath the settings filters for this).

      The examples snippets are relying on a blob of example assets (samplemaps, images, audio and midi files) that can be downloaded, the first time you download the content. (As these static files will not change much in the future, you probably don't need to update them).

      After downloading the example content you should see a list of HISESnippet examples that you can browse, sort by categories and filter with tags. Have fun exploring :)

      You can add your own snippets to the browser with the plus icon on the top left.

      If you think a snippet of yours would look nice in the example collection, please don't hesitate to contribute to the HISESnippet Examples. You can do so with filing an issue or a pull request @ https://github.com/qdr/HiseSnippetDB/tree/main, or ask me for repo access.

      Oh, and something else: When the HiseSnippet has an embedded scriptfile (as in "include("Recthelper.js")") you can quickly copy this script to your main project in the File dropdown.

      0ff638e4-c237-4dd5-89d6-8d0821948ed7-image.png

      Please let me know if you find some bugs, are having any feature requests, or general feedback or suggestions on this.

      All best,
      Do

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • New Website

      Hey :))

      We finally got a new landing page website for HISE.. -> https://www.hise.dev/
      Check it out, and let us know if you find any issues!

      All best,
      Dominik

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • Forum Videos

      #1 Embeds are back



      #2 Better Video Support

      Due to popular demand I added more support for small videos to the forum.
      The upload size limit is now increased to 16MB and supports the most common video filetypes: "mov, mkv, webm, ogg,.."

      The uploaded video needs to be wrapped in a html video tag to be displayed in the post and can be customized with the html video elements (controls, loop, autoplay..)

      Just upload the video in with "Upload File" dialog, and copy the reference into a <video> src="" tag.

      <video width="520" height="280" src="/assets/uploads/files/1738592343911-2025-02-03-15-13-46.webm"> 
      </video> 
      
      <!-- use or convert your videos to .webm to reduce filesize --!>
      

      With sound..

      <video width="520" height="280" controls>
      <source src="/assets/uploads/files/1738588497039-2025-02-03-14-12-07.mkv" type="video/mp4"> 
      </video>
      
      <!-- .mkv needs  type="video/mp4 and is not supported in all browsers --!>
      

      Loop and autoplay video

      <video width="520" height="280" loop autoplay >
      <source src="/assets/uploads/files/1738585791656-donut.mov"" type="video/mp4">
      </video>
      

      Oh, and because we now added html support to the post composer, we now can also do stuff like this:

      Jump to top

      and add html and inline css to our posts.

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • Added a new search engine

      Hey 👋

      I added a new search engine behind our forum search. I hope it performs better than the default forum one.

      For this also had to do some server upgrades, so the forum still maybe throwing some issues. Please let me know.

      All best,
      Dominik

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • Search fixed

      Got sth for you @d-healey :)

      Link Preview Image
      Forum

      Welcome to the official HISE Developer Forum. Get in touch with the pro's, and develop your own open-source VSTi.

      favicon

      Forum (forum.hise.audio)

      Best,d

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • BTW everyone: Welcome to the Docs!

      Have a look and check it out:

      Link Preview Image
      HISE | Docs

      favicon

      (docs.hise.audio)

      In the latest scriptnode release, please make sure to try out the shortcut [F1] to directly access the docs in the HISE inhouse documentation. (it even has an inbuild code playground..)

      The web-docs and the inhouse.docs are directly mirrored.

      If you want to contribute please have a short look here:
      https://docs.hise.audio/glossary/contributing.html

      The hise_documentations github repo:
      https://github.com/christophhart/hise_documentation/

      Obviously it's an ongoing process to work on the docs, to fill them up, and making them more precise. So.: If you find a (some) mistake(s) or want to contribute to a page, please don't hesitate to create an issue or a pull-request in the github repo!

      But first of all: let's have a little docs unboxing party: :party_popper: 🎊 ☀ 🍹 🌴 🎛 🎈 🎉 :))

      Greetings,
      d

      posted in Documentation
      Dominik MayerD
      Dominik Mayer
    • RE: Let’s Build the “League of Newbies”

      @orange

      I added a new category named: "Newbie League".
      Please let me know if there are any changes or additions you might need :).

      Best,d

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: 502 Bad Gateway error of the Forum

      @orange @Christoph-Hart @Dan-Korneff

      Back up. Sorry for this whole mess the last days. updating the forum software messed with deprecated config files, socket.io was sending messages to wrong port, the docs rebuilder raised us in the memory threshold...

      As last resort we can still raise the memory bar, but lets see how it goes the next days..
      Apologies again for the downtimes,
      Best
      Do

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: FORUM Gassed??

      Got it somewhat stabilised..

      We temporarily ran into disk limit and the swapfile rotated like crazy. Fixed now.

      Hope it holds, and will have an eye on it. Please let me know if you run into anything.

      Best,d

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: 502 Bad Gateway error of the Forum

      Jup, this error happend quite a bit recently.. sorry for this. Tonight the server had 5h downtime and this morning I updated to the latest forum version.
      I hope that this resolves the most major issues, and that the connection drops stop happening.

      Please let me know if you experience any errors and I'll take a look at it.

      best d

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: URLs in HISE Forum emails are in incorrect format

      Hey,

      That's all in my area. :)
      I had to change some forum configurations to get the forum back up.. and as you probably noticed 😥 it's still in a kind of unstable state.. There are still some missing underlying node-js updates that i think are causing the disruptions.

      In the next days i will finally have some free time to take a look into this.
      Thanks for your reports! And hopefully this is all resolved soon,

      All best
      Do

      posted in Bug Reports
      Dominik MayerD
      Dominik Mayer
    • RE: Rotate an Image

      deskrotate.gif
      HISE Turntable Tapemachine?

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: Forum Update & Test

      I think i got most things updated.. If you find errors in the layout or functionality of the forum please let me know!

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: Search fixed

      @Morphoice

      Thanks for pointing this out. Made the timestamp sortable :).

      And it indeed sometimes might definitely makes sense to sort the entries by descending post time. Now its just 2 clicks away: Sort by Post time and Save Preferences to set this as your default.

      All best,
      D

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: Rotate an Image

      Here is the script with a little embedded Task ;)
      You can surely figure it out.

      resource:
      logo_new.png
      save as logo_bw.png in the Images Folder of your project.

      Content.makeFrontInterface(600, 500);
      
      const var Panel1 = Content.getComponent("Panel1");
      const var Knob1 = Content.getComponent("Knob1");
      const var Button1 = Content.getComponent("Button1");
      
      reg angle = 0;
      reg speed = 0;
      
      Panel1.loadImage("{PROJECT_FOLDER}logo_bw.png", "test");
      
      Panel1.setPaintRoutine(function(g){
          g.rotate(Math.toRadians(angle), [this.get("width")/2, this.get("height")/2]);
          g.drawImage("test", [0, 0, this.get("width"), this.get("height")], 0, 0);
      });
      
      Panel1.setTimerCallback(function(){
          angle = (angle + speed) % 360;
          this.repaint();
      });
      
      
      // Custom Callbacks for Knob1 and Button1
      
      inline function onKnob1Control(component, value)
      {
          // TASK: set something to the value of the Knob
      };
      Content.getComponent("Knob1").setControlCallback(onKnob1Control);
      
      
      inline function onButton1Control(component, value)
      {
          if (value)
          {  
              Panel1.startTimer(40);
          }
          else
          {
              Panel1.stopTimer();
          }
      };
      
      Content.getComponent("Button1").setControlCallback(onButton1Control);
      
      HiseSnippet 1202.3ocsW0saaaCElxIpq1adXEnWrKILv.jwxRTZSyJZwvbiiyfWZRLhyJJvPQ.iDkLQjHEjnZhWP.1ixdT1k6wXOB6MX6PQJK4Fmz3BLcSxg77wy24Gd3wiREdzrLQJxp4ISSnHquvd7TtbR+IDFGMbWj0WYOJhHkTdVBiFQSQ6LMgjkQ8QVVq7SJsrZtJp36e9wcHQDtGsZID5MBlG80rXlrZ0Q81mEEsGwmdBKtl1a0anmf2WDIxAFshsKJg3cNIjdHQoVCaj0CF3yjhzwRhjlgrVcGg+zwSDWv05+FVF6rHpRXSzX3fzKumHxWwX0pn9SXQ9iJ87LDbJiphCqniCO19.lOa150iGpMvUHpGOrZbWzayOQ5YUidqpo2irG6kxRjU6n31maOjKooADHETmVZcQM9qUs6K.M3x0iImS2KEDlgvYaW20vOy0s6Ka2pcKHQjIwumjhGQ3znMw+.tDaHU1WDmH3ffSG81cTnpvrOWb1sCoX2O.wN4Rofe6XL62QytTZHlvCinf9tuTKmkPo9F41szzZ8HAweXLTB4z4pQGezOOn+Imt2Qud2AGecjHTb5YWrdBOryZ3NPBSZNcC1LpbDj1kGKxkLN0IHm6IYBtSX2qZ2BCegqmJToZmCHxIqKEGS7YDdlSA05tF9WkSXYJGwoyELe4jNc23IqgqVbBkENQpV8cJKqOR+TxEFJWvI3XfDiacblCaQG06JTsHId8G5Mpaao8IQQmAWqpbmRuoLfpoO9a0Qzt3uA+zscMzqvfozDUbwolQZ2ZiMv8yyjhXboExvAhxRAB2uLEqTlwifHJtjBXAuPMUpOUD43Ul2WCpMhxoca2xvQvJm7pw6+BL3N3LQLEHDODKE.ynZkwhfBA0IB7Cn2cVEpBLF6NKzLOcJ8vaRZiGc2ztIK.6TJq7gqvX8+n9JyNRRpN+3rkaYsv05+PixnFjK.mHQCqFnqKH7G4dzh8648H0YVycOTHoGA0KstpUyVWeicBBVzVliJRQwatqg62JLGdd7Yzzx.pQOnO37MZsueMZ8zgjZJJ3C4L4QIT9s09EYhiPi3FFRApJKZC+kl1viiX9vSiLna6mYWT5fJ3a8GBQ2FXcHu.bSaS7eAv+kg6RjD0yAFBAjLglJYJ+2ZW56g2Y0ONzzdWZ14PgAXpYYd3oSsYaW9zgp.pvpOzVWLgtrxfecuoUB3dEMblsPO+d51MyV4286gpYplezvyk0e0uxT+QXu3ZiT72I+YL4xZh8jzKkpSYrp0DJSRSFy9MZ8YPxxCBX.FaabpOBcy.vcF2qwqmWmWbike.XYffyGOPm1Ccy2ngIED94vvSyO9fZlIyFPk9buSqdKlmwjSq6OKwLEt26YJtuz8Q1iXRuIKluMV.eU2R9elulIzZaOHHf5IqH6p1681O0wwVBpnGGHDdxOsnN6v73wv.qdTfIb3djpcjUC0EdsrqRVEYFS49EB+K7Y1bSkrkYyMK2DES7REm5o6XnlA7gEq.bhWLJbS6CTx3YMJT7NFFL8TOOUf36.luXDOYoQ7zkFwVKMhmszH1doQ78KMhmeGHT+JfWkCi6nuV.KLZPQCZKqAbBTUUTAh9Ojd9pJF
      

      Greetings,
      d

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: 502 Bad Gateway error of the Forum

      Woop, :detective:

      One of the spam-bot addresses with a duplicate email address was fucking up the auto-register procedure which forced the server to reboot every hour and led to the socket connection drops experienced by everyone.

      Fixed now. I hope the forum is more stable from now on.

      Please let me know if you experience something unusual and i'll take a look at it.

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: Is the forum slow today or is it on my side only?

      Hey :)

      The forum currently lives on a virtual server @ digitalocean and they had some maintenance works over the last days.. Seems to be resolved by now. Greets! D

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: [feature request] Fold interface designer shortcut key

      Jeeehah!

      What a quality of life improvement for smaller monitors :))

      Go to %APPDATA% > HISE > editorData.json

      and add any Shortcut Key under "LayoutData" in the Tab that you want to modify.

      example:

      ...
      "Content": [
        {
          "Type": "Tabs",
          "StyleData": {
          },
          "Font": "",
          "FontSize": 14.0,
          "LayoutData": {
            "ID": "ScriptEditorTabs",
            "Size": -0.5544946346088778,
            "Folded": -1,
            "Visible": true,
            "ForceFoldButton": 0,
            "ForceShowTitle": 0,
            "MinSize": -1,
            "FocusKeyPress": "F3",
            // "FoldKeyPress" : "ctrl + 1 
          },
      ...
      

      Heres' mine :)

      editorData.json
      ( F3 code editor, F4 Interface; ScriptWatchtable: ctrl-q, Componenlist ctrl-w, PropertyEditor ctrl-e )

      Greetings,
      Do

      posted in Feature Requests
      Dominik MayerD
      Dominik Mayer
    • RE: Search fixed

      @DabDab

      Ok, I'll hook it up again. I don't know, I had the impression that quite some users use the HISE or Forum Link mainly as a page refresh and therefore dont need the link to the homepage (+ accidentally open it quite often and then have to backtrack).. Otherwise its a nice quick shortcut to the homepage, granted.
      Best,d

      posted in General Questions
      Dominik MayerD
      Dominik Mayer
    • RE: Rotate an Image

      It works this way:

      the g.drawImage() function takes the filmstrip, the position [x,y,width,height] and the offsets as parameters. (the x-offset doesn't work btw..)

      on each tick you advance to the next frame with the y-offset. Therefore you need to calculate the y-offset position for each frame. The modulo % operator provides a neat trick to divide the increasing index by the amount of the total frames. It returns a "looping" index with which you can cycle through the frames of your filmstrip.

      greetings,
      d

      Resource:
      on_off_64_64_24.png

      reg index = 0; // index of the filmstrip 
      reg total_frames = 24; // total frames in the filmstrip
      reg frame_height = 64; // the height(y) of each frame
      
      
      Panel1.loadImage("{PROJECT_FOLDER}on_off_64_64_24.png", "dot");
      
      Panel1.setPaintRoutine(function(g){
          g.drawImage("dot", [0, 0, this.get("width"), this.get("height")], 0, index * frame_height);
      });
      
      Panel1.setTimerCallback(function(){
          index = (index + 1) % total_frames;
          this.repaint();
      });
      
      // Custom Callback for Button1
      
      inline function onButton1Control(component, value)
      {
      	if (value)
          {  
              Panel1.startTimer(100);
          }
          else
          {
              Panel1.stopTimer();
          }
      };
      
      HiseSnippet 1090.3ocsV8uaiSDDdcaLbIPPbR7.rJRmjCT5kTxUPpBQn4Gn.WaiZJm3DBEs0dc7pZuqk85qMpJua7Hwa.Lq20INsIkK+QspZ6Ny7sy2L6ryriSDtzzTQBxp5UyioHqO2dxbtLnW.gwQi5ir9R6wgDojxSiYzPZB5z4wjzTpGxxZ+eQYkU0Jn7u+4mNkDR3tzUhPn2IXtz2xhXxURG282XggCIdzqXQkrtS2QtBdOQnHCXz91sPwD2aHynmSTlsmMx5SF3wjhjIRhjlhrpbpva9j.wsbs8uikxtNjpVzFMA1Hs3ghPOEiURQ8BXgdiKh7TDrKiWkG1WmG9J6yXdrkxKmOTJvqPTNeXs2SQu1koWqOd5YUhdUzz6k1SbSXwxUZTb6yrGwkzDeBbDTlVZaQ68pJ18DfEb4gQjanCSfEKQ3bbqVGfeSqVMOods50fChTI9CjD7XBmF1F+i3BrynxdhnXAGV3zPqtgB0JLmlIkB91AYz2P6qD5LLi6QuCru0I3W+ZyJgOVFPw9rvnTIDBXsoRgjDN0OAJJRADG0IGRtTrQJiuNRMvbkSCnrYAR.3wFffgZYNyap7Ik3FnsUQt50zQ3ggBh2nHnZzow8iu7hecPuqlN7h21evkKD7oBe+oG2Q8yQcNLlOqwA3FdBoIBMaQJUNFJjjWJxjLN0wOi6JYBtyrl2WuFF9z+d1gdIjaMNSsKGf+S3vA9QFvRU4RmF2x7jAMZVVjNJZz7uxMUmC+50hZEaV7PJotDlziDFdMbaaEmJnTwIii9e9Fb6l3Ws1gvIZCyIRBMVEgNk7T8ZPVtWVpTDgKbC1WrrJQYAiGBIDbgywBtQop9IQD53VT7b.TfElQaVuFvupLerSwZEGtuHEp9JBQIIQGjNs0k2JkKz+gFlRMP2.PQrFWIPKxio+mxZUZ0v7kI1GFRp8rT7dtPRu.x50tuV0ZKdjFe+MoxrUgJJ9XsFtuUXN7rnqoIEYTicPSl06hYu8tXkax5pSIkLTvGwYxKho7s0aCYxiptbFRAlJy6w8Eldb5rFhAsxpZaRgnbFWdNC52G0mHIEaDrmfehoIRlJDr5S+.LGR27rpceZ5MvYKLRY4gGLZQ615EsVU0.4d8E155AzcqbXqtyKuH+xX4Ab5qakkfdrqdxHbKN6ueeWI8NXO9T675ZzCb8ztnGOt.FZI7xf43qOISM91n.pKVajgZr.OkImWd79yx3sOV59R6wLoavl46dafuPovyMeMOVnt8.eepqbEYqXO7Od9eY.ROGY1YDXFGTuXedVzD3sStTfIbnjUc40ZO00L85Vp0pLyDJ2Kew+BeFksUqsLJaWnDEQbSDSc0WNUOG4E4R.NwyeUVU6yTqwKuSp3cD7FoottpDw2BLeyHNZmQ7c6LhN6Lh2ryHNdmQ786Lhe3IPndP5OmASW0WK.AiGj2KzxZ.m.UU4Ufn+CSrMQs.
      
      posted in General Questions
      Dominik MayerD
      Dominik Mayer