Hello everyone,
How can i set the length of the reverb with a knob? after moving the end bar in the conv reverb i don't see any value changing if i dump parameters and values in the console.
thanx in advance
Hello everyone,
How can i set the length of the reverb with a knob? after moving the end bar in the conv reverb i don't see any value changing if i dump parameters and values in the console.
thanx in advance
Hello everyone
i have a latency issue with the convolution reverb on a drums VSTi I'm creating, i clearly hear 2 hits instead of one. i tried moving the send effect from the master chain to the snare container and the send container accordingly after the send effect, but it doesnt solve it. on a smaller project it's working fine tho
does anybody have a way to fix it? any way to make a delay compensation or something like that?
please help!
@David-Healey
ah I forgot to write smpRoom.Gain thanx :)
or did you mean that using the Gain of the sampler is not valid? because now it goes to -100, but won't go back to 0
@David-Healey it adds an empty slot, but it basically loads the first file anyway, so the last file of the list won't load.
I added a blank wav file and use it to call the Room sampler, but it's not working :/ I'm doing your Hise scripting foundation course, but it's still hard to put it in an Audio context.
inline function onComboBox0Control(component, value)
{
local smpRoom = Synth.getChildSynth("smpRoom");
if (value > 0)
convRev.setFile(irs[value - 1]) && smpRoom.setAttribute(Gain, -100) && convRev.setAttribute(WetGain, 0);
else if (value = 4)
convRev.setAttribute(WetGain, -100) && smpRoom.setAttribute(Gain, 0);
}
the IRs get loaded, but volumes don't change and i get no error when compiling. what am I doing wrong? (4 is the blank wav file)
Console.print("HELLO WORLD");
How can i add an empty slot on the combobox menu?
I've sampled my drumset with the room mics included, then i got IRs from other rooms. What i need to do is: if in the combobox an IR is selected, the room sampler will turn off, and the convolution reverb will turn on, else the opposite
I'm stuck here, trying to tell HISE if nothing is selected, keep the smpRoom running, but i realized there is no "no selection" slot.
//////////////////////////////////////// reverb ComboBox
const irs = Engine.loadAudioFilesIntoPool();
const var ComboBox0 = Content.getComponent("ComboBox0");
const var convRev = Synth.getAudioSampleProcessor("convRev");
inline function onComboBox0Control(component, value)
{
local smpRoom = Synth.getChildSynth("smpRoom");
if (value > 0)
convRev.setFile(irs[value - 1]);
else
smpRoom.setAttribute(Gain, 0);
}
Content.getComponent("ComboBox0").setControlCallback(onComboBox0Control);
ComboBox0.set("items", "");
for (x in irs)
ComboBox0.addItem(x.replace("{PROJECT_FOLDER}").replace(""));
Any tips?
Thanx!
@ustk i hadn't looked into it until now since i got "scared" of the "script" part of it haha i know some basics now, but still can't handle complex codes on my own. I looked for practical ScriptNode videos but i found only one including C++ so... nope xD I learn much quicker with videos than by reading. I guess I'll play around with it only when I'm done with the current project. I cant overwhelm my brain now haha
Hi everyone,
Since there is no stock sidechain filter in the hise compressor i'm trying to make my own with a send. it works but it's not transparent. I used shelves instead of filters in this case to avoid phase issues but it loses some low end anyway
Does anybody have a better way to do this?
HiseSnippet 1418.3oc6Y0saSbDEd13rkD2VJf3hd4pndgSUZj2DSRPHTLwwlFURvMNEUtBMd2iiGwtyX1c1.tUHwE8kf65iBO.8gf9DzbWuqsmY+escHIt.JfXuvJy4Lm47Meyb9Y2z1SXA99BOhV4CFN.HZegdmgbY+F8oLNYmsQ45c.t8Afujr0vATeevlnoU5tJ8ZyOKI743M2h5P4VPlHB4ABlEbOlKSlIsc8ef43zhZCGvbyM6Z02wRvaHbDAHVJoWkLfZ8X5gvdT0zlQm78T+9DsuU+l0VestqaswJ0.yaVcsM5ZRqAqUCrVci0s6dyZvp2npY0pTh1m0zlIEdcjTI3SzlcKg8vN8EOkG4fGv7Ycc.0.SRGzyQhaIbrUaQkTRi9LG61IjjOAWz1YTVoHJ6556xrYoxyntqDpvHyh7Dn1LEgWoBvyLO7plCdS.RZ4fzrQP5p5cr7XCjYZT34y02gKAudT7bJOThlKYl+XF8FBbFb4xtzGCs7vAoVTYspUWx.+YwaUtbY7vxWZbD0yvma2h4fSx31FgWcV9PP1rWOvRVYgTkKfVkYC7jS1jDcJKJy3NLNXzKfaIYBtgf2UxizqPpmvohkvcffiXdIbocBfEK+qkMvmveX8LpDJ03121vbwPYQpSmh5IElK6Cx6HkdrtARnRlX0s8kL9tZ2.AUhQI.snMoRaxo3wm8Rnair44g+BN9PQXbtQgY3Yv4EFUSgwyQhM4bFI9FIDXkERI2EVTsbwTbCpiSWLZrx3r+h2J2QydBIbedE0Av7kwc6np50ah5hWJGvahpU4I7dSFVgG31E7xc7GNQLVnX.l9IGfkO92JhYxMQAeGNSd+A.+jxJPhoSUvXLpvoJCCEubbn3VARofSX1p3vTdjDB57IRI+zNaSkzjkBWUzSC.OISsIz1FNBypFEkOu91f+ikhAgyM9TD22mIG+rTm9Zn9vzAFd0IimOAyjIrCbnxho2TWHiUfGIExonxav8Yxg42au0x4cVg3U0ayjV8mLFmYBXDo82EXLtRwWpGkkKCfyp25me2TVHu6mKx8WReOAyGBc70h9ai6BbvSQZlmT48WD72O6rVdevYt7tVo2T0Yyor57rW3pN+APvTgFHlOAicXtCbfl7i.GL8S7clsgdz.GYhzUJfxcEbwf9BNyJ+0j8ArlzgGBd4w9D2PX0KrJSljqWeevAn94tG8M0uG1O.0C4IXJ4ByycyTS775q0ifqg5htwmRBdwLInVob9+RQ9etvWnA8XTKwosWcxudyKZ8JDrbN3f8vf8EkmoTq0Nba3Y4Oh63JDx9L9gE3zRuuuid0vc5+qKmyd1X92bZYx9h.IxF6RwTAHQouWfaGrRfEDSqptyzlQ0GUz3ppwIra3f+EehUZpFqEqzLQY9KZkSZOpQf2QPymD+drI8DWfEPnDI0OYY2hF5yDNY4WoDXlIfUWIXkXAF+yJpW9kauZw2FlaWK2ge8VsNHtSbUL2asqBuuY1qEwrk02dHm5xr7iChRFNZSDRHcWmEHnDePeOvuOdqYTEiVD33MURGqPvCqqZ30KDVi4hi2LS4nN52e4KW6UYp2WEWjoZ9bKaAjT+O+keK2pNBdVz4g0C6DB7lv9MVyD2xw5FeWGqXBU.yPwt3KoGLXBK23J9v5F264a0wsG+UgoKUuzEl.E7xmBMUn446ifc7lSpK4i2bxcIi8EcJcIqe96R99GAdGwfmlIq5m5b9hTGXk93tCLsSqv7UzaS8ntpWS3IFM+Qy2pkmes9k+qSs77bePWd9iEe3Rs7DOxJ5ymot4LWnDja4g+O.lWeW0XCyQ+lYDhKlN5QVVEWpwLbko0vUmVCqMsFdio0v0lVCWeZMbiS2PU0h6DHEtQ49Hjca2L7abpokE0Uh7evj6wvI
the button switches off the shelf and mutes the send. the phase problem is more audible with compressor off.
anyway i also noticed that sometimes the EQ bands reset themselves, anybody knows how to fix that?
@David-Healey Thank you so much! I'll check it out now!
Hello everyone,
I have 8 solo buttons set to the same radio group, so only one solo button can be active by default but I'd like to add the option to latch with shift+click. is there any way to tell hise to ignore a radio group when cmd or shift are pressed?
Hello developers, I have a few ideas to make the module tree a bit more user friendly.
That's all, thanx for reading! :)
@d-healey
I figured it out and now it works! the only issue is that if i transpose the choke groups don't work anymore. how can i fix that?
@d-healey
does this make sense? or how would it work?
evtList1 = [];
{
Message.getEventId(41,42,43,44,45)
}
@d-healey but how can i make multiple event lists that contain only certain note numbers, so that "evtList.clear()" does not mute all the notes? at least that's what i think it's happening now
@d-healey
no, i tried it but it didn't work. as far as i understood that works within a sampler or container, doesn't it?
Hello everyone,
i searched on the forum for ways to have choke groups for the hihat, and i found a snippet that is only partly working for me. The hihat chokes each of its articulations correctly, but ALL the other drums get choked too (actually don't play at all). I have some samplers that are mixed, they contain samples from multiple drum parts, so i need to put the script processor under the master chain (and i need it to stay that way for routing reasons)
this is the "half-working" script on "oninit" interface
const var HihatFT = 44;
const var HihatSO = 45;
const var HihatO = 46;
const var HihatSC = 41;
const var HihatC = 42;
const var HihatProcessor = Synth.getMidiProcessor("Hihat Processor");
oninit (script processor)
const var HihatFT = 44;
const var HihatSO = 45;
const var HihatO = 46;
const var HihatSC = 41;
const var HihatC = 42;
const var HihatArt = [HihatFT, HihatC, HihatSC,
HihatSO, HihatO];
const var evtList = [];
evtList.reserve(64);
onNoteon (script Processor
function onNoteOn()
{
for (i = 0; i < 5; i++)
if(Message.getNoteNumber() == HihatArt[i])
{
// Always use the for ... in loop if you don't need the index
for(eventId in evtList)
{
// Send the note off command for the given event id
Synth.addVolumeFade(eventId, 30, -100);
}
// Clear all notes
evtList.clear();
// This is necessary because you will kill the note artificially and HISE
// can only kill artifical notes for stability reasons
Message.makeArtificial();
// Add this ID to the list (it'll add the artificial event ID)
evtList.push(Message.getEventId());
}
if(Message.getNoteNumber() != HihatFT & Message.getNoteNumber() != HihatC & Message.getNoteNumber() != HihatSC
& Message.getNoteNumber() != HihatSO & Message.getNoteNumber() != HihatO)
{
Message.ignoreEvent(true);
}
}
I tried to make an array and name it evtListHH to tell hise to kill only the notes coming from the Hihat note numbers, but that did not work (or maybe the idea was right but i did it wrong).
how can i make it work?
Thanx in advance!
@d-healey I'm still much faster with photoshop than with codes 
but i've found your HISE Paint Routines + vector graphics playlist, I'll give it a look :)
@Chazrox you were right, the sprite sheet was spread the other way around 
curious tho that it "compressed" the image that way tho.
at least now i understand that script better and i could give the peak meters to all the hise outputs with a loop and it's working! I'm slowly learning how scripting works. thank you both! :D