@ustk a little oversight that was driving me crazy, thanks
Posts
-
RE: I'm looking for help with a paintroutine
-
I'm looking for help with a paintroutine
I'm trying to create a correlation meter in a panel. I can correctly display the positive side, but not the negative side.
HiseSnippet 3019.3oc0Z80babaD+njO6XFq15LoM8QLZ5zbTVjljRx1wNpVxTRwZpkkFQYmzoSGMf2giGFc2gK2AJZ5L9s9P+Jj25q807QHu025GgzmZeLeCZ2E39KEirrpiaK8XSBfcw9C6tX2E.l8BIKzg4bbRHOJhIMLpM+AwBaVRhH1nV8ilDwLpcCy9SBkd87n7Pic2xn16YdPLKAH+QShnIILGiZ0l+yvQqc8qXn978O7QTeZnMqnKCimK31rmvC3xhdOXieK22eGpC6HdPIpWcicsEg8D9hQ.Rl2rsQD09D5P1SoHYyYZ7XZhmQskL+j0VqC0w8ttcVoymLvw0lsxcaemUuaW5Z2y08ts6r5JN20cU.jWcaGtTD2WRkrDXRejvYReOw3Ps.dNOgOvmgM5XzGjrtaiddbemb0RBnjLKojlWqj9Py83N779KTV+L0.jBNJqzpM24AoNuAPpVIHcEMjtoYe6XdjrXDDOuu4tgRVrKErMkghlVi49Gll8D.EgxVAzSX6DCMx4v5t2o8xjUWociGrP85291jdh3XlOUxEgj8X.UKTGLaIRxozXRb.Ycx1gC4grVCYxOyWLf5enXjjGNbOZHXLisvIpfinPe0r.7kABfwdhfHQHzvZwLBVD4aADAOKgQjdLB6ETaIY2sHSDiHComp6cnRlGaSAsHIT3vH7PhdohsJK6RKkdJxWGV.JwisrVb5wKAgHGv7ks9mltVwrg7DXndTe+AfSrk6nPakFy5Tp+HViEp+UKTm.ef4ZK1fQCIQw7PDUvnIDoffnT3yzT0S2nkhnJ359jEI2RylFbH4YprV.HosTCBKM02O.kXB3+wzsmhgXVDEEQiGPx+.LDybhoiIQzPl+B0e0xjMSlDZ+Tgj6xsU3.XHU07XQL+kfkj5CqgBWk.kQFmFvUXg54RDBpb.JRsSBKWSYMrPIMrkKDwXSeeq1uXmc5zF+SC0JAUtCiEiBcxV6ncMaEyS1h4BSpikzimTRazf7PxTcQtOo8CJOIigIPQC3O74bGomxwMaTuRi9XFenmrxvAbGffwjaS5lOo.bg3B9.dHVsKqaZjsJSPGeL7mZcp+jMqZcvgLao0uGl8kIvtxNKS79CMpf5AzXEXAouGU50hNHI0kirDhpbh4to9hjeCocJBRU2yBLqtZud24NZk9vXFKj3JfMuhDtjCa7JsZJOGmExJPEPegU2kywZirkAxzqzew7gM4EX7SuHXrWuUgOZLBdrJDFxFRuvHjz7GBeWPj+J72460EgvND19gVMp+U0ud8WUmL8PttybLLPXrv2GCVNigwzlwmGiVgiBFvhWNMtPFgPZhp4dt5EK2isNtbIBEg6Fxk6GwRauiv2Ayof+9rYpLRCrC+5Y6tEriCSdk1GPWDKVxQ3TaK1oP4B5TYW2bKVxIRQjh1zrA.jkpQWHKQGFQxfChttYVHEiWTTSwuaiI4M1fswXznAIyq8qmyvvSssEa0UUVxYxlB4wENi.elpI2wxdRG.z5UxnhYMCgsDSJWVzaPF+1maF+KJDuo4Abos2rw3by.if83GCLlVmzBla65BawJ.3UL24KtrEE09Mtnn5o9JfLQgeizljc9hNypbnZ+IyhsTQXBwX1QhC7oSrRnAQ9rCALBg.7E1mzm+R1Y2GFogviPJrr8ngfOZxkY65UeKUpnQdEXxXNr6v7oiB5CQMsY8RQGtKXNbmptcarM5WzGNrfpw+B9jNXGrcszA6jMXoM4OkIGKhOQYNR+sQsqg59qYp2gBoxEiwc07TGT85gEmnZbMy1sf+nI6.g+jHOQH2FMRZlxv8lAPpeYF3giGbDk6iN48Gk.Amb1OrOPr5LInS1Sg5+.s5NPYih3IGPwXA2zDCuAdlPsH14dnY.sv+.0r5ChjMFNaYmVQqs.vEnhRAmUo1733nNHSr540kNJQZTAB2.fPLqkdjYKQ8XuNIVJXJzSZKXe9bnnutYOeXl20w34naFdltd5EhwTT9SQ+iCnwTUMaIYzqBtWpaTDYsfk2d7vTBKBqrG8ES022+v9RVDtuoRemvFqUIk6Ue1kM8GBUTJ8BLNyzabNxei+9K+iObJ4+m+5u9uNs7+t8Fbv4H+OPc1ogw5hXUGXcpY7u7Pi9iw3sGQighAUd8k6HMYWHSsqOoZyTuCvnT6mXV9jKEKMbrqYpEpQIWoonuhG0uvLVuiuUEZlku0TSSYWraXtZ26sxZ2q6J26NmmmVso7etgYoEXp15CLm9PRS4KUqjszrvVdUylcfHAEFRSSrcgQ7pXrhNoaZ0zr4HoH.BYpR2YTjFL2.UQxFul0xtIOGG0l5msVfI8QBwIATULtKUMMkSS9Q5AeeyOGNBq5dWTqletpMTCa.4yXPzILGemy49W9aWz6eI5Be+K6aKAHbTLMLApzm0o7L2mEvOBJJKoRuSwQ2YxQkd2hIGEVcp0cUgJTUrCnJJQ2GtQVmcK2ITQXkICZWZ7s2XOdoxC+tGtcH5K1mAqbm8SrAECcpn.GLBNJhpZ+NkYrn6tk69wzXGvFZWo3p4qlG+JWr73UqyrD8ynrmq9i00SckKVkXulC.7+90VWovwqmgw9brfusCOk4CaoMzID1hAYi8kY8VcO4dhPQV0JEd.GxfBuFNjUM8xrVPaJkT6SJ6PeHymQSJsO8WswSfpUnw6oxEbozEu42r3LsW+RSMbU4EI+mX2dm5lctmOZ9Kz4idqi2K+YkdGuCEhe9+OV5OxDho2knL2j+6aueWbLr2ExHfZGKN1Ve5ULfw6o5AV2gpZJut4dXaRGiSmtj8.H0yw11UmpyvX2KKiqbYYb0KKiqcYY7NWVFu6kkw685YDqLHs7YbeBbBtC1VUcasZ5JkTaYLXACXNfmt9JSPW67dBYuXG3L2pzHtbbKxb3WZj7A5Cxd6doOOQRT1kKZL2+78LgrshXo0hIRGEcs74CVrwCvmcZ82peTui09Gd31OYyi1c+mR1a6i19PrS7uaRvmtgIHQdPd2Y7HFROpj.ayhFISHzzWaX.SNFuV7lcHzPGxs5fSEOzQ89HgCUOMkdBylsDOdTNa9LWohwX7RIIY2ZTKXVvI5VcHqSbG46OIGOLGhU.TsQCbbR67wcXkoXL2gktdTD1rXhngRdyxzBKIhvUixFu804n3KeXZIVzf5w3.jPr3gjDUY3IMHMIxIQ3QtHvIIFxHcZ2rS61AI04E7erh+0IdI9vZL1ZwoOn9hKSfiFtl5e6f+aW0Oa2Q6QQ5GP88K.fTf212ofuHwgeJGuIJxfIjWxhE0YQIben85jNL.IpWXXmMeV+iHftBbAxuSO7IGvmEhL.zk69wADeQh1tNVLx2g3yOgodcOne8yUppvDOYsF3Ma07iUn6IhwMwjTDX2C5zYC6JccItwrubDKzdBY.XkbH.K7ozo08ibOFoCgaq1jaSr5BesDIf15fcgumVIlpOdDMgaOC28pHrdIBNNH8kaOlrL726Wl4iAqmc8wboG4qTOOxziY4uLItAvre7w50Hrb.rl7kPH.+tE8sDItnUCxsHoViFposjDRejsdwhjjlkWG.mADqm.yzgMxorrXWmX4ixoArFb4s7EiQUuE30joKAcTFikkEFq7LhJAj029MJq9ge62TRhcOiD8uPRLtJiwWHn9pGT+UZC6lHqg5mAaJ2sQIXrojQA21gCEdFi2UJZ18DNm0PeL0WdNFab3yyfiimazs.YdbjXL39zjfxV2ngxCHenaUZnWigGYJgOTqXuEJjkfc6qUnDUyTNEMmAEExMEeH0KkMyWHKUI3ByQtHWJW5uQlszK9DhK5yva2qNMuq0I36gEOwZwbxVT8Lk5mENKF2dPkvU1RiFhzpf0ZP5TRY5s3HC4F8O89Dqy3VrLYldJ3JUOkcsxERJr5clfLJr7rcILs2YBXfbE30+mk67zQZBinRzattspYt+DEOHpG17GHNy8IdCnwPXuHuJ+Gn.zZMUJrF.YZzkVydQT8lYUDvCgb9KmWe.XAkdwhQC8z3urh1gmD4SmTO8wf.HpQ7CpaX7uAIq2q8.
// Horizontal correlation meter drawing pnlMeter.setPaintRoutine(function(g) { g.fillAll(0xFF101010); // background var value = isDefined(this.data.value) ? this.data.value : 0; var w = this.getWidth(); var h = this.getHeight(); var mid = w / 2; // Midline (0 correlation) g.setColour(0xFFFFFFFF); g.fillRect([mid, 0, 1, h]); var barWidth = Math.abs(value) * mid; if (value > 0) { g.setColour(0xFF44CC66); // green for positive correlation g.fillRect([mid, 0, Math.max(2, barWidth), h]); } else if (value < 0) { g.setColour(0xFFCC4444); // red for negative correlation g.fillRect([mid - Math.max(2, barWidth), 0, Math.max(2, barWidth), h]); } });
-
RE: Correlation
@udalilprofile
I tried to do it in FAUST, then the value in the UI must be made with a global_cable and draw its value in a panel.import("stdfaust.lib"); //============================================================================== // CORRELATION METER // // A stereo phase correlation meter that outputs a value between -1 and +1 // indicating the phase relationship between left and right channels. // // +1 = fully correlated (mono) // 0 = fully decorrelated (wide stereo) // -1 = fully anti-correlated (out of phase) //============================================================================== // Integration time constant (in seconds) - typical range 10-100ms integration_time = hslider("Integration Time", 0.05, 0.01, 0.2, 0.001); // Small constant to prevent division by zero epsilon = 1e-10; // FAUST has a function for this but I'm lost and would like to close the implementation -.-' // Low-pass filter cutoff frequency based on integration time lpf_freq = 1.0 / (2.0 * ma.PI * integration_time); // Basic correlation meter implementation correlation_meter = _ , _ : correlation_calc with { correlation_calc(l, r) = lr_filtered / (sqrt(l2_filtered * r2_filtered) + epsilon) with { // Cross-correlation term (L * R) lr_filtered = (l * r) : fi.lowpass(1, lpf_freq); // Auto-correlation terms (L² and R²) l2_filtered = (l * l) : fi.lowpass(1, lpf_freq); r2_filtered = (r * r) : fi.lowpass(1, lpf_freq); }; }; // Alternative implementation using sum/difference method correlation_meter_alt = _ , _ : correlation_calc_alt with { correlation_calc_alt(l, r) = (sum_power - diff_power) / (sum_power + diff_power + epsilon) with { sum_sig = (l + r) * 0.5; diff_sig = (l - r) * 0.5; sum_power = (sum_sig * sum_sig) : fi.lowpass(1, lpf_freq); diff_power = (diff_sig * diff_sig) : fi.lowpass(1, lpf_freq); }; }; // Algorithm selector algorithm = nentry("Algorithm", 0, 0, 1, 1); // Main correlation calculation with algorithm selection correlation_calc = _ , _ <: (correlation_meter, correlation_meter_alt) : select2(algorithm); // Correlation meter with UI elements - following the vumeter pattern cmeter(l, r) = attach(l, correlation_calc(l, r) : hbargraph("Correlation", -1, 1)), r; // Process function - stereo input, stereo passthrough with correlation display process = cmeter;
-
Two different correlation calculation:
- Direct method using L*R / sqrt(L² * R²)
- Sum/difference method using (S² - D²) / (S² + D²)
-
Adjustable parameters:
- Integration time (10ms to 200ms)
- Algorithm selection
-
Real-time display:
- Horizontal bargraph showing correlation value
As for the implementation in HISE (UI) you need to connect the hbargraph in a
global_cable
scriptnode and draw the "bar" in a panel - this is more complicated for meSince I'm still a newbie, it would be a good idea to properly test the implementation before putting it "into production"
-
-
RE: Modulating in Scriptnode with an Oscillator - what am I doing wrong?
Oh, rightly so, the frequency was too high. It works now—thanks.
-
Modulating in Scriptnode with an Oscillator - what am I doing wrong?
These are the nodes I'm using to create a modulation signal, but it's not happening. What am I doing wrong?
-
RE: Free Reverse Delay built in RNBO
@JulesV said in Free Reverse Delay built in RNBO:
Thanks for the update, it sounds better. I think you made the transitions smoother, right?
Yes, transitions are smoother now because of three changes:
1- Smoothed delay time
delay_time = si.smooth(ba.tau2pole(0.05), delay_time_raw);
2 - Hann window on reverse buffer
hann_window = 0.5*(1 - cos(2*ma.PI*window_pos)); reversed = rwtable(...) * hann_window;
3 - Gentle (?) low-pass filter:
... : fi.lowpass(2, current_sr*0.45);
this is to try to: avoid clicks, reduce aliasing
-
RE: Free Reverse Delay built in RNBO
import("stdfaust.lib"); MAX_DELAY = 192000; // Phase-shifted phasor for reverse reading // dtime: delay time in samples // phase: phase offset for reading position phasor_phase(dtime, phase) = ((os.lf_rawsaw(dtime) + phase) % dtime) : int; phasor(dtime, phase) = phasor_phase(dtime*2, phase) <: <=(dtime), (*(-1) + dtime*2), _ : select2; // Single channel reverse delay processing reverse_delay = _ <: direct, delayed_and_reversed :> _ with { // Get current sample rate for scaling controls current_sr = ma.SR; // User controls in milliseconds delay_ms = hslider("Delay Time (ms)[style:knob]", 500, 20, 1000, 1); delay_time_raw = min(MAX_DELAY-1, delay_ms * current_sr / 1000); delay_time = si.smooth(ba.tau2pole(0.05), delay_time_raw); dry_wet = hslider("Dry/Wet[style:knob]", 0.5, 0, 1, 0.01); // Direct path with gain direct = *(1-dry_wet); // Delay into reverse buffer implementation delayed = de.delay(MAX_DELAY, delay_time); // Reverse buffer with windowing to reduce clicks // Use a single buffer with smoothed reading write_idx = phasor(delay_time, 0) : int; read_idx = phasor(delay_time, delay_time/2) : int; // Apply Hann window to reduce discontinuities window_pos = (phasor(delay_time, delay_time/2) / delay_time); hann_window = 0.5 * (1.0 - cos(2.0 * ma.PI * window_pos)); reversed = _ <: rwtable(MAX_DELAY, 0.0, write_idx, _, read_idx) * hann_window; // Process delayed signal through reverse buffer with filtering and gain // Add gentle low-pass filter to reduce aliasing artifacts delayed_and_reversed = delayed : reversed : fi.lowpass(2, current_sr * 0.45) : *(dry_wet); }; // Main stereo processing - apply reverse_delay to each channel independently process = reverse_delay, reverse_delay;
I tried a few additions because the previous version worked decently with mostly percussive sounds, but with instruments like vocals or pads, it tended to create too many clicks/pops and glitchy audio.
Test this new version (milliseconds > Delay time) included.
-
RE: Parameter restore in Pluginval (compressor using scriptnode)
@ustk said in Parameter restore in Pluginval (compressor using scriptnode):
When you turn the attack directly in the HC FX, it goes from 0 to 60,
ok thanks, that's definitely the problem but I don't see it that way, I see correct ranges - very strange indeed.
-
RE: Parameter restore in Pluginval (compressor using scriptnode)
@ustk said in Parameter restore in Pluginval (compressor using scriptnode):
Why having the Attack using the callback to set the parameter and all other knobs connected through the property editor?
Initially they were all connected to HardcodedFX via the Property editor, I moved the Attack callback (knob1) to scripting for testing purposes; the error occurs in both cases.
@ustk said in Parameter restore in Pluginval (compressor using scriptnode):
@Mighty23 It might not be this, but the first thing I notice is that none of your parameters have the same range as their targets in the hardcoded FX... Start fixing this
I don't understand this one. It seems to me that the Min, Max, and stepSize values are the same for the knobs and the HardcodedFX parameters... that's definitely it, but I don't get it.
-
Parameter restore in Pluginval (compressor using scriptnode)
Hi everyone,
I’m building a compressor plugin using scriptnode in HISE, inspired by the Distressor. When I run it through Pluginval, it fails the Plugin state restoration test.
The problem is that when pluginval saves the plugin state and then restores it, the Attack parameter value isn't being correctly restored.!!! Test 1 failed: Attack not restored on setStateInformation -- Expected value within 0.1 of: 0.728435, Actual value: 0.131516
I've investigated, but I can't figure out the error. I'm sure it's a problem with the Attack parameter and some inconsistency I can't find.
HiseSnippet 5668.3oc27rzbabjdCjz30jxNVdW4c2ZqbXBK6p.snfvKRBZEai2jPBDDDC3SWNZGLSCfgXdwYF.BHGU1UpbJWhOjK6s8uvdL2zOfbX+IrmxYeKmRo7087pG7f.fhwQaXUhTS28W2eu5uWcOScScQjkktISjUaNx.wD4CX4GoY2sPWAYMlJEYh7gr1cksrMcFV9QFBVVHIlHQt6t3gDYk6wP94m957BJBZhnflXXNVWVDUUVU1Nn05YetrhRYAITSYUpQmNaEQcsB5J58Az4trwYLDD6IzAUS.Or6vxrmfUWlHeN6NatYBAo1a2NQpD6zRpsHJ01w2J81IE1LS61aGOQ5TRa2NMfjuWIIYacSdaAajESj6kWWZDeW8qzbVfiksjaofvOjfgGVYmlKqqHgIQbqLE5JqHU2iOYwvDgsd.W6tNbsGxturjre6AbuGP5fK.BZFXj6DF8taHzKAM5EmB8lBJEgBktmCJ8wr7hlxF1A8fwm6yVQyFY1V.jSznhyXYty+8CYKnCiPyNlpPOTYS3AeHhtU73avkZm3q+zU4Q11xZcrhYgrOWWWsJZ.RIZhX39Jo0QVCESQWPpL.eNqnq8c0abvyJUn4KJeP0hkZ7Jb6VOoul7isDzrh0EILXziEELrhoa2dsMV6HMYbG4pVsPt57qELovxsqhdKAE7LDcJia0m7DtcyUoFWiRR8Esk00VETqrr4FHXxYpx8kbtyTGuYpgdeLorufFnrYFEli..v53UQssAvLUwfTP.jHQWyq80lXzMj6zcpCuQEnCBFF.fglxtMpBi1ioiAQW0PWCgoNmtCuFj1Zb8fzXrkQo00tLNcGdYHs035AwYYZ2Wivl4L06qIkH5v0W86VkC9wDY22TiaeA6twH8EcH2mykH95bOA98SW8UXQ0QFRfxOgyw0.4Jw3NVPoOxZUOtbLSTGvFDxrffhRKvpPT+EM5.7PWmyYIcXXXkDxL314So6yDY.ypcT2VI+BSvcLK1Byhv5vbOlycZ+btsh+TmA4vkvycz0rQCsWaCt0d7ZbOxitISv5vyqwIkeM2oGnPfAZoqfhYXhW10nznv.6gguZCtbVizDqoaK2VVT.SbXtquJ0BwCVwiRZLKJYEGI20SFMnIi.lWiqgw1flwNKhA3F0wigyYKGhqrKIDnDg2eiIYOUAx3cGdTCAMjhurF+.FiBMj.lRGuAh+oSr1fSmbJJQiOrb43kyjKU40eJV7jGXkcHzN0fsvJ6XGQNCOcpxIx6L7cMQHswUW2GAxkU8gGKDHLHPHPz9EZYEE6EEuIxg+st6rgrcz043EZiTFEZJTwy5dHW6Idv6zPTr.krFOMXcgIrnovUNnCWaScUt7511ver04ZpaLF2nARzN52.VzmXpeL8ZGz+IxR1cit9Fz89stJAuZc2Mz4LLTFMlXFVdf0CMBRLqUudQLYWJLYyeTMbUoJbv94OH+AmVhmx9EXqpkdd8gIloIL+QrlirfW.LWI3HO0kPSYtRN24JoybUD3Oi65YOASIQXdk1W.uKt7oXLiDqEdtJ0tMVZr1jihrETVSAyG8UtwwI4thXDxTWIpnG1rg6NdvJ7JSNcXU6b11lxs5aihNk9cvccS2og6wIvRV.GlKk6rqgfM91nlDQudxIwsN4.1L0MwqBVnNNQMWMiqmlRPQSXUeaaneJY9y0zaMaEPRuyP7R561lW3feaD3yYVL.WLa5DOMpgQdLkWMW4ufvT3ZoO7K7B8PTs0KTDZSw.DMQf29p5hBJU006kSSpLBBaDG4gyX88x44YH5ZRfIMOFN3rxiIEsyFb5st.3ENNww7aAXof1hI.KCk68PV44DAC6lbQsfrJ3Dr3.lkMvxa4Of0cgYbu.kKWJ8Vautaz.tlPw.fjvVREz5.Q5IrA2lqGdoOnuMQ55ttRBl8.qyVcgDf3ZCsHhYkfLZ8UuNeOtchYFScQ2fKgmuZXMaBN18VvtBZRJdKOwofCIaM4Bh4c3XBbdzeQgAL0nsg0LSHLKmhbGMjDd08mqM39FguI92BATj.b0H7MI9V7uS9sfSljjFR8sPKqo3DLMmOITzT2PBREhSvzT+Jtn8sfXz4vLcNr30gdV2O7stfnGOWDS4tNM0aCttvTtqhIdRPRDltyjZI+RzBw1wKaSSYG1sG83REcgvYSA+0i7fdHMsQn+.zHITf5Uva7VmXO00HBdomXKg69g0ep+3RNmwg2GVovA03CmrPcHycjMN05qKmgfQENMfV1ZNcMSf8GwX4bXMnyTWZGS.7Guaz01J9NwzZt0yyTHwn7u7xhwNs7y15n7aO3ppwjprmLeU9Boz1Ke7bMSOrvEGe51Mab9Qwz2qh0iNnE+lGTX6g6d.ZP5b0EicQ4Xmeb5sunVgSz61QQ94mWoZOypkO+j5mwuYomkV6.4NiTR8xcrsskpH2oiV6sO94c50d3wm13k1GLnPt7wFxeN+l8FVo19Za2qdE9h4Z9bit4K7L97sd1yezKs6e4kEx+7XBBxaFue45wx2quYupGVLSN9ZwxKWWOV9Lmr6gcJUsd2c2rRMqxc103zFE2s1os2smUNzg6d4g0D3uDcVJCypZ6wexoGVtPgNWToapL6cTb9DWlqxo8Ktsjoow.ssFbR+c0ub+gmwedwbhXiiw1LexCRkQp24sN5rizA0YcYwsyzrhP8cs6dIhu04CNsZMzKsM0ZpiFdxNR1CO57yNslw95F16bTtmWtWe08MzeV0iN3J8L6EaO6jYN5jZHCDRXT83GsovVaJbhFp546T6jmkbXiVWsy9RMyHp0PcyMS1+py1obxz5RY5Icw1hmu8VaUU7xz7p7pcSK2n+NUsyHr8oMyX0TcTZ0Z0NJi09CKodfzYZaKcw4F6um4t6egN7uKa0L9QGUSNYgxMKtiwvmUX2bkhE6BPBjBDHmleGsNwPhloZNT8py1rFJ9UCSelQSXgDLdYI09Gq2by1k0qkLyYcGURAkH0wI5aWEs4vLVUktHiZCC9CQacgb59CqD25jM60CvVqV6bYyFWs8UWdBRnfLudgz781AF7i14v96zre5dGteBc9KONgY98ZeVLYQkbmmBYd9wGdXsAGJpTbqxBc5ra6RsGDKYtNurm5nD10OQJ1yKeZtNkTNu3o00xKVp8IGcRUoBVGMTemp4Kl9kubPiSZjLW8Aw0yeQilOJ1Y8RKumcF0l1GN3R015wNI0yezkmVTXSiAcsqYdQesQMRE+7lwH6vBsYclo+.Y+r52sxpqPaWy4OVwtpqrM18+JNFswaECsYMHfeh0l7X2MVQiutiKlWMVoEDZ2zD7IX.Fk0rWHW8gAYFd7ap2Ar0lm3oZpd8CSaXuMs5342B68ckY3g1K9fM3RSJVEld7sgMUSrgwWu7XIieZlZmuY1YDymOVbsw8I21Meetu7KAABzxJ9SrSV8CbJaHv0rMww4ApAuB92XfF+5AssfhEQIwE3YFqHk8+oGu33j05OkhlqoaiNPKJgxf7G4Fuq1smZetSkBtbcSoabgkMuN.ip0WsExjluhGHSj6EthrrythrzELVzgyPMPcsJZx1GXfzlUYjYbYmLLQdfKVAC0lT61+F2Z2xqHKgLYjkXh7KXIwcyPP3fhlykkYgAN4X.+CsWBfSM9J+vk.3ziCb7WOSfc1xS.dEVmGlfp+oudY.eb5lwk4uffmZIV8In7MGG3ZKAaaqk.wm.3sCA7uuc6+yk.sy71rx6DB3+3e3O7uuPq766ngG+sB5ITU929pIf9AtP6EXMA96y5GO9BHumyTLgF26mk4nJEErEvmUi6FevXfAxzVFamIRQz.YQjyI2rBaQjUOacClHelugVfBcV5OzcoqnJzA4R5j+eBlgzxqQAO7UYuBW4N+Fd8+T1tjLjBZwLK3rz8j1VichSqwDmr7laxEM05wLz5vnnK1ibvQ2ggBCe3bsdQggEyNhdWQXLjox3XHzhEXdEmZIleGIxcwORpcZcci9F30HWK8AHFvzNuMr9VAT2KvTmpEtUG1Vje2DzXO.AIzlstthsLLg+8r6A4HdYeYwdJivYQZfODTreDjVGXVr3DZiKzpcWn8t5JRbxVbhl5jyTSUWBVl2ikbFmpBTD9YYgncL3gTOo0ws52tsLLJVVNUKFUYIHm855VxX+VzLAU+ybk.lDpsPeEmhJGLrOMqrUck9cj0pKfEc.VhkUFgaxQZ+9rNkEhgVR9qmqqj.B5G9l24kjkmojTR1xSXdUWjFmkbGMAENIXuoEWKjB.lu3c1xzr+qiKSIlMVHYZ1umRlRjcSWllNqgWzCUjvm37jE3iwvSzVg3+pARAIXAFIVXkg.Xn0F9UyM1.J0as240FxisS6qAHnBYHXiqiCfWH2CtwBBhWU2DwA43QF3.DsZCiZ3a9Pn82eUVJ49WjfYZ61WRQ4ufsA9fIVBAoGDzhwOYtQoEPE+dq24EiEYI24.79VyPRGNKaASaKPjBaeCjndivQv5rQ2cKM1iqnLrcOrfs1qCIXYXligao7yzvcxWujh76y1z2tyhK1oghVz+gKPL1ATJmIkvOKZBY83wS.tzvU5Ee4gpMRw87yXFWlNYXEN0g9EZXXBKa+R1bRRVbCj0rAX8Ec5lbWIXpZ2kSPC71pgqwfEHZIGaGmkBFMUFwrzrZBVSP5kgUG.0xwpocdB7xaFq9CYy0GRT00Z8375+tYwqE.fByp+B1xD1Bm6bwI02DWocE89Rb3KHD143F.ykrWxsSvUJxdY4yNnrmCloxTCOjoJLVNdMsqoW24FxquOadSY6oqUOSNcK.jvb5ulMuttksm5ZqQboh+YbWIiUmCbyfWJYqt3iEBesQ3D6BTuHl3WR18pDrlfzSkWS0+bYz+54lla.a9Ge46rtNHRy6vFHRxwtGfKOFqliOZI71.bPgdGeOmnroXePzaqCaOj5KhvtTdLBL9XzW0.1I35.49rkMQW1GoINJrKjzYCEm32Ou3D26kyxEBmR1kNpA9B6UuLyLLewW3EkIj77E++p4Vnh.Z7u78uyG4PVuMh3P93Z6J4fDwAWJTBeCAXmI9vBkPOFu4Dr6gHWSiv4yEcp4yMq.A9s9QGdOVHdgkTj9Ar6UtjpQWAKYqkvW0pr9.sL4qu8LCHT6cQw5WxlWA1ZZwAwJ7XIm68ABGlfQeaGyrdwQfjdRP+58sgAvL8rtB1bdW1O6ZRKeo2ZRP0kJfdGHt9RI3UsJeQ7GO2B8MjtdvuqKhKwVQsky0LGxN29J7cwyfHNFfdhFpifMISsQhJHb7+NmAkEGjmfFG3GUUWSVzJLO7uLysp+4kMMsGvVTF5Nm0HUnMyQKUzjAPQK+9kysVqypPLuSJ+JDjehadaRXNFmnhrA1cJHTAdSPpaeImkNoFaV9WNOlwp.V3TzxNKg4OsrByO1QXFbq.WBo4GvRA1hIN8q98rJQp16l4fWgXcsC99v1B0V2WhFHvv6CcJetEmj+swCLKaiz.oznvaGe3Lkfu+309bo8cRDnEMASDLyvFqSmyMdn2Kbo3I2qUWony8WcVgC+5ViKE+zwkh+fP1kYoZPsTO3UuUK0mL+CWYVg4sPJm9ZMoXKKiqxpimWNERYbv9lAEBGUFmBqSWwskof1G33Q+ZqsS5v01Ic1adscXX9YZa2Rqv6vHHumVzB5UBqSUUnkuNE4+mXVEn.7vDVN+CGNgbNcVjjrs.4TxibWmTt7Oig1fg.GozCXCeYBWJDLTETN6V.ACp68sDFFptCl2BXHck8tkvQ5589ZkaAbzqny2R3GcQEx982B3GUZP2RnHchu+wQWGJxzbAEy7E3bSK+VBG2dVaV3LuYrwPQ2bKgjYlkImaJR54K+VB+niyNK5V.+nC3+sEGWw0rc7YYz4lyDcR571BASLqcz2TDz2W+Bhg2218000ACKqnKfe0OaJq3bUJ9HV5ll8MpfgYd2nBPI18ddzzMpplNg+3DAm2cUDF+6kISl2fgP1FoFz5adyaREt0j3l8V+fqou6f+ObujN9z5pK3scYHsMp.Z7G66T5R1H2aBxk4eXJjqe3c3Lm7Cy2o9x.M.A872xVnZob0V8jbM1e0b6taiR77UNtzp6kqQwwn9u9e4idy3DzJK3cugJH0KlJAc2Eifbw5Gx1Xe9UqWJ2yWE+llUoVohqFjADjyueACm3rfVcdaHBEHCs+iexdb+GxSIh5I2P7grM2qBeSLm8fFjcEgpNzOjM6auAQmWD1Y44ahsxPZrStU1KrqGGOVbbr0SfoLQCQcKCpQmRD2+3aMpQiFSCMYl8czJHasOhMz81lITpGTmJU+4igEyRa7.14Oc6ALyX6yTNrr6y5eGce6PLKgAnJdyDvtlJh5sy42whuurOYOHKS2aSMWdS8qrfHetFoc.K89Arz2B6z+Q6rgs7.s8loa2kz7.ua.LaD7i3ay23GG4B5cI40f0NW0bZGWTDaH+JeDqSqdrNZVNLQ+WS5X4O8le7MWiiExsT7N+y2gE+xSuFVDwCRU2Kh+WPtR4a30SogFf4CvzmUNKXp5qhGA4li6ODx2RCyoCN9FdaMwbBa2bFdntBZ9f1sw217u.+BW4ATNIoouDMPZfsto2WQHkO6YzWYgA5l.Gh7FQQ0mKlUAnZITdcSf1BQx05q5vHvHeRRSNOSd2oIoGAc7MjWqr3wRM1OarjsCM+sj0nJ3vMmIRvm23tBaLs+3CkCl0P+p5BRRfV4hBGORvTradASmWMDLXNcrutoK+b7dBzgFuGON8D8t5qVjMu3WLwo4JaxOHJOfE7O2WQvN72mEb0Qb6.mOC8GEkJ9knjpLx2ZezVVTT7iYqKaK1c533clBNBVk9eCbz8ScyGx57tpGff2is7o+L7cs4gNq+mDT2KNmBewAKOFOlZEwnwqZH6qzM6gGYyfuoQds5VhJpWsBuZBQc.YNE3fpZ0AUkg5kaf9RrPIV7uuETpSdut8zmgwXmhD0LPUAapxTN9AUDpK5W+c5oh5fjoZM3NMQ+gchjDH0KR.UcEotn8N21.pi9OxcWX8fDWuZn+mnGaSR8XAyr7fiKQDnEpg+nRf8GeGb7NNOG2y+LOf4jGfvOdiamIvOGwsyDdcRqp+abT0tO6IfYKx2nAhB1mPdtstoJ2tHMjIdeZhq4Sh0edQ+jXYrveRrNPzFPAmWGMcKHCUpYlGoJ2DhWvJTqiAQxoBQnVAUx9ZgmZmlBMJLqnLvJRPqo30XR5isABYKzjAOGZl1WNTfPkzvQayi.JW5.KQfwHDZ+wO8006CtaINTSPeNtAMmjtYrQAPFJFx.4cutOLXItgeXvdu249vf8WAtACYieEObjWV0PAURa.RQGZAii+RHSaxUzvq0va81WWS2nK9.9oEzM.Knxc5fBo+LUBZby+ObBy+LeZ1pxZPrOiaebI3EIV5uiaSUd8acOPENr8Bt+5M7k69+qCeYw28Al.e2VJ9aXASwI4HhRt+uQV9yQL.+brFpBhl5uv6JQ.bn2mzBP2ZtuCN6ielKwjuClpfKiWHJFdpl.vj2T.ScSAL8MEvMuo.t0MEvsuo.lY9.h8niC8W08h+vre8RjxoDIhSPMjsIL+O.Oth7oC
-
RE: Knob Web Studio
@tsempire I fell asleep thinking about this last night, and now it exists. Thank you.
-
RE: Faust Gate
@resonant said in Faust Gate:
Is there a possibility to add modulation to this like below?
From FAUST documentation: https://faustdoc.grame.fr/manual/syntax/index.html#faust-syntax
"Thevbargraph
primitive implements a vertical bargraph (typically a meter displaying the level of a signal)."I'm not absolutely sure, I would try with a FAUST
vbargraph
primitive to "visualize the effect" and then connect it to a scriptnode node; like in:
https://forum.hise.audio/topic/10619/gain-reduction-meter-on-a-faust-compressor?_=1754048833174 -
RE: Free Reverse Delay built in RNBO
@JulesV
the delay value (0-1 range) refers to delay time as a fraction of one second.-
delay_base
ranges from 0.02 to 1.0 -
This gets multiplied by current_sr (sample rate), so:
at 44.1kHz: 0.5 = 22.050 samples = 500ms, 1.0 = 44.100 samples = 1 second
To do this in milliseconds, I can modify the implementation (I just need to remember). If I don't remember or am unmotivated to do it, feel free to message me and send a reminder :).
To switch from ms to tempo sync, there's a node for this:
https://docs.hise.dev/scriptnode/list/control/tempo_sync.html -
-
RE: Faust Gate
@resonant I haven't tried your script yet, but if you want, I'll leave you my gate in Faust in the meantime. It's still under development, but maybe it could help you put a temporary "patch" on it.
//----------------------------------------------- // High-Gain Guitar Noise Gate (Zuul-inspired) // Designed for metal and djent applications //----------------------------------------------- declare name "Zuul-like Gate"; declare version "0.1"; declare description "High-gain guitar noise gate with sidechain input"; import("stdfaust.lib"); // UI section with all requested parameters //----------------------------------------------- threshold_db = hslider("threshold[unit:dB]", -40, -80, 0, 0.1) : si.smoo; attack_ms = hslider("attack[unit:ms]", 0.1, 0.01, 10, 0.01) : si.smoo; hold_ms = hslider("hold[unit:ms]", 50, 0, 500, 1) : si.smoo; release_ms = hslider("release[unit:ms]", 100, 10, 1000, 1) : si.smoo; hysteresis_db = hslider("hysteresis[unit:dB][tooltip:Amount below threshold before gate closes]", 6, 0, 12, 0.1) : si.smoo; key_switch = checkbox("key_input [tooltip:Use right channel as sidechain when ON]") : si.smoo; // Simple hysteresis implementation hysteresis(lower, upper, x) = y letrec { 'y = (x > upper) | (y & (x > lower)); }; // Process section - main function implementation //----------------------------------------------- process(audio_left, audio_right) = audio_left * gate_env, audio_right * gate_env with { // Convert time parameters to seconds attack = attack_ms * 0.001; release = release_ms * 0.001; hold_time = hold_ms * 0.001; // Threshold conversion from dB to linear scale threshold = ba.db2linear(threshold_db); lower_threshold = ba.db2linear(threshold_db - hysteresis_db); // Select between main input (audio_left) and sidechain input (audio_right) // When key_switch is off, use audio_left for detection // When key_switch is on, use audio_right as sidechain input detection_input = select2(key_switch, audio_left, audio_right); // Envelope detection for detection input env = abs(detection_input) : si.smooth(ba.tau2pole(0.001)); // Gate triggering with hysteresis gate = hysteresis(lower_threshold, threshold, env); // Hold circuit using peakholder hold_samples = int(hold_time * ma.SR); gate_with_hold = gate : ba.peakholder(hold_samples); // Create envelope for smooth transitions gate_env = gate_with_hold : en.asr(attack, 1.0, release); };
-
RE: Non-compliant values between sliderpack (range -/+ 12) and cable_pack node
HiseSnippet 4152.3oc0Z0DbiibcFTiflgXl01q85qoZqpRUfTPT.j5mQTd1g52YkizrLC0pZRs0Xtf.MDgEH.L.jD4rd1Ct7Aey45V4P1pxobKW8IuGiu5TU1C4PrujqYOFewNuW23WRpe20aUlyHPz+752qeuu2OMAnCintlTytgt199zHAgR2qcfmAMLzKPnjzQi7oBkdjXmQtQ82tutsqv96HT5AhsCngvz2ZjudXH0TnTo68LbzRkmUf84Ke5V5N5tFzrtDDN1y1fdf8.6nrda25uy1wYOcS5Q1CxM6kasugm61dNdmARx8DUE70MNU+D5y0woMinv6oG1WnTUw0WYEMcSq0rzZnsdOSKCZi0TWc40pquxisrVSUa4FlqYsLHjysqocjWPmH8HZnPoY2xybTm9dW3xYvw1g18bnXCMgN.m4cummiItEwdE1tusiYpJJDTXylSgcOtB6cDOz1zNs+LE22gM.Iih7JvRyTT7tWAwSKu3olS7lhHUJmHMKWjdawNFA19QYifxyCE22MhFXoC1o7hBetBy72Oq31dvLbipMP+T5dAPiTJjWUUUg.WprgjDXqBiHmqGP5z9fM2i7DRBgFATX+bfmgtyAddmtoq4dTpiLPTNZbrMoAsACrVNJOgFss2.eOWng774ly7HGY7oV.8D6PPf16LWiHaOW44MCzu3.aWpd.mh4UHVICdhBwq2OohzGKIUF4qNvMniZ5fLtAuqyi65bcmynO2KXfti8qol.CKeRsPThPDor5v0ZnVeyFa1.jEXDjqumWf8qAYG1n.+k0+vFuhrDotBQ+CUeEds9qPAuL7eaKh74j28IDsJRk+Xoxk0+PsWAbl80BjDRIUIxZ0TIKRNGYSYV+OIa3EYD.i7lxkkJScBoisZ74cYjlwj5.SpxYxah2nOKP2zFz76Atmxen5vc2lueUHZfYG++KWaucWWswNqy6RSU8UbkgEPxKnFQx5X6wTbuLYgxTbuv6LLJDRht6INT4DaBiOZ3DWZo3ohKa1v3XRuAtjCcfLaB3FCsTDndjN3Mc43M9vLnF+VbcY201y+L+T.WJ3ZnBYDBsH3mDnj7HPSqVgYHQk9hZ0q.JcYMd2KfcrAiBNcAznyBbIxGpG0uV.pWjGVEzr3Tmm72NO6qeFA+N2TNmObXz7w5iDgh349buH566JiRVYo2HQFeHKqoNFpTB7bbnAScXLXcvUQnr6YC5QCTHLGozIBAjJFkS7xixkOHrA2Fkahdt66ZG899T2KKzrPrgEypEKU.6iXwC+twwCyvMB1Pnu2RLGPRfI54SfYpGoKTRUrQ8Zvm1a9SO6Gs61Gril4tmeb+c2cgg58Or1Nu9nZ+n1a2430qEd5wd6rCWPXb+dbt+ch4N.254sk2PFukDMFz6HJ..Gmwe4SEFW9eq3UfAHYj+.QNL8xj5OPbU0ZE+b966usu85qsM9OV6id1QKrdtwe1QOq8B3sqyGGtXsPtwED9f82AWdHqQr1Fr.9zfHaz3VZG54PJedJnxh6PCOMxyG1Do9YPNnagAYX95CFk0vs0f7EeH+4CzyMU4VWXaFA0JHVRcFAg9T6S5Ggs94vf9I.l8MYU5vDBxduTSvjZoelSzwb0IBBCYhxlC.etbUvPZIja6HUz9bfdOpSr8gc+ktIZ8SZQAOCl8DRACocNwc.aImSzgZEIDQGFg5o11QF8IG5YdliN5yIjt69Lg76t+FnkEXS5.4uxXY8BR6CuY3wLQl7yxq22oESQKV56AMhEijw9wsRDkjdd2V1QzA.rvTTirkdfj1R02Auf+cDbYYr0x3eXqGisdL9G1Ra0cXWYWvNZvnsQc1EriUYju5xrKGIXG114rSrcaqG.ULBkHvCS3WrSd0j2WjuOi77bhr8y5Hut59Wqm2kXY+ng2M.nvjkwAEPxs6EqpDq8NGfHeobX4Ztg1QixGNY7RMm8lUpYVkvSqryap391bD7zk2Ylh7BAW95pzXgIKV+sD20xBppHS.mUbuW9MPk4yw4uTrIG3Ix7BHf7BwyOa.Clg4LKUB1JPGYwFS6Mtz8R+Rwrjx9ATendoi7Z6nORNTefuC8EvVQgzywy3TL.wjYxiwkagyP1nutqKTe4cIg+b2Xkm1Ua6fxDircOAp6IvFi5fJ.njRC51wRGpClAy6yaqhsQ3SG3PtrF+Y3S7fZoJLXPsjAyJYP34znK7BNkY0huGhAv825z2d.T+SR2GSCBQbLD1PsF7OgMcb7t.CcXGivA6Gqu1dNi7664ZafcwmQh3mjWguGfS2djtsC5Rz4rPnJGy22sCLY1QpQH4y8LwHW6oa.J2Qs0w3KusHVmDfioA0LxEeXL4MCVgZZdHvIlDt9IG+lqFAwkmPBN7MZ.SChhY5mAPn.En55dbQaNj2RhC7L4hRAI8cxIooyXZxUtE3pknL9Kli+kECsOoNrDEY+2Rb.V8bxXE7yXrMitqgqyjqdGH7RlJAc1yR8L2g1tGOdgYGpO73wqzqSD0uXFa.hdJ8Bt3mel3169h7EXhkVHmN3QhQXxrtgibMllU.bdqkaFSyJTXItN6PVj8izCfCUEFWcnK0f6LvvtX5t4DAEjelVimBrMMv1yj8yAUTgN6zUnhnWWNk4bh0WC5HSSJJBGhVfqu340mPes4YQd.jfmCRHGeDyyGsw3i1pWBedj3gmgUR3XCqQAxEtY6A9jm1RWVbWWLOf4sXSbEL5AhvoKUKvq2AlB1I9Qa40U0zVUiw5uk3G3hH.J23bc7OuiQN3XrQu.P7g.PLfViMvzvewzbMHuYu4Hu2Rz.Uhc40aW..l3Swp8ygNL47M6XG5C4O25LnbAt+cgdf166ZRGh0Orn1XH26McD0T0z2MaSA2lbFB1Qiyw8YuNLG+2E7.OOeHicPzTBsbaWs4f5Sini6FbInihFlBfjueZzp7SYxX2EWhqCyTPPt4.nGHBmNLLRabrSXea3rZiichqbK4NArNWFVgKQ6BUNYBkVyldoUDarZ1gzSO486UagW97Cd1ZicR73wuhbO2+a3bOECCTHYLjPsNjXcpIiSFaZIiSF6uRSFmWRJf7YGH.aMBgDL238COFG0P2IYgJpDSAdEzgOhG.kMzTzfoDcc4tKHbyLlvUVbaGXg2OK0SRQio6pjo9swpyyssSb9KMg9nz8uBKym8oe5u9oiYY9HKq+mwsLs9Cu9W7zK2x7PQSaKqyXEoOl042+TguFPFWC+KKZFLZoKnEilN6W7ub64Nr6+OukbWRzhRM6g+jZ4WoeLtRWE6gkMZbkeKou3+cb1+6OrW6qf8ORruEwDReCmcSXh0+a.s+ivvGI+VCWo4eJQJk+7IE.4ViI.LX5UEXfmUH+xP9m9ze6SuIErksTSJHOXJBx+5UHHyAmp40SDf5AsD5bA9SxjlyqXPaG7I1BRUg.NeWQyQt5CrMBqkL9zBbmL1W0rv25hwxRvhmquXB13y5WHJj3Uq8+GlBLPP3FAC97S9299s33vi5GPC622yoXw6+6+w+7+8u416Hzx6lgC+nk+G+udJO0wlQQiGFXhZ59KDyKK9BpCUOr.76yWqQisZcGP9stYb+y9O9S+tXWvWf.pB67YDD9+tKweDZMYcAe4Ul8oisIk+aXb00FT3bByk+.q2LIaiagjMwlJegtWdcuE9k.Fq123ey7w2COjOPGjh6dkW2v8wW9zup6irCXOwNYNQ1wqtYNH+pBFCHfy+7kmkHkTXZPmuyWYiwXGU+NUz4VddmNPm8SfdmdLeei7C1NP2Hvqa7ACwM2CX8.tRtwofNDaSlxyEcfsocWCihK0DDV+tRXi6JgKeWIbk6JgqdWIbs6JgO95IDeUohKPBQ8fKV6c44uKk3fBEZHPiSsyevGHVMsGW5v8riO2skM6X23WbI46wORzRwmfolYnexaYfvLewCEsAGqfH44G.Gav.pwoG9tUjzIrLfi138RYOHojdkVZo3GMRHba6NjDPJYQRHPhiskM0jD4Asv25ERVUpD+DeYobc9DRe9SfFDpzdmWgnVaE9KJCdqJ9JwrzRjcnA1mCKe5JERrB7FjiIRT2yoNfWLrvp0zHKjW.pRpWa8MHDXkFn6GRTWTCkTXdK1PJzGNOwzoZcFUjoRnlpjI0OpOPYFM7Ym+y3TtnljQTfSW1Ngw0UljHFYV1CA4ROhXPwWRMhkW.oG+0PzjLvdnDqL775QVGyyzdKpUWgr.dAj0Jafq2N1Af8jDRgZX8boIFPbpnjASFzzufdNMnWpwUBqvt.Kf1yyLNv+avLQq.lnzCjByMaxo8lZVqwrpqkZZSNJWAxR5juSv+WqwJojz2pa7wuxKWYGJiwKU0Ux805qG2hildliGnGIRvoX6BmhM+xDev1oBCQO.cWROJQ2jAzQWCIvP.DBWq.qS2prWEJrkR2pvWMe2tLBiylEXajnZcvGtng2fd1tvQl.mlSb0chQ0oPYKO7wrA1dcWShWngsC6oOCDlJHzLQwnKLeb5PBDncPhe1paH4mx+tY7GkZkTl0MRA3N8mpPXvZb6HCZztIxfb1Dqzra0oxLneFwJfrJiKVkpfdrYWk39qzLSc0r6BH1OmZcf24Y6F3aOoWhBAPckeXS4efBbixO.LDd9Vx5L4q6BnFeQ8JeRKYsJU0AfNtdjNrGJLI.0r1vImvG3H3DA6L3LUoOs2PoAgcif5MXyNTdPHtn1tQvcfyOCv.e24E.O0cbviC1ENYY+tVr0Q1LRq6fPECOpkhYTc7d3Keuvt7UBkbxOrIQtpLNG.RzbglsjKxT9hToRy3Ec7QwkshxD8FykJU.W8JjOgzk.7ATQYhJLKThr5Mln.cbIBxksfINJc4FOCkgpJiTUFpoLRCW7PpSRm.0wsXCJUF0WjOlHUtb43ATFwDHsEMpTcHDv0n5nMvwIuA3zls2aqD8pUOMPedNWsdNeCmnms5Um4u07JrKSi9JMyzNoKD2CkkQKLR2MJL0+BeQANgiIgi7Dfm2ivSKFCk.etX8GHM0UW9wa.8LzR2jBwveBQSs9xavWbLEIE+IBXNJnqu+nEAIIBVdlSOK+MIfBBJ9BFLB0jTRsknC4LXIe7G0nKKFOOAuTTftaHLeJQ9BEB3KCRNDHoBvZoxbkgFrSUv9pZMv1U1bogJZ3qWY1nKbAebvhjaJfoC1AwlOz5YiaGH1lu2ExPVkvkzpydIdKioNsQvxBvkEjunB7kEjQDfbWTggj1fsVrOnMN9UwPNFI.e0DgmMkJCe8R3FY7tpIYA.WbH9ey2kAMzZTa0pXNHEHKR0z7KJZPhE3upxXfGsJKnUYo5JvjWOcxqjM6JMwHHY4Q.LO60U8xX5xqVqwzVmw3ZsUh46xqM84OIekJWo4Kq7IE2vMMMXuHKTH7k7iUgIMgu55OFRpWAzXL4akF0TuVkBLTr3sRN0xx4ktw4xpv9.3RJJSNErqDCxUJyeQekG1b5YXxJ0IKQC.dvJtRxy.4LXXZLzysUOno93ZpYJh5KeSPGvlhqHpuRs52HEwZPhpqUQTFA4vFXzWKpBvyA1uEC7F2BBg1UYDFYVP3+WikqcE
This snippet shows how the modulation is correct if I replace a sliderpack with a table.
-
Non-compliant values between sliderpack (range -/+ 12) and cable_pack node
I connected a sliderpack (range -/+ 12) to a
cable_pack
node, but the values sent by the cable_pack -> [paramiter] don't match the range. What am I doing wrong?HiseSnippet 4086.3ocuZ07caiccGTxP1D1SalLS5xddwq.knn.32jJdD0mSbrrLGQEerGebX.AdPDVf.r.PTjyDOKxprKcaV04OgtsqpW10smS6htH651NK5h1Mc589d.D.jTVzJSirEIeebe2eu62WBQGGPcLnFc8crFNjFHHjY01dt5TeeWOgLRmMYHUHyCD6LwIn+980rbDd7ABYtmXaOpOr88lLTy2mZHjIypeNtZlr2Qf8y2sydZ1ZN5z3oDDdtqkN8XqAVAwy1t0SrrsORyfdl0fD6tbqGq65ruqs6k.RVUTQXnl9EZmSOQC21JhB+bM+9BYVWrQkJpZFl0LUKo1nmgoNsTMkpkqUTqRcSyZJpkKYTyrL.x0NzvJv0qSfV.0WHyc1y0XRm9tW4vYvys7s5YSwApBc.Nym9HWaC7JhyJreeKaiohHePfcmDBrU4BrOU7oVFVSmOVv8iXKPhoHo.LyJog2pofmZR3oj.dK.RYR.o6vgzGK1Q2yZXP7JHdtu3icBndlZfdJIT36UXk2rp39tvNbBJLP6B5QdvfoTHWUQIOAdI21RRftxOfLRyizo8w6dD4QjHB08nv84XWcM6iccuXWGiinTaYfnDzXaYP8ZCJX0DTdNMXe2ACccfAxOLwddHxQFeJ3QO2xG.zQW5nGX45H+PCOsqN1xgp4wo3g4IlQKdddhau2jS5qkjxh7UC3FLQAM.iaymZT3Tizrujdhq2.MaquhZ.LL64E7QDgVjxJiqURo3tk1sDfEXEjq+bWOquBvNbQA9Kq8pRulrEoXdh1qTdM9ZwWi.OK7eKSh7Hxm8HhZNoresT1rZuR80.mYusAIhTx5DY0BJjMIiP1jkM+ihWdSFAvJuMaVorTae5LmFeeWGowLoHvj04L4sgWzO2SyvBj7GAtmxuRY7g6yuu4IpfZG++KpczgMTJcPC9TpJJulKLLARNkpGHqgimQv8hnCJVvcp6kXTHjDMmysoxQ5DFeTwMt0VgaEO13kw0jdKybH17.41b1aLykbaGYJPbcNwMf9LGYzZHqzakHytjo4BWCsN8bssodKbYLJl26iPYmKGzi5kmvrvltQvSMs6u3069mL5jN2YIwFccdriUvyFRcttXVBgdXPnhUBQEv9.VfhebXfhX4ofEDS3iDSHfEXPGfXluG9wPKPSHyqDqVtPcig+hcok+hNGTqzIzmM54UZOtP02z4K2ya2d8Nbjo1jZab5HEypO4kO4Ikd1SdYvmWnr+Kqs6aBlL4Wzd+1UUKn2+jCO3fNe43un8Utab7t6xwKCjqxA4OJDjP3gdt64NlAQIQ8A8NiBALhvWbxHge4iO.gIDbK7tCxigTu.KTTm4.5HHyDORYVwCn9WD3ND31zvOvo+AHdFmLM1j3ANsFjLGo76FnkXqxstxxHnOJVUVQPnO0579A3neKr3vH02iMXIjYffbzKTELnlZWZG7b9UlmQXNX+QgTbrVOpMCw2Sj84qErsdSKJXOpwL4xrJDE7bmAribMQapYfP.cb.JOZaEn2m7TWiKs0PKcgo2huUH4s3uFFYBx9NP3zXVVrURzd+kS8FCYxuIo78fVLApXlOAFDBin09UshfRzLeVKq.5.P8aHpR1SySRcqhGfuf+dF7RYbTY7WbTcbTc7WbjZ0CXuxdAmnDi1REYufSTkQd0xrWNSvxus8kma4zVyCJfAxXwcNGldRdwM2UjeOCbcsCrFFOgv7I1gRJ3h9z0YfUikPmjL4Nl.2w2JXRRGjYK93NKWwGw0FsnBQVV39wbinEi2UV.dw.W+.Urjv7ku8QhGZZB4YhA3cDO5E+YnVMQN+kBM+AdhLOk2dRPbxkChi5fYLxjAtOg0tk42IFm7YnGcHjv7L211ZSj80FLzldJf77jd1t5WftjymwJLjyd3Nj06q43.EXbaRrs1RKqTe+pJnNg.KmyepVfmE5miB.nlBc59gnCkAqf423iUvwn0RGnKGkn7UgKpNUfAKpFsXbpQgSnAW45cASIE9YvSj6d0ou0.HOezzOm54ilsfipRA3eB6Za6dEFXyJzfFTWr4Z6ZOYXeWGKcbJ9Nhf+tCf5fBhtCP6MmoYYid.ctzGxla7LmNvlY8TgVfm3ZfwJNRSGDtSZqgQ69XQrd.vrk5A4QiCGLCdishPIMOnybaBO+n9u3hQ.t7T.P2WnBbZXKLG5JfAIPAJtVkCs0PdKINv0fCkTH8SSfzo6XQ3JwA79Qzh4+CDCvPmc8m3nuHD.FtERriEgfTGwMgg3fXmo4Acv3GVygCUmaHvzaXV70DAo2PgoBQdl81TOKWCVuvBIjuXelwYNV6oVNgI7EQKNgmpMNb7ZhEqASzIfNjmoUTD5ffYFDkE44oqNRPX2KCbG.NmrvsBI3iXR9nNCeTqdM74AhO8RLuksEbFoHWX4tC7MuniNq3gNXIIFe.Wh2CitmHzzhRJd8ovVvIweTK2PQUspJi0+Eh+RGzBfxUN2D+iKuTPHg4XnROkg38ACQOZA1BKx9Kjlavx6NKuk2CD0QgXW7aTIs82cE42KVQY1zwQEMefk+PH0wdWBIF4osRMCL9wPGbiwLkapNig6pK1fZgB5ampIkWSB8.q6mDb+N2jIG+6DAZabHjrxKPH0l+fOo0fpvBny5AbMFFozIWSbpD6XwwoRrge3rVtqHzfgevrFJ98sft.l0PIYAIoFJfExwLQP.eHTofAT43Aw8NdXfwYaTyYjRMq5Nit5Y8p6TXiu53IGW0x9k1t331MFYbVI0Newat5KeVkAWdViWbRoAUr9pCdYvyL9hKNXiiu37qps+ok1S4Y0cZnsQgYrEy7gpCibHlypJoZLIKRsBq5NbzD75yzxO1+43p5Z1QFFPzhD1AQR6Tl.OfGgfuxhT8QTcSYmRAtUlAbYE22FN4GGGbMpjfo2pns9Wh0dk3Zmr6yTB76dqb9+DX4pMX+TutRsFJ0TSDG3uB0VJ7kaTqV0x0KVodwPmWCKSyKYEikLB8u1z7+XmkLo.if+qu+6+O2YoXYVQCuIacEMPXF5+i6jLkvpWad0zbGkLkJyYTYkRMpTpRkk6tKIZRoF8PesjH4WYZ9uty0vb9oUNRRWuXY0hMTmAMMZTgomJWqZ8R0TqNGZhTjkqUtQsxUhhI22jX.4sfB1Ed+r6CPxL2EeojLO.KgLp0x4zxWiYwcgLYEmsjmhKWBonniopIXlJFje2RVoknXoTb8mfWzJgrEj2JUpqTMLgiOtiYXz8ZIz4Jr+5oA5SFuIqnM9.Y.LjJhyOVzXhi1.Kc+BQqmp0SVTmXZuorMoBWtfTOev0aDkLg20V5zIgcxkJNj3hUxQxnW9tY7+Y+DKyYy8s+g+v+vNctfdEWREN66N+u+mzhakcVeOpe+9t1oKO8e5+46+i+iBue.HHLG.Z41Zo.vut7e6+9N7GK2tAAy59G9T19+clmU7TpMUyOk426pUpzdstAt+c6Luru0xw8u8e4+8edGtC2onAUpaNzD8+8Ne32bf4yvaFFmi2rY44b5.E4v6P88H4msT30R1R1xgrs+.P1bGWxp6desFjnW2Yp3K56fbl6v84KzAoX4tGe2N256w2syep2i3VHm6lrlHqChkyA42mRY.Ab96VnIZ5KArMXxOs0epWhYZF8VUz4dttWLPi8Ebcqd7H+Y4qiafltma2vFfvK28Xy.tRNgofdJNlnN6y7QPXfkgUWc8zG0bDV71RXoaKgkusDV41RX0aKg0tsDV+lID+KgHr9HzpGbwZeHO+clHGTrpYZXpc9WqMZqNcFG53irr4l7lV32f7J3abj7I7Nh1JrClBF9CidVoBq7uceQKvwxKP9gCflEzgZb5g+QEDMIbLfi1ryRYOUfnYk1Zqvu3ae3is6PhLRIaR7ARrsLsnFj.WXD9PsIw0fRFF4KKkXxGQ56yZWF.0zYeXdhRgJ7mCN9QE7Idu0VjCndVifie5I4SL8bGjfIRTmQTavKFNXnLUxFIAv5jhEZrMg.mz.sg9DkMUQjB6ayRR9Cg9HVLUMXTQVHgpJRFzgA8AJiogu6j+LKkapJoG3Y2kcSXbsx7DwHyzZLfKs.hNE+aPgX55Q5w+qLxfLvZrDqn6jxQ1DOjI8fh4yS1.eAvZtswy6.KOPeR7oPMrtNzHEHtUDYvlAI8ozQTudSUtRXE1oXAL9gLkC7+RLUTEPEMsMTXuwad5rSUqEXZ0ZSUsQsvkhrnI42D7+EJUYJI8M6F1mURbE28EiWJJUR7FzRGeD2Z5yscA4HQBZjsKzHaxiIr21EZFhd.ZNjdThlAyPGcMj.EAPH7ZN3b5ttrJ3Ofix2cc3sleVWFggYy7rziDs13iNR2cPOKGniIvo4bGM6Pq5olxlt3CQAz8ZNFDWecKa1iRDHbJPnwPQuKreb6PBDXrWjeV0skFNk+ci4Oh57SYV2f7.2o+M4ILyZ75HCRztQXPNdi4Z1c8ExLXdFw4ArJiGVt0A4Xyt4CmOWyXwUytaf19IDqCbGEeaf2ckdABBf5b+rlx+z7vGx+SAEg6PSYMF95tAJw2TK22zRVM25ZfgNddjNrG4GwCkrVPmS3iSBbhfaFzS0zmkmuz.+tAP8Frc6KOvGOTKm.3SfyOyfAduyo.O0rsw1A6BcV1uqI6bjMBT6NvOutK0LuQPQ7yvaCc86xOID4jeVSh75x3d.ShlazrkbZlxOjb4ZFdnytJdr4xO2rgbIWNvUOG4aHcI.e.QTLTgcgHxr2LPAl3Z.x0cfQNJc4JO87iUxOQI+X07STwC2mZGMIPc3H1hRYQ4E4qIRYylMbg7SX.RcS8bqOFB3pu9jsw0IuE3ztsOZuH4pYOUPdNhKVGwuvQxYydEY9aMeO5kEQetlwRmoGD2CkkQyOPyIvep+E9XfOmaSBs73g86Q3oECMk.etP4GflhJkquMLyXSMCJDC+QDUkhk2le3XJRJ9UDvbTPW+gS1DPR.b7LmdV9ahGE.J93imfRRJovVzwbFr0P7K0nKKFOOAuTfmliOreJQ9p7DvWFPNDHIGvZorbggJbSyiyst4.KGYisFmGzYaPhWciq3qCZjDaATcvMHT8gZOK75.w1F5dkLjUweK0hr+F8xhoNsPikMfW1P9pbvalPFQvj6pbLKosYmE6GTGG9f1kCsDf2ZhlmMkxBu8B3Cx3mVOJK.3hCw+a9YLSC0REptNlCJOjEY8o4WxqBIVfeWWFC7nlaC0baULOr4FS2bk3cmqIFAINOBXyKgf65XZ4pEJsnyYFtVnRHeKWaw6ed9JkMWyWj6aRegaZny9yTfBgujqq.aZNe0F0gj54.IFCeUJUP4FEJvRgvqRBwR4jnaVtTEtG.WlZkIO0XOenQd9rDtjabyEmgItTm3DMfwCVwUTdFHmAylFC87gJGTUpWPIVPTr7xXc.WJtfnXkBEWJAQMHQ0MJHxhF4vEXxOHhBvyAtuoC7FNBBg1M+DLxrfv+W7GFe7
-
fix_block - I can't understand it
I have read the documentation and read some posts in the forum but I am still not at all clear on how to use this node. Can I have some concrete examples?
I don't know if I'm doing this right but I have a multiband reverb that seems to work decently only if inserted into a fix_blockX set to its default value (64). -
RE: Faust Meter > Global Cable > Interface?
Hi, this is a complete project of mine that uses global cable + faust and displays the values both in a panel and in a label. Unfortunately I have some crashes that I can't debug when I test it in the DAW but it remains a good example of how to read the values in the global cables and display them in the UI.
// GAIN REduction const var rm = Engine.getGlobalRoutingManager(); const var GainLeft = rm.getCable("GainLeft"); const var GainRight = rm.getCable("GainRIght"); const var pnlGRL = Content.getComponent("pnlGRL"); const var pnlGRR = Content.getComponent("pnlGRR"); const var lblGRL = Content.getComponent("lblGRL"); const var lblGRR = Content.getComponent("lblGRR"); function round1(x) { return Math.round(x * 10) / 10; } // Update Gain Reduction Values GainLeft.registerCallback(function (value) { pnlGRL.setValue(value); pnlGRL.repaint(); var grDbL = (1.0 - value) * 60; lblGRL.set("text", "-" + round1(grDbL) + " dB"); // Console.print("GainLeft = " + value); }, AsyncNotification); GainRight.registerCallback(function (value) { var grDbR = (1.0 - value) * 60; lblGRR.set("text", "-" + round1(grDbR) + " dB"); pnlGRR.setValue(value); pnlGRR.repaint(); }, AsyncNotification);
HiseSnippet 10316.3oc680zbibbkffcqRRMjjkzXY4IlXNjCCaGfsHQiOIA6VsDA+.jTM+pAHa1cqPCmBnR.TMKTE5pJPBzdTXGarG1Xur9vdYt4+B6w8l9A3Cy08lOsm8s8n12KyrpJyBEHIH4X2dB2Nr5F4Gu7ku2KeekYkIcnO01fZbhmsY+9T+Tol4tG35zh5443lZlzGNpOM0LenViQ19cWqqtocpsWO0Luu1AtTOn4qNputmG0H0Lyb2MwZm4duSJ1e9Se8p5V51snQEkJ0ybLaQ2wrmoeToGrxSLsrpoaPOzrmTqKsx1sbrWywxY.fI2UKWp95sNUuCcOcrY2QK0V5dcSMy80Vtb475FsWpc9h4WtoQ6VzhKkawRKUPubk1sWJW9REMVpcI.Ie2MLL8cba3q6S8RMy6rpiwnFccN2lO.OyzyroEE+Q9TMfQlWbMGKCbJhklZstlVFgjHOffoIQvtKmf8YZ6ZZXFVdDg6SXUPh5gLAbl6nhd2UA8xKid4jPuDPoYjPo2giRepViVtl88ipAwmOPaaaepaacfOIiJ71l5NZel1ZNPKr8y1S+TZMW3Gg8Hyh4xMOo3x4l6QoaP88Ms63kEjJdoiSucnmQsxjOKV2F1cLsoYsbzMpA8upWlY+0GTe+uYi0N7jZ6uy5aT+6wx8dv.ayE7zs8x1kpe1nEZo22Kqie6Yme1irMwJptyNqU8fFyFATX31zxootEBgLIztzO3AjMqt8dj5aXLnkuoicZPrxymbltKwsG4wDAj5D.o5NCvoxt51fvlaF.FQc.kw2g11G5laOrKqoCbjLyFT9ri055lc5lXyquMTACCi5PeaqMquCz5.hN1Emd8cro3riWs5XvJq9E2k5wFFqlW3vvqVcXXkU+h6BeXZOvlQlItNCrMxmY3bo+0oIvebo9CbsI6p62MKqtLCI2mjO2bjG.+2Gk96QV0Q8M.geFkiTmJ3XjmoaMf5kNfJm0k1wzCjBWS2xpInUHS3fl4LroyQ3CImfgBILHHp7Qx04R6CP0OinT1+AmvcbWuIRhPYXxBDAXuOYwbOh2HNUBgclY8oC8mcdxrKLK4KBl2L.LG76YIFqNq.7vLDHfdNVzr8cwgcVIIJryAX32OOop2H6V643a11rkNN4PpanH0UhFbufYR8IMStGmycwSi5xSiHhW8KfvVWlvNoICPMN.aCgujiRpIlBQBQ35abJGHJvZun4Y5qaSsB403OPLRoIQDkNAMD+SmrsAiNUsrxjaXsZ4pUoZwZy8Hj8rJPJ6vl6RM1CE1QCQ7lWpXs7qxa9ltTpcbw0co.eIcX+Ql.i.ALAlzudSuL9cM8vEQb52bBnQ84x5jF5soViT.QODpaQE5SB5OufLHCkMFOJZbA.ttq94bzgz10oGYUGee3u7cHG5zOF0nNskeluEznOFnWPdrip+XSC+tYlad4Z+NgPv2OmXAc098sFEiMCCOP5gBANlW5KlEyVkB.6xaUcgH0Z6u6p6u59OeiFR5u.cUMcV0YX9IpBKrEyx4EMzA0U5b9oiAMAXU3RgUANrVGnOwM8rktqQK.tF6piqhq8bDyXtYgvZi1sQtwri2J1RPSaKjNFJbi9IIFQDgbcrxzJ.alWrhGzBeuwAGJZW0220r4.eZlDpmi6NtBvPVHOxYAb3Rm47UMLrITG03H5EOcxeqOc.clNt3nfL03SpKUx3hmS4klSLQwcpV6grJIMcF9v.Svs507DK81RROsbofUucbZoasiiyoUsMpQA2mPKv71FpsOPCYlYMfk1ACLnzNf3koy7DmluBnObiYnrlNLTPYY0ggQxLmh1NRKPAmKIiG3cMQ2i.DPefUzLrAyI5Sbsg0psQoEWZNgUQgpDrCTCTihtcGviG84IkmScn2efOiqKFWCc2SAsTdcg.AHsgRZgzRfuMW5KRGrnRjXj3fNOIefMKXLODLvELfc0sMrBFdlxQ9T1a7ADocnsQ9OCGTnAI50ILlUTvrpVlcroF3nGBq4Ieq92l66.Cq4AUt5ea9uC+uE9NPYaAVAE+NnjYs3NURBmBq65z2.BIfn655bNIy.OvWUBRzIH6kOelKzMlt.qGgESklv3gSaPENNyEBlHPnFLhNGndlugdkH63vdnqImbGLeDyhtfacEg+NX5A0vJZdk+BliLShGrMtBbNldEwhIbnGaIgX8vbOJrcEtj1gqC2ds82qgpSy7.XwPLuHemiZkp6vM8s4UMwNG1hX9d6cVmDGZtJfFOayLytXtkyZe3hOoxZ4Gs5ad85YedsuYwiVcoyNemrFaukYicZrVQ6sVMW0CKMbsW8rmuzg0e4QYc1ZauuX+lMJu+ZKMby8omUp5Asx9pZYe4yJszq1asic51wx7Iub6cN0cmZu73CdQixa7Mkr22ryHqhuYYeeeisM6zwt8RO6IcNs8vm875uwe+yVq5pYG13kMJe5vs2aW6kN8fsard0CeR+tqt12zX0leyS9h23O30udsUeRVccyx4FT6frqd5.2S24oqWoZi8xtp4ANYWsxwa9zNaryAc2r7164Uqyl8ed802bum2dyS8pRe5lu9o6o230zWTru6N1a033m+zZqsVmWsc2hU15nbMx+5pa+7Aqujgqa+yrW7riGroyq2c3KZ7x0q1BUNls7pE1uXEiSeYyidwQNf3riYqkpb315Groe2WSaz7km87c1i9FeW6CcnCOdYC+gG8xW7785uqSe+kOp5Spc5fd6124a14n8O2oxVY2xuPkiNdOZeJUezA4Npr9hk0O1ltyKWdui+lBCq277k203vJsrq2qb4BCN+EKWqPIGiJmZ7pkZ8xkVbwcZ85RM50nW2Rl0Gr7N9UzW54GVw6vdiJ0au8Nph2tC2n29FuvdIiW8x96tk6l69JG3++5lGl6ni1yrvZ0Nb8k6O7aVaypajM6q.NPQfg77UW1tSVZK2hGNr24un7dzbmOrzK5eHLP58eyF8F7LmCK2tlydEp7hti1vhlu3yxOveGZ4gU71w3UU5UueimRW7UlkFLb6bdGW9zSAr0q4xu9v5muz4u9Xp9ZlMbVqTiSWFZ7Wr7SGr7gCJc5S2MuSiW+r7tqtU6Wj0rkU0WVj59xm8zmt2YOsk05KVSuSmMauQ6yxVnZm2bZuQ48O3XirOo1yq1YCqWt9yOvd0Vaz93iNdGi07NZnyx6r55kdyaNq9w0KT8fyx4r5qpe3Wj8EmVxbK+J8Nz+om85dscxdbwm7Eu94qqWt+Yc82y8UCrGUuXtWdXV1JLkEqSLL.HJfz+56k9dx503+kW1y6Z5iwvbOtRabonxh0HGeYZaVEM23kI2bbSLeerPr0aenKXSnOnT11+JYpWsKSvh+gNc.csqxrTknUe04FZsoYm.6Vn026MAKzA9GLOoDKoM37ITGVhpXUw2f34XsOIUsWtZ1I3ZaHVbg9BZ1VD2K4wOFXHPI2KDv7naOim9Lfp46hAqBhAeO7+i00bWbWaqa4wDRDcdhNMJo+OYmFiOsl6QRyYHRY591YXyLHNJR7pZ2Nw5DfxBSaUBUiIX08h5XF6A8ZRckoqXCSMy6nlYRsImYR4Dm1hSYjZni811l962mZOozolRPNSkZlOQfUPS8Y4v7mHxgYCKSCpaJSiTy7dZOw1oY9TLDVj73+k1su+JotxctfRmSkh3LEctnRm+i+g+vuZJ5boXn8+2J+vD6LeIOqy2Si+i7wP7TBp2Ur6EtYcu3Tz8wl4ki24RSAYawaxHuT7N+hoXjqbSF4kU57u+e6e6+8WeU576ykvyci58XhJ+O+pw58mH5cfi0r9+AZg9iGGD+oudZAwXRbu+JoNZ60080w8rPrvGTFzmBQni5YlYc5Ylsn7cv3dZqS8N02oepY9kgJZgYHen+HwPucO8NTwTm8uymZnL+ZTzO9pUNGyfUXA+v+kU5xhPJpD2U.ikhcbZVsw10BWLX4xkIYJNW191cRY4z5T1FnbmTRX3meoZujvv0WQBC2KFFlZ63XHThGndECsDo2yLycwexxg3AN8GzGGipMcNilBTs2vGFeunY2I3rqmGVJmrMy+vXywSADjM27cbr7MA.9kZaAwH95AlsN0ZDFEYevLlGZGgZ2AfhGQuMlvQ+tP4ccrLHldjVtNr8VpmiALLuqFau95oOTdcH3sS+FPnmxx3dCZ21DZklFomWpdlFPL6G33Yh1sjIB8B26QV2Lns0GXwStZTy9EqzOvRy1F3tzMdBhRAdynyxm41LQnp99f45TldGXMnio8AA0h739pEwkRB6xzHATPRB329su0KATahR.FldABAm2kZS7L6XqaQLf0zdjlTKnaghESVVXk+GwkEXpatRxBq7ajjEX77jkEJMsxB2SqN0hp6QmBggn9HKM7SuTeJjVVX+Vuzvpn98PI.8dPjE9X9e.7hJ13COv4+dNtTBDaHqgmQkEaR0S8jCnnW3qVQhu+v7oRRKwTxJeOs5Xh8mBFYPOjYi+rK06tnYw+h2a8rw00X6YOtt0Ug6P770c88.VJr7MhiFzBNikuPWrjFsT2xDVtqxX26GTXroRcIJ7MVchJ7K7CSIK+CzNLTuyUmsK2KYV+GcE7MOZlRbkX9qPGiWG2ODvTHlgX7b2r2HKw9OkJNOcb2Q34u9DarOp71GqU0vviblosOz2PVmiK4bc2d9cI51fUZaL2Dd.qkssWDOKDMsFkZpI0LrlgzSCoNpWSGoV13IPKudj5ORq5.H.Wg153z5+oIQq0gNoRpenVMFYgHfEwXfKlgdKmAFD7.1fFGmGHtr0RhJASoT+okNyQ4.CLIRTUaRhLioiVKaZ5G5bMo0ef1ptl9IKUOQJcSnKpT5uVaUGGO+.w0liHEy8KImahhyQlYvgxzqKtcR3wtfzpKL6agS9ojbmlg0LjNQZsT8WJg9yuzviiHy+t27VqoCF27NZQrjpZaA3xBnXNtkT3x.zovfs+lzxzs0.f066.KOLFzhhlTVfBJe5OnWeXkfv.xGnUyk95AT6ViTMgTZEE+D+MWleha8lIYBgXsxT60Pi015fZolf5qFqcRM1T9xY++zKMAGQyw+3u4sdOGVIXgH5xGosfyAAvClTjX980gUl3lLZPW.WbB58nri4fZbfYRLNvI4Hveen2guiF3uvTxR+PsspsQu9c08L8lBaUo0B6jLa8ytzTOMIGBseajs9XsUsfkldDvWgEL3maBJ5lP+A9b0rA9QPMdPT8NC7gFjJ4nthVbdWse4EDN+TuzjgpSkC87dbwofHHKWgr3O8RSPnTf7seqmEug118ZxOl1Pz49mimks9L1wYzGXS6n6yhTaTKKJ5+Oeuq7HPbB1DvNZOGayVdpzv+3DWp9uOsgo8IZqaBUW0aTOnL2QSk2jQ8Rl+82co4ncRIh4sR92ZQwmHhay.oXjVVl8Qyo.SEnMQgt8XhmCK2bdgGtsTwxblZHZqLIl4eZZYleJmYFcp5lBt4GpI0sqF6LLq4SJ0p1ucFC91LsqcvySZSZamPNZDCCWGxS6tGwH7zrApk8o1.WZj5xwOahbv2OdNSmZamLF55tfJhTSPGKuxK0en2UME9ryEpfKxO+mSxc3enYbt3uHNW72puxzLT0kFpO46uQC0O6x2TlI4l2UR3LTponVMSLKqbKuDKVZbPayf.AWjgmPd4LtMMIzdetE8KL2NkTysSoUt941IUp+LsrapE34DB124jLi9dpxT6n2LTlh8uyOoDT.VXT4y+1mNFetzJTCSec1tqOyc4gbEtGCsAEAbtzmnodHDmJDTICJu3V.Aix68sDFpj2A2aALTNyd2R3nb9d+AqaAbLHoy2R3mbREV42bKfeRgAcKghxA996GcQnXpCuhr4FqQDgkeKgiKMoEKD2qGYTw6laIjrxjT4bcQx.a42R3mre1qPuEvOYG9uo338DpsyMIkNWehHOnyaKDL+jVQecQvPa8WQL7C7EetqbLrlkiN9oSdnoE+HX7wZxEM4ShQpTW1Iw.DhEmOjCEdUcH28GtGbAmwQn8uakJU9QrGl9zdQk9i+3OVTszBXwAiezw6Wz3+f3v8DNWSeEOkLCk0QEMG+cC3otTal2Yroap+4Dltgt2gQNE5lOO+xvb.b54eTasc1n5doOtZ8cSWcyMquQiFa+rMRuU05qGa1+0+2+3eL9D5dWwyrijSpuJwIzcuZSHAV+YZ02sQ5C1n5SRieoVau2FqmNJBHHl+vDFN1dAk9xVPn3Hir8i+jeb6GlI3Q83KH9HsC2Z6FGhT18qyVUnjcne6JqbyUHx+PRmjkuwVJCgwN9R4.2tVHW1bnu0igooxnL6lFTSNjHx+5MF0jQijPyTS9rcEEs1GqobduSoD5gztRM3xwv0WQV4ArxOY8AolvxmD1rrOPK7r8dyPLO8ynaG.IfbkHhFrx4ePCOmsOXKHJSwovlrpqy4dfmOW.2Nhj9AQjzafd5eu+JpZdfx9wj06xJ9rfSNr1L3OwSAX7si7JZcovEf07intrgKoIqhckOVbyVDP5jI4.f9+Mtgk+W+3u6Gu.CKrS23c9udGM7iOdVjE0.3phCv+CYGE84CpYig8A0GfpOupd.nFzCaA6DmG1D1cQgaxcGOY3diASX4Fu4JUEU79saimR8GhenVAcppgQxCQcpMnqK45VGB4yeB0US+LGWfBw9RpjpSfYaCyZC5pNtvbSYJu2fdbBAh7EXEw+M6aOlEdDTw2x9bzxksXr+L+TVNT72wFic.CtUco5gzFwHLeR+UXu3XVcmyOP2v.jJup8qAU2sU2U0c4eRIX23UrqiqfdFulHYn30DPoGq1ze+UYwK9AMljorwuPQ9DMv97.Kce062DL6HhJv3YjuTQ1NLEkRoQ9V6RO4phhep1Al9s5lLNdmDvQPqz+QfihqJlORi+sdGgfuiVsm+eP2KL2QZ7+L93+yhx6Egm3KBL7HdjXFwjoU6Q8O2w8TrkG1EVwvORQAkJRQkzmjQPNgj9PK3I3P5imHJqLReTDxGhEI1R34sPprfOWc48vH1tHI25nLXKklx3aTgRUxe93xfRZijkJM5LMIi2rf.kxgfTdEkNf97Safj6Cyb2qrbP9KVLL7Jtw2kkOVPMaCvvUKJHEZiWJCn836f96v+ct.6yM.Lm8Cv8ieTTYd72yHpLePkIrbLcfgbt70GJ9IIlbUvkOzL+2zh9Dk5iWmHtzCcNvReD9Qp22hBBOz4IMwCceC1Wrb7uqIQBdWEaQlVho104ye5c+qIBe3GPUJwRQ1MBU3h02iu1NgUrOi5x1afYdOMvW8r4RU0xxAuiA5aJzTxlfrROvwZT+t39+hbLdaBlDUYGA3fYxV5dGpaZgJLZLvqOfp6a2.ZL6pACUtsGa4w6USGW2N5.czD0mpg6wErff5lsUnlwDw5HIGjlyCEKwFhLrv81viOWvwNvUNNgFlJ8XtHdGMnIX8r63KNR9tHV7dZs0G34mRAg+P.gcoY40jDJEzqKaDk97W35qweAJstCNz2SaMK.xaajRbtJ9H4IJy7hby+XT9RZJK5zc0J.MMpXvPoz1.osqosngeFHGjOG+O4Ksbt74WLepc0GJp98zfJAwjFga0ShcfegwILGfpx6AqhBtN0Rdf0PAPoQRSKux3v+MB3eB6DNRBrNbaCd4ip30E1El.rSqEZr55B5bYKKA5OGqO2x7+rzRKVpRgxUJHb5gYTiDYE7pMjWhDflVYkI2EfAej.C3VaukF8BW0Q+uSL5RV0utz7hSfcNdZ5tdiv6pkuvUaQ0GosUMRnWGWuQa70vQynOF52PRl0cG8fio9ycqu3R43se0.96osPg3jqB4tpjKteVraqqq7jIerQq3UbzB17tq13.Lc0o06i7E0gRzFtcfoSgmfHIy1KeAr8FPv3LqtDzCzqLmYwwUOckHUx6Ea7Aqw4XvZGp61g5yrHJWf3qF0lmuXO0elh6YA+KR.7l3LvvHfyGndtA43ZpqCT+vHnleBfUxqAYbPwygepl337jMpAI4.gL.lJmHlIlWAuqFaAWvIyTynYA9QZHJj3H5cxS8ehVG1Uk4IsXYxM4IuhGFyHI07tQRMuu1Bb8OSVrA+M3U8ozy4jMjhUNaoBEJrTtkWZ4xUxUH+RhkbbPHICAdfJwCT3XWKlfBD9KMW3iU3B4+qF1PLoGEFwmq4xCQJqRaRhWDCLxbiOTqTgJEp.+IWgogo7gZRDZAgHsVvUz4EPKemKy92DHLLcbIvwkIWwYyWW5Ub3j.AaoR4JV5lRv9.svq21+bRwlb.MJAfbaGcin0+Ts7EyVfW0xKt3xkKV7JZFIHvvCR7COOU7IRjo+oy6ANQMbtUf4j4M.Ck9zliihAt9bSciJhzlK6xhpVpbAn9aBhG9o7FGskcC4F6WSrdeCvWkuA033r5G32z5DtRiuAnXrfvGCKk9z39KEJJGHeB3WXj3Saf7JUdCvOITXLzaruChabJAtsnpimVgwPdkiI9schEhzPjsbYVcKVoR4EKuzMR4qZpJFaFM9WxvscFKj.lntJ4KtTwxkpT9lLuRHIHIJqorEGSapPtMEsTSmRBhVRa5xMMgJ2V3sZRYRvHSzVB8WJcgJ4cIAq278mZ5yYTrpuAXX7LOk.qWZOyt4oGRz3OGVdtLDxPwBExUrPoBEWtDcgktYRCx4bJAZMeS9tFYpQs82HZsZ5dRcIN7us2yvZaoaEfCPzcq53bZOc1VMcstQuj2sveNuxOP6X8ynraDcVr.+L1ua631irI0l5h6pe9K3An4e+p9.zz+J+.zreKe.E3W5kNdPHTRPtAsm4gN1TOkRi0iBI1iBw1.6A1pflWjRqPRQMfTjW9nTDTXA4OxqCzsU.F7aEHsqoxwlZCaL3vFTXlaruWKfvnqra5+ou9fAVdT1wuIu7W8YTwEjKFOBA.Orkxwo3tWzyvS9q4yvy69V2yvyeEbnYTdoftW.N1vD2d8MrOiZAqbC1.E9GzcPopK810w1IX6fiXz0AWBM6zgpH+j3DR4vhv9rEG67d7KVYGSaptq5ooXpnE4m5WMoD4W+8hfyIn9Bxe8dXmt6+o9vNc0W8g9Z7VMW7mqAphKPXrRxeY3k+43fq7miwnmdKWmSB9.pAJz6yJAl21harucweSR3t0sGXx3jVsTA0Xcrv0siEutcrz0sikutcbwqaGW551wJWdGQK5h7DyhrM0tGrAyQzYlg6TCaYRJZulTCvOB9gLCEsCKwlNrloE2sW7ZeEV9f+EGS94bemefz4sIqgW+f635T24+SVMvMZKcWJA6AYVrkKHZ57j0C6FDcnXA7rOJcPWNie1qHylKaQohMndL7jUUDHVvx7Tkqwse0uhnKxAiYKoqEfYwaT8d8gejYVOeC1THqkYyfWFup19lKXPsAuF0svyKWv2dSvgiKsNzhSBZQlgyQdLYH9nkPWnTNwqqGaWEHd51f1GRqtTvxnuCdh8NCu562SeuGrscaD3806H9dzsMHzgvjAnS7adc8VsFDPVPfhDO7diM9sFoOr5lnfSLfcN99mv+nGzsGgiEvvQIgVhqqvzbz6DF5wmFdfGFs7Kjwz6Do1C0MOY37DHpp4Rytka90gubarolYaAJCXGL2lm.St4IAXy7Dfa7JfJGL+rFQrv8nfAjwFJ7YYCeMvf+0WhzzB4li7uFVzWAEsHqfgj+IftKd4kvWAl03m6Q7c8JfSYz5DQYAroGRZal0nknTwqikkdu9Qm8Q79XBu5H.mzHges6doghNoE1xLVNyS5ZBjDDj8zGxJnmocFdgAuvhGsc3sRQZ98w1iIc8XW4AYlkkv8u0yejE8g3We+2M673C.Sd3+lCoz4mCPUOyrd8bbdT5n6MXIPDlC7XfYA7wxYgEQvLNjz4toIAFtiawfQddWw+QB.I3d7Sd9vKZLvjiCKL8ByydXCk.iSX9JjgjT1AhAsbh4VgDPIC2QGydPEBgiR5RRBuxEfe7Wawbxfqa+130slL7TRIPL3UQfUkEvSFRsCx7kLvjRH13SRDFEFeJ1TrgA.bXKYa5LLyrgovGUegJ4Ds.+ldbGkY1XYLLb.JJvS7Mni8eEx1XU.jvKwwwFK4cz.GN6fz1ozpnDoEnQMHM9D75xfeMYgyH3u7wr.vtqK7j0O1xU2qKnfxPzwSvmrOo4jn3vISA16MBpOJ2iquaC3WO9.p9oPEOF+lMgXjLBgE.GEvFPBBIyLLlkTXoqRFI8.rKelSLvDgKyQkxOdbNZ1xhESr+NWLAWF3jtKaFClQ4ldL.WQ.3BSDvAl.GMNbC2ghw.adgpijvWlBScqVngIp31pCIEhabRc7YyBlEHq1Svq0aSAqfMYe2MX22v1afaPOrAVtKoiCM3xvFeRNybdWSvu9ycF.p7ZAVngQJ3CAC3Wd9TcC7M6R55aYNDx3y0EdOnPXoaM.LsT.C2DK65DxM3kSbtzgSj5BM0ndc.U3J1YfadAF+EjLgKEuunr6ie5T3SBZlnEEx0UXt4BcuP2xoyBLRt3hLRRNieUcF41R3UyIzDyVdoip5jndwssw42gu9Mxho2GMU8.hTQxlwi0QFvBtwyNAu1rvhtOZv8qv2BFXRFbMnoV6WRxE7bmFu2nk2GPxjGeJzP63gHSjb+b+y4yF7d3MF7Sn+YFagCfD4WHlTOP1A3VHxKAL4a76BLzOAGW1y9VOmHmSXRtoAxtgzniBCKjK6xboA1+.ryiOUuYyKf6HPlvPlUxVAvphZ0WxoD1nhqIBcxf60E6EYk4DqNwic16dPKX0zbo6wlmr1jwz.7CSedRy4Is.Or.biQvvx4uTO.NoS9BkByiE1LVgEvBaEqvhXgF7ITcmlnKaBbbA9BalBbNxwdh8vatxvYL1q8sAm6brojlflcXomI6lwCVUxVaAn9YNl32AXnKvnmpL08DPD+Tuzwkpkm7Al2XNiNoUBSrFF2pHTeDu8hZYE9JVbREY4meAth3+BD898sLYJ6foLX7J5V8jeweOOYu8OjnO.jHY2ymHjNFW0Qs6h4f2PnX7ggWOnPjBnMXD7HYIgXPR6EfJmvQENQhwDA+ZwKaTL8GY.6AHvOAbi4DD5LeUeHQ1ge3mnr4A0hTRGgHL.1s8ITgOJhQaLPDDFPUCX1LnoOnRChAEjKZMvKltqfmXwnH1Bv59fo5SnulqssB2eyJyk7XoFlC6w0hQaBuZc4NOxd6JCZlWrXVDlevodDkGDT0sNWeD6BZUmSN.Q3NTRlB415MHCN+CJgSB9GZEpaW7fPpPoEJKJHLbzSOai5OnDHzwcnbtXu3m3aZLAbFLfPGLOXX73xESfuHIEvVNK4y4WJTJfAnlXC9Jd8YjEexGH9LYom6y0FKAn6ybXcNAiZLl0iBKNNePd1e47CIRdLJdbRNdzyhihPYyIEx3Ha8dfnYP7L9XxqaIbtIzbrp+KF79bhnORj9PeluOG+h0x.cs4QcGhlNWPa87wneCZZxBrJX43tM0yKI+cdC2RmsioGM34pMxMIjDkb+nCaIRuf7v5IIwqhxBt.d1Mxy4CEXdLwq8AX7ewk8iS8YSZNUlGNQf.e.grstvAdwHI7MC+GHQkoGIv2dfuDLdIxLRFcCkQwRjw84YMOnjBrRjqGsapfkyMmjbF+UjH.0DtEGZFPJES5naofU2DRVC9jsJdMBLDBp3CJHrFiYFFB6gYzPGSaG6WdffLyHMCeR61ySl3fYYYnPufHIKgN462MSS8r95CJz2whhDox35ZRlSDVFG2Th5Rcj6tiicGlhLaCP5DQMABkNNeRJgOWEbIGSIyEi.7nTDg9It8GirOyWUy7o.SBZHigfWtFbTcrvSSy.RLzlKcFDMYOygYXJJUvkXqkavgL6sepstA+BokeKCqfFdIBaIk7H+DhJ0GnYLBp3e2RLoY+NAct5v5bVSA0gmytpC.BTyQLSy7YM0HBS3Y0KAsfJXviIwEtPqCP7WKDs.MbIaPyBWdFg8OdrkvQ.BEPBQqEvfDSzTJKT.gypMwyriP7W77YKDHXt3GpZf0NIkKLO7qHgx7v3d.AOftJipBwFEiU3NINOFaDmS1vbBy+w5.qwXMiQREzkP0NMbZ6SN0lJ8zgJyJYKcTx6hgId2yfOw4iHug55jFuZjOAgPFvia1UkQnLXF1OY9WvVSJzkfpoZyaJJh463.hU5Vf2vMY6LGNbrf.TFLbSrWfMhRf9qhfbDgkEm4BBTgMjxU8UjIVyik5EBjGSj948g+GFgblRQzUzv.qI2m2Ptou4lbFPhRRaXVPT0rbgYCQ4ogaBthJwpBhVUxaEunjXbhbBiY3MKB17Atkla9nwCzlt.ILK3Qcj8fTn64v1nHIeuhVF9kXJhPBXQgF+yUdh6BLK0iExF+QYWnXEyaiNDW.DQCKU4XrUXYCPeeWffmMJ1spNKXJQDOKv80MT8TTjVoQqlmDz+LrPtNgWUn35XANo1pjhMheGYR1eucdg3MZP0.hzl6vFBUKDbXvSUovBDKpjvYg.2wdBV3rXGjiBFMSDUVi+EVwByb0IL7f04EHIHALW.HPRNSFR2.2MFzMhf1D.fu7gjnk7mfoBNYRSUH12Qrlx0ujLFwVHIFdVhADW9D72AOmyjkVBv.gBOlJ2PMjRiIWW7DrHw5+BnNPdW1Njp0g5GKkeBohjbxfuGIBeVuf4uXuTRdxmLniG8fhT3ENXJdIO1nAigQyBbgHUQF7oUFo.h5Phfvz23x61w2yRw8sNOp5IE.tv1wDh1Nxrbfo3wBvJIe9ifrmhkBlwDB+RIwC25S+qP5cir0KKWgFr4Fkg+6ChpVNrAWkrAmWIavpoLVxc+0h1D5fzD4wwHfO33Z1gQn4YFRnEHHQ1AI679DUcZCCr6vdtI.qBrMifzw0YPelxIvIRrfi1FFfN.K7M7sMl0rSXMiC5y3+6Y+1Be2tr8yX14IA.eSEhFQreGVTPgPGvET1H9XhLH61T2siqd+t..y8c3GDHYy5juc.HB8PiUYaFIa6LQhiK5r4UAP4+t5XSmLjTM.qxpYDCFjQyM3shC9fJ0AhiR2SklRZNvOHCl8szGw1.gi73OLYfLph97w7fJZQhGOgtPnDlVPgoQw6SXiTHRI45dRIvKwLcoL5O7xMSbY1.lFU7JZuu00Les07NE5UGNtxzardoHQKu+boPQN9lchEEaD1vwV.PlnN4jRabbApXwRFKLSV4RTqoMz03DpKIR1oOZ1PxxMHp1wCjVMLVtZpoMX1KLf1D.4jCq8hiuLdLlS.aYwwpF9pb3liExoLXRt+g88hi.Eaw2qJ+xL2rfWeZKy13AxRMaXWlzaxS1aRRrjx9Ph.dJSIUTT2bkeV3WTA5g63wrgiId5qv1chncA6yH.W6trIUtrKw2gwBb3JN6oDzdLQbysI+li0EOqqmQUsMkV3x8IXujyUc7iv184OhYLW.RxIToGgGkmQEFBDiWAHiz9oEGbfAnPgHv9S3alKaXZ.NK4+vHmjDOV1rcIL7kUSNzIw1M6eRPrEwFsPySXiVPzHT0EeGVDt7FkODYqDQTjGyNUBOH5PAvVS7fxgx5pS4nyDXF0BWfvH04xVTZsgL5mwvcz7fJLeEMjLyhcUW8yib.7LedkhC7uJZcZRZyYCIhZvn.CVLDkM7Kvwh.8.KMOICWQvBAGXJIEUgHCtvAlBh8hmclrvkPQi28IAkdekfVxDcXvvkZJyoPaHgmlOtvRcZObSLVeMhC6RoMwNotL6QxgrntdLNEDOTSI6J2CIJ9DGps66UWnxb3c5Wox51eao5eao5eao5swRU0vNiuVsAlKNGRjvVvxPz2MISmySTVd9nTo9+C3rZZnI
-
RE: How do you Tempo Sync ADSR?
@Delamere
hi_tools/hi_tools/MiscToolClasses.cpp
in HISE source code.Find this line and edit as you need, adding tempo values:
void TempoSyncer::initTempoData() { tempoNames.add("32/1"); tempoFactors[ThirtyTwouple] = 128.0f; tempoNames.add("16/1"); tempoFactors[Sixteenthuple] = 64.0f; tempoNames.add("8/1"); tempoFactors[Octuple] = 32.0f; tempoNames.add("4/1"); tempoFactors[Quadruple] = 16.0f; tempoNames.add("2/1"); tempoFactors[Double] = 8.0f; tempoNames.add("1/1"); tempoFactors[Whole] = 4.0f; tempoNames.add("1/2D"); tempoFactors[HalfDuet] = 2.0f * 1.5f; tempoNames.add("1/2"); tempoFactors[Half] = 2.0f; tempoNames.add("1/2T"); tempoFactors[HalfTriplet] = 4.0f / 3.0f; tempoNames.add("1/4D"); tempoFactors[QuarterDuet] = 1.0f * 1.5f; tempoNames.add("1/4"); tempoFactors[Quarter] = 1.0f; tempoNames.add("1/4T"); tempoFactors[QuarterTriplet] = 2.0f / 3.0f; tempoNames.add("1/8D"); tempoFactors[EighthDuet] = 0.5f * 1.5f; tempoNames.add("1/8"); tempoFactors[Eighth] = 0.5f; tempoNames.add("1/8T"); tempoFactors[EighthTriplet] = 1.0f / 3.0f; tempoNames.add("1/16D"); tempoFactors[SixteenthDuet] = 0.25f * 1.5f; tempoNames.add("1/16"); tempoFactors[Sixteenth] = 0.25f; tempoNames.add("1/16T"); tempoFactors[SixteenthTriplet] = 0.5f / 3.0f; tempoNames.add("1/32D"); tempoFactors[ThirtyTwoDuet] = 0.125f * 1.5f; tempoNames.add("1/32"); tempoFactors[ThirtyTwo] = 0.125f; tempoNames.add("1/32T"); tempoFactors[ThirtyTwoTriplet] = 0.25f / 3.0f; tempoNames.add("1/64D"); tempoFactors[SixtyForthDuet] = 0.125f * 0.5f * 1.5f; tempoNames.add("1/64"); tempoFactors[SixtyForth] = 0.125f * 0.5f; tempoNames.add("1/64T"); tempoFactors[SixtyForthTriplet] = 0.125f / 3.0f; }
and this:
MiscToolClasses.h
/** The note values. */ enum Tempo { ThirtyTwouple = 0, Sixteenthuple, Octuple, Quadruple, Double, Whole, ///< a whole note (1/1) HalfDuet, ///< a half note duole (1/2D) Half, ///< a half note (1/2) HalfTriplet, ///< a half triplet note (1/2T) QuarterDuet, ///< a quarter note duole (1/4D) Quarter, ///< a quarter note (1/4) QuarterTriplet, ///< a quarter triplet note (1/4T) EighthDuet, ///< a eight note duole (1/8D) Eighth, ///< a eighth note (1/8) EighthTriplet, ///< a eighth triplet note (1/8T) SixteenthDuet, ///< a sixteenth duole (1/16D) Sixteenth, ///< a sixteenth note (1/16) SixteenthTriplet, ///< a sixteenth triplet (1/16T) ThirtyTwoDuet, ///< a 32th duole (1/32D) ThirtyTwo, ///< a 32th note (1/32) ThirtyTwoTriplet, ///< a 32th triplet (1/32T) SixtyForthDuet, ///< a 64th duole (1/64D) SixtyForth, ///< a 64th note (1/64) SixtyForthTriplet, ///> a 64th triplet 1/64T) numTempos };
once you find these lines in the HISE source code, you will need to add the timing parameters you want to add, something like this: .cpp
// (..........) setTempo(ThirtyTwo, "1/32", 0.125f); setTempo(ThirtyTwoTriplet, "1/32T", 0.25f / 3.0f); setTempo(SixtyForthDuet, "1/64D", 0.125f * 0.5f * 1.5f); setTempo(SixtyForth, "1/64", 0.125f * 0.5f); setTempo(SixtyForthTriplet, "1/64T", 0.125f / 3.0f); // new tempos setTempo(HundredTwentyEighthDuet, "1/128D", 0.125f * 0.25f * 1.5f); setTempo(HundredTwentyEighth, "1/128", 0.125f * 0.25f); setTempo(HundredTwentyEighthTriplet, "1/128T", 0.0625f / 3.0f); setTempo(TwoHundredFiftySixthDuet, "1/256D", 0.125f * 0.125f * 1.5f); setTempo(TwoHundredFiftySixth, "1/256", 0.125f * 0.125f); setTempo(TwoHundredFiftySixthTriplet, "1/256T", 0.03125f / 3.0f); setTempo(FiveHundredTwelfthDuet, "1/512D", 0.125f * 0.0625f * 1.5f); setTempo(FiveHundredTwelfth, "1/512", 0.125f * 0.0625f); setTempo(FiveHundredTwelfthTriplet, "1/512T", 0.015625f / 3.0f);
in .h:
SixtyForthDuet, ///< a 64th duole (1/64D) SixtyForth, ///< a 64th note (1/64) SixtyForthTriplet, ///> a 64th triplet 1/64T) // add those lines for faster tempos: HundredTwentyEighthDuet, ///< a 128th note with dot HundredTwentyEighth, ///< a 128th note HundredTwentyEighthTriplet, ///< a 128th note triplet TwoHundredFiftySixthDuet, ///< a 256th note with dot TwoHundredFiftySixth, ///< a 256th note TwoHundredFiftySixthTriplet, ///< a 256th note triplet FiveHundredTwelfthDuet, ///< a 512th note with dot FiveHundredTwelfth, ///< a 512th note FiveHundredTwelfthTriplet, ///< a 512th note triplet numTempos };
I suggest a double check of the values but it should work.
Once you have modified the two files (.cpp and .h) you will have to recompile HISE again from its source code.