Midi Browser and drag'n'drop midi to DAW...Drum Plugins without these features are completely doomed!
Drag to DAW is possible now using the MidiDropper. You can build a browser yourself with Viewports.
Midi Browser and drag'n'drop midi to DAW...Drum Plugins without these features are completely doomed!
Drag to DAW is possible now using the MidiDropper. You can build a browser yourself with Viewports.
@lalalandsynth Sorry for been late to answer...I just now entered in the forum!
In order to have a mono functionality use only one LevelMeter...
Delete ''LevelMeterR'' and rename "LevelMeterL" to "LevelMeter"
Very correctly as @Lindon said ...sum the Left and Right values and divide them by 2...
Use this snippet
HiseSnippet 1611.3oc4Y0saaaCEVJNZHwcYqcnCXWRTzKb1ZSrS+YannKNw+T3sjZiXu1kcSJiDsMWjHEjnSSVP.1qQuauF6t7nrGg9FrcHojEsqiqgQawxp.BfIO+vuyGO7viTZEwcIww7HK6k6bZHwx9ScZeJSzuReLkY0npk80c1gbLweWhfD0gDKr19zPbbLwyx1N2SjZYu7hVpmWu41XeLykjMkk0y3TWxNz.pHa1Vk+IpuecrGoCMvP66WtgKmUg6yG.HJmSQqPr6Q3djmhkpsfik8mTyiJ3QsEXAI1xdws4dm1tO+kLs9OiFSOzmHGTxpM3H8z049dRDKm0pRepuWqzHO1xx1oUFOjSyC2zYWpGc37l7gT.JyBS9vdgoAuRlvq3rCOaC3snFd2vosaDMTjIQhsq4zfAaScwvVfIrz5Zsvm63TgCZvDqEfOhTOBFLzhBOrXw6fdPwhq9nUxuRdXiHVfNFGgx1+QOFkZeOhnBOHjyfAEtUlJ25xsdGt6QyfGjp8FdoElcolBxdC8aSCB8IxzyRfcpTZoU051k3BlXHNwz0WuJwEeJZOXiyzQUqUYq8OXus5TC7Sw0996knckAQQvpidF1e.Idk7RccGDoBCklESTTlgGgpf88ODxkMcs.zqFqGkQVyMh.qqR0lG9aRHJQkXsXhPMYp4E5Nf4JnbVgUWI+YR2qBsgn.kQ4fyKXDlJNSiYk3BkV8all3hqtJZczFOBgjdU+25q2hfOBYtjZQxEMDDktv6hA5N.eRA0D2QCHYDoUGgncQExL3GFxbqpEiPmk9CjIqNzjGkJ9b8OH9wjoY5W+XiMxwMV9H2qzgHjFPODLAx0NlDECbsd969t7AoIhz3JIK.1CRV8357H49RcrKTMovP5QucXtizlHL1JdGCSIPGhS0gSYFoZ4JXBnj+NWeTBRaE3Hchag6AkSRSZQb1S4BRSH6M+Y4WN+44QiKpa2IJSdvOh66CNbRh0K0TLr.aPvgjn6.Yp.1GpHTNcz50NWd8ZyqSb00gLTjyZvnhlgD1kUE2Jo3ETOOWBpfeITUy+rjp4s8odjHKpm7d3LR2Rg5rqI2+BqYvClWbKqoNtWd8lyhWbbfxqiaJ77yMphEX4kSIwEDqgjHAURi1UIGC25qupZYmpj3iD7PUfmT0Ff2rE5mX1cvoYCtc4tT+fXAXai.nCAKajyYs1q4OVqRmCp2bmp016biz1PVOKHGnsT+3gd4hes7Kodh9Yt85k6Sn85m0qxKdQ4.ydb1+BntlISDKHgso+dJ67mu5U+0lwC51kdhj7PdaaEP877Is3wTYRoQ7bgGoKdfu9.k4RDCIVcHmH1lehNgKf6kvjpxCxjogD4RydFfAvKMcx71SgLkt5RHTHoZLBciIPnlnO+aIyy.xMMf7eTsbX5gqFfxq3XbYFz0XDzvH.UonkcR6JcZaj6WVyw5U8x1xj8t9F8hAcDx8F3iEi1lnDJIBj9vreLYOWLv2mZRbuW5cbVg6MbZQEt8mLdWXB3EN4+9FuIchuhitqsLvtnS8e4Cba2KM7siFllofxn4cW9qFYYUk3iGg+d9nGT1u7Dd4oFxdPDs393nwY+biFx4lsatlPXt3LmhHCIzUlT5uvQQ4Wk.rJk3pCfutrV4+Af6d7ABJqG7VGQpaceJbuDePjKAfJiAcSCyYufrEL83hxwR.0lv7TC9G3IQXI4X6DgkREZRI2TSIWy443iIpWFRwFeoZbWdT.5IDFIRxUkdW70RBm4uVRSWA.gNQXVbHOlTxzyiIaiQqMIFvFUc8TinkL7f2KIvPukJmN4FlSBoEi3LX7HdZWpwMu+8l0XXXSuMAhFulwtPvJ4NSlp0.3E7TmNJYZX1zaXN830FWb1pMdk9iD8gqujbyFbeKWntbJF02eVCtnyGdAhgUtUMFmN6nGi1ky3g84LpqYN0dD3zeudjQxalX.skPfglgGNyMKuGwmfiIlMDuC7B43nc08cOObQoYmKl190W4ngKRd1G8+i9Iy8QY+jy9ITn73GI2p9gXMBvtQ7Cb0epC4QukTy.wMS8eUXYmckiQkR+JGNNEWqn7U.oG35JyNtKvOS1lMlCat2bXy8mCadvbXyCmCa914vluap1Hu6bqABdfN+GlnUM0Wax1V2pf5nf0+h9zF.s
And as @Natanr said very correctly if you will not use an invisible image like "levelMeterLock" on top of the LevelMeter you will have problems with Mouse Click / Drags.
@Natanr Try this...I send you a small test project with a filmstrip (107 frames) connected to a Simple Gain Module LevelMeterTest.zip
Then you can replace the filmstrip image with your's and adjust the code and number of frames according to your filmstrip image
@gorangrooves Great Job man!...I wish the best with your instruments and your Libraries.
@marcLab Hi.
You can add a lot more than 16 channels without problem.
I work with 64 channels in my project and there is not any problem.
Just follow the link that Dave posted above and recompile Hise.
@MikeB We Wait for the guru to make his magic...crossed fingers.
@MikeB @Christoph-Hart Confirmed in my end also...i tried with Hise Standalone, Hise plugin and through compiled Vst and Au plugin with no luck
I am also on Mojave 10.14.6
@d-healey Exactly...it is exactly as you said...this is the only way to have a louder result using saturation(of course very carefuly...we dont want much saturation)...the higher peaks of the sound will be altered on a tranparent way (not as compression acts) so we will have finaly in the middle area (and this is the real acoustic area that is perceived by human ears) clearly more volume.
For example you listen to the same track that is mixed by 2 different but lets say good producers
The one of them used no compression and no saturation and made a good mix
The other made the same good mix but used a combination of saturation and compression but not only globally on the Master channel (imagine that every different track needs different approatch)
Finally we have 2 finished tracks both play at 0db but the second is about 6 dbs louder (i am talking now as a producer that i have seen that hundrends of times)...
Final conlusion...if you will not saturate or compress or the better of the 2 worlds both you will never be loud enough as the other senario...
If you dont care about the volume it's perfectly ok
If you care it is one way.
@Lunacy-Audio Hi bro!
It is almost impossible to have the final volume as you describe (like Omnisphere for example) (if you will not use some techniques...as compression and/or saturation or both before importing to Hise or any other sampler) and as @d-healey said all the plugins have the same output volume (0db is for everyone)......but.....
same number (lets say 0 db is not same volume...i can send you now the same file where the only difference is that i used a gentle saturation on one of them and you will hear exactly the same sound they will be both 0db but one of them (SLIGHTLY SATURATED) plays clearly louder (about 4db louder)
NON SATURATED.wav
SLIGHTLY SATURATED.wav
So for Omnisphere and any other plugin that plays loud for sure these techniques were used before importing the final samples in the sampler... Trust me there is no other way to achieve this...ok you can use the Limiter of your plugin to achieve the volume but it is a post prossesing action and it does not have the same transparent final result as a clever saturation senario
Listen to these 2 files i send you and you will understand what i say...and i have to mention that this initial file was already treated the way i describe so if i used for an example a raw uncompressed and unsaturated file the difference would be even greater.
@Natanr Happy that i helped!
@DimitrisSP Bump bump.
Did anyone has test it? If it is finaly a bug it will affect anyone who uses midi files in his plugin and wants to have the functionality of Drag to DAW or any other Midi Overlay functionality.
@Christoph-Hart please take a look at the problem...if it's finaly a bug it tends to be a very serious problem for this kind of plugins.
@Natan Hi my friend.
I build this version of Hise on 3 September
I am not sure if it was the commit of 3 September (and i also had some compiling problems with some commits) so it is maybe the commit of 1 September if not 3 September.
Finally problem solved with the Multimic method (A really great way to control different mic positions)...
Thumbs up @Christoph-Hart and @d-healey for the suggestion
@dustbro They will not work from the Property editor...
Did you read the post that i mentioned above?
You will find a lot of answers there...and load my snippet and test it in your system...you will see that most of the functionality is there and working ok and finaly you will come to the most serious problem that i mention in that post above (the crashing senario) but strangely noone (of the users here not even @Christoph-Hart) was interested about...and in some point anyone who is using a midi overlay panel (for drag to daw or any other functionality) will face it.
The part of the code that controls play and stop is that below...
//The callback to control playback of the loaded midi file
inline function onPlayControl(component, value)
{
var position = Engine.getPlayHead().ppqPosition;
var last = Engine.getPlayHead().ppqPositionOfLastBarStart;
var currentposition = (position - last)/4;
if (Play.getValue())
{
Player.play(0);
Player.setPlaybackPosition(currentposition);
}
else
Player.stop(0);
};
Content.getComponent("Play").setControlCallback(onPlayControl);
@Natan I wish you success bro...i am almost sure that you will have it!!
@Natan No my friend!
If you look at the image i uploaded you will see them.
The image is from a plugin that i use to create irs...Its called Voxengo Deconvolver and it is free.
By the way how you create your irs? Which software you use?
@Natan I am not sure but it depends on the way that you capture your irs...
As far as i know you must record (or export) your ir using the sine wave at the highest volume just right before clip...in this way you will get the higher bit depth.
After that (if you use Voxengo Deconvolver as i do) use ''Reversed technique'' and ''MP Transform'' checked as is shown in the image below
I had also ridiculous amount of volume in my irs in a way that i needed to set the wet level of the convolution at about -15 db to have a normal sound and if i remember well it was fixed using the ''Reversed technique'' and ''MP Transform'' checked...
In some point i normalized an ir and the volume was even greater so...no normalize!
Hi my friend @yall ...
I can understand exactly and it's fair enough!
Everyone has his priorities and of course his knowledge base and sometimes it is not so easy to help!
Anyway this problem is solved (For sure i will find a lot more in the near future developing my instrument)!!!
Thanks a lot for your kind feedback!!!
Deadly Silence here...
It should make me think that the guys of this forum are kind of snobs (but for sure it's not the case because i have read a lot of other posts where everyone was ready to help and to give directions in many normal and even in strange situations/questions).
It looks like this forum is not a great place for Drumming Instruments.(Maybe great for Synths, Oscilators, Fx, Legato Stuff etc but definitely not for Acoustic Drums)
I hope i am wrong!
Anyway problem solved changing some parts of the script and now Hihat works as expected on a full choke senario...
There is no need to have the samples in Sampler Settings to Playback(Normal)...The code works perfect with the ''One Shot'' setting and instead of
Synth.noteOffByEventId(int eventId)
i used
Synth.addVolumeFade(eventId, 300, -100)
which is what exactly happens in the real world (There is never an instant stop of any sound even if it's choked)...so i used a decay of 300ms...of course anyone can play around and find his sweet spot according to his ears/taste.
I used a Container for the Samplers of the different Hihat mics and opened a Script Processor in the container to insert the code.
In "onInit"
// Use const var for constants for improved performance.
const var HihatClose = 42;
const var HihatPedal = 44;
const var HihatOpen1 = 46;
const var HihatOpen2 = 49;
const var HihatOpening = 50;
const var HihatLoose = 51;
const var HihatTight = 52;
const var HihatFootSplash = 74;
const var HihatArt = [HihatPedal, HihatTight, HihatClose, HihatLoose,
HihatOpen1, HihatOpen2, HihatOpening, HihatFootSplash];
// An Array is also a constant, even if it will be populated later on
const var evtList = [];
// make sure it has enough storage to avoid allocation during the noteOn callback
evtList.reserve(64);
In "onNoteOn"
function onNoteOn()
{
for (i = 0; i < 8; 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, 300, -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() != HihatPedal & Message.getNoteNumber() != HihatTight
& Message.getNoteNumber() != HihatClose & Message.getNoteNumber() != HihatLoose
& Message.getNoteNumber() != HihatOpen1 & Message.getNoteNumber() != HihatOpen2
& Message.getNoteNumber() != HihatOpening & Message.getNoteNumber() != HihatFootSplash)
{
Message.ignoreEvent(true);
}
}
And the snippet is here:
HiseSnippet 2926.3oc6b0sbabaEdoj2XKZq331bYu.MWzPMggdIE+QptdrnDorTijIGRF01ISFOq1EjDiWtfytfRlwimoSupON4QvuC8EnOB4pda6A.K4BRQYsTkTVwd43wl.mC.9v4b1CN3SqUcOpE12m5okXsVC6i0R7.8lCcYc2qqIwU6vJ7NNfz0jgZg8YZ6NruouO1VKQhUeNWiDqcGMwme4Y6Z5X5ZgC6RS6DJwBeDoGgE1a8c9Nhiy9l13VjdJZmemCsnt6QcnC.zrptgVeSqWY1A+BStZqnqk3ypZSXTulLSF1WKwc1kZOrYW54tR8Og3SN0AyajUqILQxt2m5XyQLuWs85RbrqOZW6qokPudnMXUoM3K0OlXSF2ens3KDBPgiP0djXk2G7xpBOinCuDJv6NR38H8lVdj9rPIbrce8CcYXu1lfKPEVRc0V4+jPeOJngKKSOyWg22CZLdDoJZXjFUvvXimrdx0SV0sCwEmwGy9N7PoKIU9boQFutX9MMJrU47b8loV4ijVEijVaGEsJXDIsxFIshzdrzE1iqmr8.WKFg5hntufxv0bSsQx2jbsjuMIZZQsaOSYbmiG0wA6MSw7GV7deCLk6fdmh8RiNyzY.drhPTyjgk5WdXo5SMVxXEEEotG5RX05icurfUsf.L3ae+gULYl732f9.85i8XDNDRTAeFjXPFMuldEr+qXz9Bc60m5xmgDOfE7nnL9ceGpIi31oEAfJABrSpCNjSold1ZuVMkyvvF+zNAqsbgTFwocFkm4A54ysU9RE2dysLzHLbuQBtud9MKlynTwrET5OmbDame6hkxscAMF90L0oBDTHaVXHhc+J8Rn+l0ShPeErx+EhMq6W8GQYymwHsnyJD+9NlCqYwLOC+Bg2Cj21zwGKU3H54v.g9xkW1wADY6r4JI6XuA9LZum6Y1uKwxexQWA21bfCqb+9XSOdlYPLyaPfzccfrqvr0.LqTPhQlhaK9r0VFk11nTVoZsnc53fOlZimbx44Ag7httXGNdjc9893SvVPrlBfBWQP59NlrlrgNSOY0qNx0bAAPXqGKbkxMVPUWaE.Tb8juU6btIdr++c+ic5hIc5Fd1yeuwNZWLcJjTmZO.P1jY54GuEH.dNahTp7zlt9D1P0i+VJo+iJbejdcByp6rw6Jy.uvSlKa7FbX555Ua2FhJBA6cz2+ut7O4TEJ26Rps4QA01vyS.8g8VDE3zOxE3jX0+OKnwXVULbuO.EzLGvKxEzLx4LavMprle9t5nG+XDjbAAVWeFb7mGpM0S1xzk4KZQ502idF1FAGBAs6wcjYVOY3PDq0dNTXddJJetmbAY0w1lNbY4unL9ghY4xJNaY43x1d1xfC0.oELtnzinRzTH6Ek0hmXiKaFHceJk0DNYwuKnPo7h5SlRkxd7A+CgarzJSaZEiQZEnjFsdxvsaZksW5I1NomFF+n.BfWBU1EU1yybHh3ifz7Tj4X+TZD9LrKhzFQXnygmfPmhQ8o84Iz.+F+u8fpcT2J3yXGQ7E6jwKAu1Vj+.OLeZ5Z5ivtzAc5hfyI8fKSfXvZdFkXCKuC0RjqDYOvi6EXcwHWQwaHKP5ovAjqmLXMx3g8wdmAEJKJ3aFk6sdRwQ8HQ3VJB.JimfHn+DZK3e9luYCoP9G42HsScLDVCXJSGLiOKxR.RsA5oOcrW5GH+XvHeS3D.ayxNmaNzGM.BP3vlulYxjAQbQNTZetUbHc.xl590LjKFrebsHt13WGNMvfRws4rCs4CLXmp.TkkLXYahcsGamPz1sA2WO3gIaAB3B5P3dQwzh.qrxmImLQl3Ll11mPcFzCySWNBLoQaxuMx2lkecjYOCucZqY.91yAp0g6ZE.zOT1H2nEWgTbW3LGeqtPfI7GWLOkio2PHHzxjak4lSQT4q3+0XS.TbBoMwh.K4PD2NbvgMqNwTZYxiR.ohAFnuY..ElMH7+ThCb7LxCa5CQ2gieTDBOpt73kJ0kYVtv9orM2cAanCqvi74v1g+DSJB6q4nwV5MC2EAdtCqrwEsc8G32UMlspzckZiQly.uxbDo+6epZx0+.5pzSl1SNsWs1xz4WsdxDsQcVkI6ild4lqYkmD5p0LLu5zYFFMRRGWpGV3dRwq+V0+.0IeK6BoIWLWH0PaTt3vqnNdCppT39RsWw1YFpE10B+9tw2E4Sw6h76jP42n2jAo66AOy2zrWeHZTfm0jE8Vq6M6MQp6gcnl1MI+jhZuamcG.lKuI68m2QrTk6QG3NwZErMZf6iMYbFCBEducZz34dzA8mdT+xyDwJs7fZs.KgpfZtXvrOgt64Q88aCaGwb4qt8qOvqC2VE1SC3jLO+I6CxkFvY.mHrDI3O35i4tZh0wlLOxDTIIVEiVlB28J5x1YmpctoZu4TsyOU6BS0t3TsKE1Ng9jgh2KZIJO1recSXKpn4tjffLPlrG030wlUwRqb+ylXFmyMekYZFWn6ytUSf9MWR1UiFbmgEbEEL9PIFuqd4Cpzrg.ZqOJmPYdOp35XpKseWpKwZxHeHRtSGrmJZm4VnLiAO3s2.3hMgc+ueVEnl2gS0qllT4K1yQvCZNpce.3PF29e9u1QLcpczbfOahLZ+s20.CEl6GtduyampVzIyhLWl7rueStdDCKVWWtIQhLn2tO38yGgUoG41MXeftHr3WC10GpGDv9qBC6mqG7rzsES68F8ie4DnFCK9pqvtWsti68JQJbTcvgipo0fS4YSdJODXQNE6LYxCnBofERLGhp0EGxtnRorPJOd0O4KO98GZKqhAI9gBcqOAmndNDu76OTPsAc.u.tQk1pC0+1Dp42BqVE7J7KxJaavayADmmOQi+K7IPX1QkLyElcjPMqQSEr2B9t7gqUwt7mzD25yY5ZD7gaVvgD7Dnluvo1CJMERVHa.eoAkW7+czymS6H52gGF7cwOBzw8eBeV4FhCHhupqmMWIsfKaDToKwI3UHwP+M0aT6OWcuVub+ZGUoZi2J+ALTq6iO3vCJ2Bs2Q0ZVsBp1AuLalyMOSqxf9NDKvgvcaZW.YkxGhL36iQln+4BYEtJjsesZsPMqeT4lGDY3UHaH7fuOFdh9mK383qBdGUCLbQFX4Kp3QKp3QKtvAVs5UeQ1nCrsU.11J.a6kBvxEcWoghqzPwUZLu.KaT.1gu34Q2lo7PPdkGBxmegaypWsR4ihtMSIuQAk7FExsvAVqCe9AstLfEYpeturhH.+8hI+Il7moH+4t2zj+DyzyMOSOOLLEPLWOwb8Dy0SLWOeLv0yuMLsVLaOwr8Dy1SLaOKe1dxeI2ZimEZR9dZTq1w2zW1cyqFcxq6NGfagQqRD.mjXk4.bKLpUhH3xMGfawQuRgnANNAKyA7VXD4EAamjJu4.bKLZVh.3jDsDcvs3Xnc6qFbpbzdoPLxrAE7e6xccvPN0X5fhoCJlNnO4nC5KTxADyGTLePw7AEyGzGC7A8kJ40hIDJlPnXBghIDZ4SHTwK4JbhzPSxHztGUsZkaZJgJDA7I4DZdf2BiTnn.OIqPyC7VXzBEU3kadf2hiXnRQDdblglG.tvnFJJ1OI2PyC7VXjCEE3IYGZNf2hidnmDA3oxOzkCx480Eh+qLmX9gh4GJlenOYecg3o.hoGJldnX5ghoG5inWWHdZsX1ghYGJlcnX1g9v85BwyBMI4P6U6352VdcgTPmjZn4.bK8WWHEvIIFZN.2R+0EZJvkaN.2x+0EZJvwIEZNf2R+0ERAdRJglCvszecgT.mjPnnCtk+qKjB3ToC5Rg3MQN5ah0nmokG8kVxekZI9kTpnGvr4JrWqoeLuMJql3WVXbqqQFCsdDaxKsr39fuENCa1iI20XLadMFS9qwXJbMFSwqwXJcMFyVu2wvoio7.FsmrLTnC3.FwQ2IpN9n6U09e5yvK9B
I hope it will be helpfull to some of you!