Categories

  • General questions and announcements about HISE

    8k Topics
    69k Posts
    tobbentmT

    @Christoph-Hart cool! I've scheduled some time with our JUCE freelancer to make it JUCE6 compatible, using the APIs available there for machine IDs. We'll also implement an option to pass your own function for fingerprinting, so it's easy to plug in whatever else you may create, if you don't patch JUCE itself. Is there anything else we can do in the same go to make it more HISE-friendly? Let me know!

  • Scripting related questions and answers

    2k Topics
    15k Posts
    VirtualVirginV

    @Christoph-Hart Sounds great! I'm traveling today so I won't get a chance to build and test until tomorrow, but I look forward to it :)

  • To share HiseSnippets, Interface Elements, GUI, UI/UX, Panel LAF etc..

    186 Topics
    2k Posts
    J

    @d-healey i must of mistyped it cause i just retyped it and its better than before your a genius you have no idea how much i appericate you taking your time with me. Im sure you have a million other things you could be doing right now, I JUST WANT YOU TO KNOW THAT I TRULY AND GRATELY APPERICATE YOU THANK YOU VERY MUCH I SINCERLY MEAN THAT

  • All about ScriptNode DSP nodes, patches, SNEX and recipes.

    326 Topics
    2k Posts
    HISEnbergH

    @hyperphonias I’m more of a humble DSP man myself 👩🏻‍🌾

    @d-healey is the man you want to talk to about these sorts of questions. He’s got a ton of materials online about this on YouTube and Patreon. I think this vídeo should answer your question.

    https://youtu.be/1rs0w4MDNA0?si=kfDhvlTHNvPa1Uof

    He also released a whole course on getting started in HISE which may be helpful to you:

    https://www.audiodevschool.com/profile/infolibrewave-com/?view=instructor

    Essentially you need to script the controls, not use the property editor here.

  • A subforum for discussing Faust development within HISE

    109 Topics
    885 Posts
    resonantR

    @Mighty23

    Thank you for the explanation. I don't mean a graphic, but a modulation like the one in the image below. Not separate Right and Left, but a single one (like the scriptnode gate, comp...etc.).

    alt text

  • If you need a certain feature, post it here.
    610 Topics
    5k Posts
    d.healeyD

    @Christoph-Hart Tis Done

    I think it would be a good idea perhaps to also have a function to set the loop start/end, but I didn't take the time to figure it out.

  • Develop better software through collaboration and shared knowledge. Not just about coding —> covering the entire journey, from development to launching and promoting plugins or software.

    100 Topics
    836 Posts
    ulrikU

    @It_Used Ok, I see, I guess this is a bug @Christoph-Hart
    The sustain (cc 64) is working with the flex envelope outside a scriptnode, but doesn't work inside a script node

  • If you encounter any bug, post it here.
    2k Topics
    12k Posts
    bendursoB

    I think the problem is that the macro modulation system interferes with the DAW's automation system.

    Ideally, the DAW would ignore parameters with isPluginParameter if they have a macro assigned. But... isPluginParameter can't be set dynamically.

    Is there a solution for this? @Christoph-Hart

  • Post your example snippets that you want to add to the official HISE snippet database here. We'll revise it, upload it to the repo and delete the post when finished.

    16 Topics
    103 Posts
    R

    @HISEnberg yes I saved each one before compiling but still got the issues.

    I only installed 4.1.0 the other day but have no issues building networks on my older version. I'll do a test nest time I'm at the laptop and see.

    And yes I'm on windows, ah ok you're getting them on windows too...at least I'm not going mad then. Wonder what the issue is though?

  • Everything related to the documentation (corrections, additions etc.) can be posted here
    67 Topics
    457 Posts
    VirtualVirginV

    @Christoph-Hart said in Looking into the hise_documentation on GitHub- any reason why a majority of the markdown files are empty for the Scripting API?:

    Aw poor @VirtualVirgin that was half an hour that you'll never get back

    "Aw poor @VirtualVirgin that was half an hour that you'll never get back"

    No worries! Was learning how to generate markdown files from text.
    I made text files of all of the classes in the API, then ran a python script to transform it to markdown. Just a learning experience. I then went on the generate JSON for the API with the following schema:

    { "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Scripting API Method", "type": "object", "properties": { "class": { "type": "string", "description": "The class this method belongs to." }, "method": { "type": "string", "description": "The method name." }, "description": { "type": "string", "description": "A description of what the method does." }, "syntax": { "type": "string", "description": "The usage syntax string for the method." }, "parameters": { "type": "array", "description": "List of method parameters.", "items": { "type": "object", "properties": { "name": { "type": "string", "description": "The parameter name." }, "type": { "type": "string", "description": "The parameter type." }, "optional": { "type": "boolean", "description": "Whether the parameter is optional." }, "description": { "type": "string", "description": "A description of the parameter." } }, "required": ["name", "type", "optional", "description"], "additionalProperties": false } }, "returns": { "type": "string", "description": "The return type of the method." }, "examples": { "type": "array", "description": "Code examples demonstrating usage.", "items": { "type": "string" } } }, "required": [ "class", "method", "description", "syntax", "parameters", "returns" ], "additionalProperties": false }

    Which makes this for example:

    [ { "class": "Array", "method": "clear", "description": "Clears the array.", "syntax": "Array.clear()", "parameters": [], "returns": "", "examples": [ "const var arr = []; // Declare an array\n\n// preallocate 10 elements, do this if you\n// know how many elements you are about to insert\narr.reserve(10); \n\nfor(i = 0; i < 10; i++)\n{\n\t// Add an element to the end of the array\n\tarr.push(Math.randInt(0, 1000));\n}\n\nConsole.print(trace(arr)); // [ 523, 5, 76, 345, 765, 45, 977, 223, 44, 54]\n\narr.clear();\n\nConsole.print(trace(arr)); // []" ] }, { "class": "Array", "method": "clone", "description": "Creates a deep copy of the array.", "syntax": "Array.clone()", "parameters": [], "returns": "A deep copy of the array.", "examples": [ "const arr1 = [0, 1];\n\nvar arr2 = arr1;\n\n// Changing any element in arr2 will also change it in arr1\narr2[0] = 22;\nConsole.print(trace(arr1)); // [22, 1]\n\n// Reset the element 0 back to 0\narr1[0] = 0;\n\n// Cloning the array creates a new dataset in memory, separate from the original array\narr2 = arr1.clone();\nConsole.print(trace(arr1));\narr2[0] = 22;\nConsole.print(trace(arr2));" ] },

    I'm sure this is all elementary for you and David, but I'm just learning how to do some these data formats and transformations with parsers etc.

  • Collection of Blog Entries

    80 Topics
    745 Posts
    StraticahS

    @Chazrox We used sample robot to do the multisample recordings. It essentially plays MIDI and records/ crops the receiving sounds. That way it is also possible to have some analog end of chain effects - or make monophonic synths polyphonic. :)

  • The nerdy place for discussing the C++ framework
    168 Topics
    1k Posts
    griffinboyG

    @Orvillain

    Voices in Hise are managed 'automatically'.
    Take a read of Polydata.

    I don't remember where it can be found. But the Hise source has all the .h and .cpp files which have the implementations for voice handling. You can see what's currently going on, and perhaps there will be some useful api that you're not yet making use of.

    Christoph is the person to ask though!

24

Online

2.0k

Users

12.7k

Topics

109.9k

Posts