Forum
    • Categories
    • Register
    • Login
    1. Home
    2. ulrik
    3. Posts
    • Profile
    • Following 1
    • Followers 13
    • Topics 309
    • Posts 3,262
    • Groups 1

    Posts

    Recent Best Controversial
    • How to get numbers from strings

      I have a function that iterate over strings like

       strings = ["brass", "001", "127", "flute"]
      

      How can I find the string numbers from this array?
      I have tried "typeof", of course that's not going to work, eval(), etc....
      I even tried to let all strings pass

      Engine.getMidiNoteName(string)
      

      and it log "0" for all letter strings but it works for the "number" strings
      How do you do it?

      posted in General Questions
      ulrikU
      ulrik
    • RE: Changing Sample Start Mod

      @David-Healey said in Changing Sample Start Mod:

      @ulrik said in Changing Sample Start Mod:

      But the sample map xml files are also changed when saving the project, if I open the maps in a text editor I can see the changes are made

      Aha I misunderstood. So it's autosaving them, hmm that's unexpected.

      Yes indeed it is.

      @ulrik said in Changing Sample Start Mod:

      So if I understand right, it doesn't matter as long as it's referring to the right ch1

      Needs testing in a compiled plugin.

      Ok I have tested it in a stand alone, and that works fine

      @ulrik said in Changing Sample Start Mod:

      The user can change all samples in range between 0 - 5000 smpl, that is already fixed

      In that case I would just use sample start mod and a constant modulator or set the start offset in the note on callback, rather than changing the sample properties at run time.

      Yes I have been thinking in that direction as well, but I also have a script that already make use of the SampleStartMod, so that will add up to the Sample Start setting I guess.
      But I think it would be the best way to use Sample Start Mod for this purpose as well

      Thank you David for the feedback, it's much appreciated!

      posted in General Questions
      ulrikU
      ulrik
    • RE: UI feedback on tiny control

      @dannytaurus I like it, looks smooth

      posted in General Questions
      ulrikU
      ulrik
    • RE: Changing Sample Start Mod

      @David-Healey said in Changing Sample Start Mod:

      @ulrik said in Changing Sample Start Mod:

      And it seems the "embedded map" is still referring to the right .cr1 file.

      Yes

      @ulrik said in Changing Sample Start Mod:

      Could you explain?

      The changes are saved with the project but not with the sample map.

      But the sample map xml files are also changed when saving the project, if I open the maps in a text editor I can see the changes are made

      But since your use case is for the user to be able to edit the start any way then this doesn't matter because they can't save the sample map once it's embedded.

      That is great to hear.
      But while working with the project the sample maps are changed and it leads to the message that it's bad practice to load embedded samplemaps.
      So if I understand right, it doesn't matter as long as it's referring to the right ch1

      @ulrik said in Changing Sample Start Mod:

      A feature for the user to adjust the sample start

      Do you want them to be able to set the start at any point of the sample? How many samples are we dealing with?

      The user can change all samples in range between 0 - 5000 smpl, that is already fixed

      posted in General Questions
      ulrikU
      ulrik
    • RE: Changing Sample Start Mod

      @David-Healey said in Changing Sample Start Mod:

      If you change any sample map property then the sample map has changed, when you save the project it will save this as an embedded sample map unless you save the sample map xml.

      And it seems the "embedded map" is still referring to the right .cr1 file.

      ...unless you save the sample map xml

      Could you explain?
      It is in fact saving the changes already when saving the project

      posted in General Questions
      ulrikU
      ulrik
    • RE: Changing Sample Start Mod

      @David-Healey said in Changing Sample Start Mod:

      What's the reason for changing these properties dynamically

      A feature for the user to adjust the sample start

      Do you have any thoughts about how to do it another way?

      posted in General Questions
      ulrikU
      ulrik
    • RE: Changing Sample Start Mod

      @David-Healey said in Changing Sample Start Mod:

      Usually the sample start mod is fixed in the sample map and you control the position used with a modulator in the Sample Start chain.

      Hi David
      Yes I know that, what is your recommendations regarding this?
      Because as soon as I change the Sample Start, or the Sample Start Mod and save the project the changes will be applied to the sample map as well.
      So when I load the project again I'll get the

      Sampler1:! Loading embedded samplemaps is bad practice. Save the samplemap to a file instead.
      

      even though the samples for that map are saved as Monolith.

      Do I get that message because the sampler doesn't recognize which monolith it should use for that map or...?

      Even if I load that sample map after changing the Sample Start or Sample Start Mod, it will still load the right .ch1 file so why is it compiling about loading embedded samplemaps?
      Sorry if I don't understand the logic behind this

      posted in General Questions
      ulrikU
      ulrik
    • RE: Changing Sample Start Mod

      @ulrik Also if changing Sample Start, it will be stored in the sample map when saving project

      posted in General Questions
      ulrikU
      ulrik
    • Changing Sample Start Mod

      I noticed that if I change the SampleStartMod in the sampler, and then save the project, the change will automatically be written into the loaded sample map.

      Sampler1: The sample map has unsaved changes so it will be embedded into the sampler.
      

      This will lead to this message when loading the project next time.

      Sampler1:! Loading embedded samplemaps is bad practice. Save the samplemap to a file instead.
      

      And as I understand it, that is a no no no...

      In my project I have a script that will change the SampleStartMod if meeting some conditions, and this will change as soon as those conditions is true.

      • What is the recommendation regarding this ...bad practice...?
      • What will happen when the project is compiled and the SampleStartMod is changed via the script?
      • Do I need to set a static SampleStartMod length and resave all samplemaps with that setting?
      posted in General Questions
      ulrikU
      ulrik
    • RE: Cross script communication with broadcasters

      @David-Healey said in Cross script communication with broadcasters:

      Move the knob on the interface and the knob in the second MIDI process will move

      works here as well

      and trigger its callback, outputting to the console.

      doesn't trigger here

      Now change the value of the combobox, this will set the Interface knob's value and trigger its callback, but the knob in the second processor doesn't get the message.

      Same here

      posted in Scripting
      ulrikU
      ulrik
    • RE: Arpeggiators per group causing missed hits

      @DanSound Try this
      I changed all the arps incoming midi channel to 1, and that seems to work

      HiseSnippet 3028.3oc6cs0aaibElx1LwVatua6tONMXwB4FuZsr75jzroQ1VxVp15BrjyEDDjRSNRZpoFxPNzIpcSwh9uXea+mr4mPen.80Bzm5a4gVf9V6YHoDIknroUjcrSHAhfmK7vu4Lm4Ly46PoTyPSFaZpYHjHYit5XgDWRrdWJq85skHTgR4ERbQQSJQOivZc0kLMwJBIRL8l7FSL2LB1Wu8AqIoJQkwdUIH7PMhLdaRGByq1Z41hnptgjBtAoiudubtRxZz00T0r.fLs3hB5Rx6K0BWQh2soDEJJY1VHwuVTVYY4kkWYukyHI071Y1aE7d2Iysyfui72pbWYYI4ucO4LYyJIj3BETHLMi5LIF1THwLqoozsdasWRcd.OjXR1SEyKjQnN7jcpdCMUE9PjWqv5sIpJ05ogLE.cQMO80zN5qOSrLQgzudO810ra.4cG9UfIlJH7lN.7x3GdK5Cdg.oD9fzLNP55h0kMH5LuV334SDKQYXilRv7jen3zWgotvrhqqA8fxR2QZe7FFPg92QpUVbwEPvGyeujI+luAc+Hew6clznxUyu61Epi9JTicVsR8ZU2owwTNfEhICcfjApQQz8QEnsHTbZYCLnAaXHQM00LXEknJpXiT.LaTLsIlAFyxk0Tvofh0LvMwF1iIpj5XMRVJMf+RatYgcP4KrQoJkZTpZk5Ge4rMAFKr1XT4R4KgnZfQ.TThgj0LLvvPgpfXZntvBBjhgUGjolEUwjeqEdkTGcU7uAkcEPMrEQdeTp0yL+Bnr2AJWmJYfQoxmYdeJr76ra4mWoZCP+eezSWgOSlAAerzytGxW2vG.S9kTL4cB80YV.9G5YiiVJKnkJV.Ua6UeBZscaznZkwdttlpT20rXLMJfpd1msvr005.JInPpa50kaxmSSljPUASCTSKpLi.2nF0qKbQXnolRt28u.7XTsvym7OkDAWjlnTtUvK5TI+BF.vhUCmYMrswW+13lZ715YZstpl79o3qU50C+hogAoUKrgsf7MyyKtpgN5kfKRdAJhYYPQDJXGHgLZ2k0tSewzTy.kh.pjEuGhf9NeyvoUAvwZCUeqaMe+96MN3W8lneJ4YbSFt+9zRJJU.vTklBl38DGzkEPYV51Kf7ObdcRuOwpl3vzUZ5iTUooGMM0VtpBDyUk4ntHc5fUHvxd0tiTgzaHFE0AeN2uJ4Wcevxe9.cI3MvubzZb.UsYy05Vv498KGeCpvU7eclf830IG9u7qN1f.ZLzMqIQIx2j6d.SMsfU68rb3JVSTKLEaHwHzVPEXcy9Rv0iojpJeh1DfcJWH95juFV3bzqt3NTcW.sNHl8fMoSExhqwxy5xoc7EVpRscafJtZk7aWpxlGS4jLouE8tly8VYCRpTKpFnuvuxw3y4A9RXKUGcXdti1xRxs4dOHlHcXfApwjywMP7FkbEzC4tHRM+7ImatxvVrvQURSrEtscPJlA3.4dIe8fngqxA3LQDnqx1d2NtLSBFM9ZleBqvaomKPpUm8vF97+Y2Q3TDAOZh3nOZh+SNI6X83qiZzRTBqpNlNpySI3ZxAGiYFWTAckYeHla3dHl5pDErQMvTSf.mW4xhdUjQvF5dmi7KyIzWLyDYwrzfhQHmhDCNB4SEWY4zvkwZqlNc1eW9zoa9hZvGLd461urS6Ld4r571ew.ksa+OxKefc+sVaUgwAnYGBnBAAZnWE2Je5Hd8JNPCd4CntSLWwEnN1t1f7RhdFyCiQgcKkmCS3vlty2fMfN1fQ3lWIxiO.hTv4jqyIlGatO3Fy1fv0GDT8wvj3UdO5R451uPNsbujnvZ2uhe5OmqMlzpsuvSdRN8dFmkT3CTvoJtUKXmFMiLBcj7D8adbNumYIpB9UbS7k3Jqw.zKMJP+6e8QB5e3oGBnuqPnnbfQhePO6wvXbDf9GNHJZ5PA1nGIYCnZEilknG.y8G7CvmliAaAvGN1mPENrRip0fnSGJPJHDNMEKUN.7GWGO5W2F.OpABlhetFpIg00ezwSrf8hJDutXMBStc3XbpPvHr17j.itgHeYwBMahkYd.bFwMd7IS7v9e7yNBFMtfHOpoIAgF5QlPiDSeRvGg3IEeDyDsM8Ob3c5shZlnYtLYf6DX00DGuuGVoEf4oK577+Dw5RPTqb8k8S+RdkCRfna0bkmiZ5m9we7e8fGgYq1Qyhx7OWWy.Gb0ILv0LYCV2fKvlNZVvQiQsPsC9bQuQA58u06NZV7f9JKAAKC67IVwpScv8iLFPLkBQoC0kXJ9gtcJuHuLGP0wTE6B+O3xswL7xIbaLSuF8awck9y3PzR1NXsUJ+R6xnGIc.FsoSjnCN26al6eb8t+sIuu1pxL3w6xInoeA+l53NjFvoHL8p7KxsqIdCC7K1gO84GEqqIYLhlfPwGpgbI+6+yG3YRLnkrvQrGvX5jMwLmY1CHzUSSEU9o+T2Z8P2RgxS8MSH5PO31Uezy2pvSP2Gsxh2ykxvhk1rnWkgSFPnAX2qNHTbdWqXGabp4QeW+Gy2+8nQ0oea+mKDi9fgaGHv+vCE+DOF9KLohg+H7A0Od9wJluP2PyWP.1lIABKHnEx675qEObNJ9zHDJ7UDcPzHCFNBx3xh6fMwrisHbhoxVDW018OCq6V2.BYwbQQHfucPB1XY7Pw0rEP88Ii.Fu8AQQc.RQyfsEtq46hFAFL5XrxVTs8FT.e0vZiq4J.Hny8zVS6U1h.hJF+BKLrWU+pi9.xGTtrnyNT6HQagGuQybh0aa0roJd7rv9DwBTIXoPCB9vFBGN0TelXucS80v.RKctHvP061kPzw6CwpZxvgwFMde6CBf2l2xlpONCZYspMYJGY7dCwssycwnQ6WFT617fg4uaD7+8XiZgnJOHJ7+E5RiqK5dvw5XUH9CMig4TMZB5yEqZwzsXSHwccwx0JXm2NWANtB5pbAUfpLBwbHNT8sr6BhEg8ZBYI6YepmBDUzUcv3EEWsX9563FTr8eiJPO.VjoiCtybYMpldaMJQ1+vdGrad87i3PGFqxXf4+5VFGDPukGKK0cfZ60Y+8yolsw.z7Ws8jwfhqeE+2+Rt5Vlr.gY9j2rCXPJYFH7iBxZ72vfwTseDAiJFQSC3fR1CRjcvQmsIP4J8vpyLxYavdIQayhyC50qJ5ZvdtPwdEQ20RmGTsGJmeSexxnd.WuWaXWuhhEp7vw0c6ZDcMUIivXt7M+mT+6iim2d9Yem87tnYrm2XOuwdd+nwy63m8hyOTmeJSO+UCj6yMMzrzc2rnc6rmto9zgpgMJGfZcICCB+cw0N2+8e3+beq0gZYWJwD1VyFJCmjH2VyiYVz.P2sg55FXIE+2AG80w.TUrEoY.C9SDh5u3GHD0+KFhn9hEyDYp5yDFU8Yhop+Ccp5uaLU8wT0GSU+YWp5m8bFU8Cf2y3T0+1e9z7cJNlp9Xp5GIU82XPp5euwU+Diwn2zLlwnXFihYLJlq9yRb0K5.xj7uW0vbMDXhy2C6dEuyQCLezyOw7ScVh4siwBaNyN7Wy1i5ss98tOHGtlNi.0Y6s+eEMBrUny9+1+s2qm6RGBef+0S6uJDmmdMXWL9qBwGReUHhSlvwLYB7eZXjLvwoS3CpzIL9G94cHEB0yG8THrTXoPXo3THbp9M1+TJsAYOzzFL9mANNUAwoJHNUAGyTEHl3BQ62bhyPoIX.7dFOMAuW9E8HNMAezmlf45gw5D9Otb8RMfaPd4wMkrTY8qcxmt.uZ9rbCQa+WlaaBEKYbxwbeT+Je+E9YtG8gQX5S+wYX5wLOdFm4w2Fy734KlGO09tkk8be9p+Ii37UGmu537UGmu53eOoBcWfY687qoo10rsjNFdrN1g8qAswiCxYrq25oDEV0raG9F.xRpdUl2f32Y9B4B5Y8Z4pd.1vj+iqMg1ZLe6.lPwYbCQav9QxupTen7L5HIan8bYGVC3S2yZWCnao1++Xvbhk4kQYFlufNvoBetrbPQMzMtz3diYG2ab4w8F+1w8FWYbuwaOt23cN5ajen8UsXZcbVKJHTtVA6rejHgCkq1KKE9+Lz0P.A
      
      posted in General Questions
      ulrikU
      ulrik
    • RE: ComboBox - load string rather than value

      @DanH yes, this is an example snippet

      HiseSnippet 1951.3oc0Y0sbijSEVsS5gwd2k8mZoXugp5xEW3AR40dRlLCPQsNN+rDXxDW1YGn1cgsj6V1Vjtk5RRcRLSkp3QfGAdDf2.dJ34XuiKGNRpa2pcbxlILy.jaRz4Gc9z4bz4bTmABdHQJ4BjWiSlmRPduq+n4L0rcmgoLzg6g7tuuhGrGlg5OOEKkjHjm2ZetlqW80Qle91OqONFyBIkjPnmyogjmRSnpRpC58anwwGfiHmPSbjdqdGFxY6xi4Y.RVyuCJEGdJdJ4YXsX07Q+JrbFx6m3GFsU3VgaOdqtX7jG2c71jwOo6i6RdR3ih9Ygg3vGMNr6lahQd2a+HphKFovJhD4sdedz7Qy3myrF34TIcbLQunKZDXYK4C3wQ5inlJZ2Yz3nAEtHIB44Onzgsl0g8w9GQinKnW539.CifRMbcfd0pBu0p.uttvqiC7VAj7bfz5VH8g9iBEzTUIGMddG+CYJhXBFhStPwJKp1W56uKGjfoZmfOkbf.VrPiVa2oyFAa0oyC9EMfPkTELBmjFSDcC9kAlLl1SIpbZsZVvrIHdiO8SqC7BjFZAI3TY9Vn+Ss5VgK2fivoOkJUszJ6ZLftb2jwfJE.ETYWdRJmAKJrZtTZSWgPaIAjgpHIxlaXrc6+HmxZ07qYMePNNkjXRnhD4.1.IDlfTwbj.a1HKgqEFkhTb7u5tEDhiiGCI4MnrXJiDLIiEpnbV.mUpud+E73VgEa9FAmgiyHOnwKZTGXJ4wj1oBJXUkPGkrbAqVGrZLGGICTyrFFyfSEQYIHnSmoLBkJH.0.JyPOLYbi5Wwq8b8t1x3wnrHxEGOwZHHOI8A+ztNlag0.HwMKrGcg0.T4hy8FAbQ61s0ZVjrzVuCKLtiIr6OHcfwFTW3V5HWB2gyvrojHcRzkPT36NToOo4N7cy2yVqHXnCoKESq.iqFOqfqaLjp2VvXDygSeVgLQsAXPYvhyrKlCRwLRrUOdv4yHrf47LvmeFI.GjGZ0J4j0dNTANXFTlynVQ7RagF0KEqLr+hl.+l+7fE.V6BODtEcB4B3J5k5ny0DAuFUtwHxR2gWcPYUdTXWc74OiqHGyZY7pMtrQvxrlLYk7x2KcMrUwV20RbSJ1hkkLlHbioZAgJyUK26e8k6c6FEZcQNBxYGxnpiSIrqqGEJ2upaMjiJPTkowv6UzXPm1fnQ518kwbjAzHuOw+WO53mUD2gewh3w3lWhPewg6gU3hcFLBX3ThPQ0mIu8HmAs7ssfp6uGQdphmB1dQzEHawwGjiCfyXde9EFn799UBqnKVLeve9E8lWNrvOt24zH0rRB+gdyH55YkT1qWBFT22aMXgohOx6G5OQFNqwoXoRjEG2H+XgzWVNjMvbWQ2ND4.22Qk2h2B2CfzaEkM8DJDpzP9GrBFcc.Nf0a.3+04KC7dY8xcrVu366awUeA+bIQfFOsXFo52CD+egxOdkT+6u7u7xpTeXtvVGiN7U6eVy+EMBBZpyqFAG+9YJEmAwZvyP1nfy9W.UWjP5sbGIrUYIZIlfikkhXlVRrZ00WyjWYOgaAVwqvpjLbwDNu.utcVnzNQQq1DCI5xVql2dPmb00vaDAKBm0GKbYb.9Lt.ba5IQWfhRP3xthZPtz.rZVAeYEmT9Y8PvOFQ5yEf2pB+mkkXcsZ05ZHYW+a0YJCgjJNv3q.5AAcZu4R+rwqHcf7u2XC8zU6HH3EmybKrwp90BsrHaH+7A3nHHa+1p2B2cedFKReR+JKiifVcVOzxbJyJWlSge9JbabIx8p68uUU7LEIzWLlW7G4WQ88hfEEWOsqVpRQsyJJZCEMt5P3v3+7nrXrp5aBzubJmAb0pxf35gsgDE0b2WV8Z6gB2VH9g9CnpvYqFi0VAFg1AuIvX9yqdO+8mLAlIuDfq6evu6MyaobM+OxZ9OxejBtnj.o64C4XvPC+hQddc7r3za8yhgjOyHVz+jiX+id8y.ejnJ0+VOio1IAthTwV4HeHIkfUPX1Qm62a3vOWvyRWVqu8yLIEm.Ox3TvU3x3XFA70J2y3tBtTNANNl8R5xZPlXp1WURYH4LhPVkltrHL9NbkUOqjm9h4WHI53KM7HrRPuvUZiU5bB1Diq4aW2co0Obo0atz5sVZ8iVZ81Ks9wkqWL1hNyntewfEKOy2261MyGrOlhUNR1mNcgMrTb+LEK71FD47INVwGK3duo99Eqe6tycyedk+OnJZkO2R8BLNhpiN6yNCtcBTzX7ifAfmfyhUETqVo3HNimNiyngUuK.41SmRDtXekGncTJ3pXIkOt2PXfGrj3Nt4SgGhhEUuh+J4K59J+omVY75S7svMPWdK3+j31a0zrarS3Z2pNgu1w6cuq3aUW22Ou+X.Xcg5+wiyuquohdftA7+sf5Pdl9AjEM27gNfift9gD29f0z8Vsq6TLu5HBKxr3kvO4L6VzzTyraASTXwVAms7+17dPu0f2QAP1LfWLzNN1MkVByVngDzn6sBJSvgB92DZ+xEZrdeCE.kLy+Lf5v76v5ftEethRnl.8q9lvvpa0UT7g2UE27tp3V2UEezcUwsuqJ936phO46VQ83D6jo3I1hoHzQC12l.5s+hDv0P+a.OA7c9A
      

      and the whole project with some samples and maps

      PROJECT

      posted in General Questions
      ulrikU
      ulrik
    • RE: ComboBox - load string rather than value

      @DanH Could you not use a panel to store the string, if it's baked into an object.?
      And set the panel to saveInPreset

      posted in General Questions
      ulrikU
      ulrik
    • RE: Enable "SampleStartMod" via scripting?

      @Lindon Haha, allmost exactly as I do it

      //	============= SET SAMPLE START MOD LENGTH ===================
      inline function onSampleLengthControl(component, value)
      {
      	//	Select all samples
      	local selected = Sampler.createSelection("");
      	
      	for (s in selected)
      		s.set(Sampler.SampleStartMod, s.get(Sampler.SampleEnd) * value);
      }
      
      SampleLength.setControlCallback(onSampleLengthControl);
      
      posted in Scripting
      ulrikU
      ulrik
    • RE: Enable "SampleStartMod" via scripting?

      @HISEnberg Thank you, that information about the sample maps are a bit worrying though, the client has a lot of sample maps to be resaved, or fixed with a script as you say.

      posted in Scripting
      ulrikU
      ulrik
    • RE: Enable "SampleStartMod" via scripting?

      @David-Healey said in Enable "SampleStartMod" via scripting?:

      @ulrik It's just for editing with the mouse on the waveform, but you can change the value directly in the edit box or through scripting.

      Yes thank you David!

      posted in Scripting
      ulrikU
      ulrik
    • RE: Enable "SampleStartMod" via scripting?

      @David-Healey said in Enable "SampleStartMod" via scripting?:

      @ulrik That's just an edit button, turning it on/off doesn't affect the sample offset value of the individual samples.

      Which would be here
      4684aaa4-15c3-44fc-b75a-6a8fd3d67b4d-image.png

      Aha, so I don't need to set it to enable then, if I want to change the SampleStartMod?

      posted in Scripting
      ulrikU
      ulrik
    • RE: Enable "SampleStartMod" via scripting?

      @David-Healey I just want to be able to toggle this button:
      Skärmavbild 2026-01-27 kl. 23.09.39.png

      posted in Scripting
      ulrikU
      ulrik
    • RE: Enable "SampleStartMod" via scripting?

      @David-Healey I have Midi Processor script that automatically find the Sampler in the chain using "Synth.getIdList("Sampler")", then I would like to enable/disable that samplers "SampleStartMod"

      posted in Scripting
      ulrikU
      ulrik
    • Enable "SampleStartMod" via scripting?

      Is it possible? How?

      posted in Scripting
      ulrikU
      ulrik