Categories

  • General questions and announcements about HISE

    7k Topics
    60k Posts
    S

    Hi!

    Is this problem have been solved?
    I encountere the same problem with my project.

    When I export FX plugin Impulses files are switching.
    The file "Room_size1_time1L" number 16 become file number 1

    Thanks

    Math

    See pictures...

    HISE PROJECT : OK

    Capture1.PNG

    VST PLUGIN
    Capture2.PNG

  • Scripting related questions and answers

    1k Topics
    12k Posts
    S

    @d-healey BOOM!

    Thanks. πŸ™

    I'm quite certain I'll be signing up to your Patreon at some point. Doing reasonably well by myself so far but I'm only scratching the surface.

    Appreciate all you are doing here!

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

    153 Topics
    1k Posts
    MorphoiceM

    Building on @Oli-Ullmann's example solution in the 2023 thread Pulse Width Modulation I added a speed knob from 0.0 - 10Hz and limited width and depth to 50% so there are no banding problemos

    This actually sounds really nice!

    HiseSnippet 1801.3oc6Y8taaTrEe1jrkF2auPAj.g.oQQ7AWHx0NIzR.Aws4OsV2jFqZ2VP7Az3cOa7nr6LK6NaRLHjtuG2uvWte39Vvi.OB7Hvavkyris2YcbRcCsoBDVQQYNyLm424Oy47abZmH8fzTYBwoR2Aw.w4e31YfP0ey9LtfzZKhy651NKLEnOk6q5S2S5mExTbofbuAwrzTvm33L+80q1YwEH4e9sMtGKjI7fBQDxSjbOXWdDWUHscy+EOLbGlOzkGYs50Z1xSJ1TFJyPjMuacRLy6P1AvCY5kMmK4Arz9DmOxks5p9A291e559dq8IMVOfcGeudqt9m.9qr1pv5fu+cV0uWP.w4Ja6yUxjNJlBRINKbOo+fN8kGKLGvS3o7dgfdPCRG7jMh2QF5qMQsTxl84g9sG4xRInRaW3.m23.ea28397wxKbjuQ9DzhcX6.clqL7luD7ZXCu5VvaJPxwBRKXfzMb63kviUEynwy0baITPR.CiS1PwrVxb+mEb2ThqPnpEwND1IAGLdGUWsd8koqTu9M+7JUt0s51GnnB3GHhv0SkATEJIZbxBkI7mTTHbDDR4oTeo.PcvEzkjBchPxR0vwFbP6MftWM59g7ifD5iCCiXBAN6wGebsTUlOW1KQVS.pJUvTlTE8HVBc2c1eXhpLoA8Kn4oz0N.TikVcoRqYIzLJ19SYGAAxjn6CBH4T5H2kmOp5Rmdkk0zghd3grEDiWc9B5H2oVIxnXzrEppKYslos4Nw.3+L1b9ZN0lyu2Zt1dNauXUZEXrxTEKQkGIpVuV8F5XbPlvKOrIEOTpf8EUuYkenxhU9wJzImJHXpyoQPhLLDU5zl1bb4ybqa0Jf1SI1Vvvbdz9zYIP9.+kwzHbzwXcighlHupld+57QHH.PkezzS57XgdZgnuEyvT8S..8agYP5moUPY22SzSr7v.h9NfH0HabdsWVRhNy2neYfVGZ4XVVMJZM3VKYM97zwlCPsqvxS060ajyxmBm3Elkh1Q3.MTKgrZztZuA9SJnn3MHTa5si2zigD0.popB5S3AUsRzzoA4FP0a9k0uYkEQm9hmNWtFpz6pTI7dYJnZi0VdhCuPIzOt7ct7zLiKYWsGAWwGQm94iIWK9iKdVYKUEYQ8fjkMwlw4MXosx0KcO65k1ky8L2BrVnTzRvU6GChypHOY3UGr157CQE9Wp7Jq+ygUV6Dx8gDBGKfdcWK6jjC6hFa+5FjYPEutaI+7ESIivQdsgIUwusA4ws1hoX5FFCsug4Lbs6zYK3Hrcso8whtaAoGpjw4Nfg0NvdeynK3jhisayAiG7uYMiXmXaUJ3DTsulqYaDqi5pyrq5LNLjQQ7nPZKecS5SmsibLRP5EXCtV41PgVaPLP651TgHSfda7dsYLpbVnsayHtueHzVlxy4ZUviprS6CallEDvQIttzG78jRF4q6V5NYY66Zt6j.eWFH7FPv5iPYIiBEFXRNMkBjLyHEayvQyC7LnHZJaxUCryBegQ6YVg3MbayUd8mNFmaJXDuf7x.iCIKdc2sy6RU.vEb24qd4vLz93up43eO26GJ6wBKbTXo.DIfgg3GLbZ534oiWPiyg++uLq7+imY9+Nyedz2abAouuvKK56KLaAoyGdyZN8acpvT5k3MuRO33FFX5pq7jisIqA8Lw083wxPVhd9hxQVyqSVZYWPjLpR9vlUiW4tvA3YZKoKfUnQFtd1auSjThTJEGLYJ3tRYrgylusRZ2mkp43hbiJoFTsck6wRw5qaFJ8NzdxVGHjIfg2rs7MyRUxnQFP9Ca6nf37FyNei6sWqF9I3i0+d8Mwes59uXF+7TSqw4G8malSRwDA53PtNW84OI8R9ZkFwiSB+S.hO2layOSM2dgi2KditWLP4QxLEd4dOF9LFMMoGlE0A6p3AHRDBHT+1Am4z2EMiqqGmegFD94C9+3mgS1PO1Y3jMFMos49NFy8Z47KyeLctwNU9lWpMP22SgHnaBSjFKSgFkpcAQ7tH00zRRmXGqXSBc7NrkR1BTYhxp1HxZUe8Oq8D6fdBq089MGIzZkWsYalnjxvwkNu83mXOzTrtCfVt+9odniQ6mKo.KJ8Fw+z+y4W2nP7J1L5e.KwextEub3gbk+RvC4UH8+RjPVbDF6vihCgsEGAg3Sayw3ahutLfkEpFIs70v8jBYbeofWJn+H.KdbvAPhM1mpAcWkhY25+sa9HHDPBC1OYaWj+LKYu7Gccg7EMdt+FfmZ75ccMvkpqcP+iD296tbuh6xMy2PwRl+4IR+NtXY7Un4ga5q938kAUhKiyHh4kH+1geCy5BFWMWBZ2h7+8ZWQS7sQ4uxvO+N+2Mhv9NeqmWY8LdW3aWl3KYjP96cbw2gtK+cyvmGZx4Q1Ns217vPmwuJ0YdxuCeOtH.A
  • All about ScriptNode DSP nodes, patches, SNEX and recipes.

    236 Topics
    1k Posts
    MorphoiceM

    Boys, I can't wrap my hear around this envelope and how to do it in scriptnode.

    arturia2yamaha-oDfyb6vh6A4zBXQDrM9Yr63Wh_15ohQI.jpg

    Basically the bottom is lifted by an Initial Level, but I can't just "add" the IL value to the AHDSR CV because then it would go above 1, so I somehow need to squeeze the values below the sustain value.. I can't think of any nodes to do so, any ideas are welcome.

    Is IL level would be SustainLevel dependent I can get the value with a minmax node from the 0 to Sustain, but apart from that I'm lost. Anyone care to help?

    Also is there a way to display the values so I know what I'm doing during my experiments?

  • A subforum for discussing Faust development within HISE

    86 Topics
    739 Posts
    MorphoiceM

    I've added an LFO with variable waveforms in my faust oscillator,
    in case anyone wants to see how it can be done. This is also a good example of what we collaboratively came up with to make a simple Scriptnode synthesizer using FAUST and the Silent Synth node. So far in testing this plays rock solid.

    Though you can get the pitch modulation in Scriptnode using core.pitch_mod this approach allows for much faster LFO times able to give an FM Synthesis feel to the sound.

    HiseSnippet 3674.3oc2a08aabbD+njV8AircRcRyKsnGDPAnbno3wuYLLLs9JVHV1xhxJIHsv4zcKEO3i2c4tiRhNH.4gBz9Vds4khfh9GPA5Ks.EMF4w7TQ6+.I+EjTf9bUm8i63dGORQIK+UXhr3s6ry7amY1YmY2S3i7wV5X8G3YY33f8kjRM4Vt1ZXOOaWoTo2omCVJ07nl8r7auRaUCKoMVUJ0kP22xyWcOS7t1FZXok64n54g0kRkZx2gPTp4lRh94GtwxplpV.MgMIIQGzsM5X32u0sZ7tFllqqpi2wni.0kZrgls0J1l1cA.MIJujip1CU2GeGUBYSfjtkpWaoTWAoVrndqJUpUWWqTYk5sTqpqsWw5kw5EJUDWGqqWsn9dsZIkZ50zM7sca5q5i8jRM0x158Z119PKl.10vy.lZjGTjZBRl0751l5joHoUoUZaXpGpo7.8FRPuMISu85nMMzMBauu96UocH2eDhJvTSDEdSFAdJhvKu.7R.RoDfzTLH8ZnlZtFN986gfmWAsgkO1skZLaIiVoTeEZEaf.K+bcTeHdcW3gvAjoR97YKlO+hWqUWKMeCaKYaq6X6iuqUlES+IomK8mlVNdWsZkXeDo3ZaZhcSrahmg6nFXFqtc1C6lU9.Uyt3PBgYeTUJZ3pTQKtFaRKPns0FVF920AaML+.ItlBT+SyQEPpOU4eQtxuoogN1Ux.zwyfdWK68Tjn.Nvqewe02eCowdvEhNXxZtwevEiL3u8d+0+voXvkhK4u8TL3xOIvtRjA+kuy28M2P59arppuJwsmaB.yhC102fXwSsJ9.HnCaQvbnUwdOz21gZi53XaQLXol+DsRGEh1Ga1nWen+AM7wGAb.gZpdnzgF59sC67yTazFareagXcazvIviYCf6Si1ck6p.w0bgPZvpJRaLN0wVG.zOEcGa2NplFOBquE1UC.KD+SxqaqVFGQ7C+kRcLz0MwaY6YPVPDyfDNAm6D8j5OAktSRSvYQM+3tpt3yk4XHyNMXrnHF6kDFmATWFdmOPLfWmFDVZnZQcNBu.ZqtldX42ihvyCbNOiiLFdZ.a4g5SqG5Su06s44jOMgSmFzUYnFa8PicSGLrY04iwlwKoA21D1v1VuqopezcwI45v6frrSbqSx9iVvxwdhA3N21Zebg3qg1xvWqcxXbhDvHD97oAF4IDcAzZsZg076CvoPq+9OCx94mDHeXqgCrM6RUED4+FhsHuM9.rKDmWDPq51KZJsRRuG1Wnou7K9hq93aCn0RKhhbiNNj0j2FasufqI3Evw0FVNc8Ea+9d3kgba220tqk9Nscwp5QGFVGapFQF2xXEAd769sMVUsiig097lZTrnxiWe8c3a6wG1q2XcCSd9yKiVZWX12A6szpjovRqBaZtm8QKcqMZt1RAY4uDetrM1CV55AD60E9ketCUO.16AzDnTDN2Q8HxW+8fjLssc.anqePejFVyROn+TSN11YkQ6lssMX7r1eSUeWx1gn6zsSSnXAML3kYYgMI46kZBRlYrmyGfnlPoOzGNF9v6Tg7bJdmJAcJ5JeoH0D8Nfwxg5IMOMhhLqggTPzm06x+ywsfHmwtfn0rH1n02Tjiqn55Z.g0fh6DBg9CeUXLhA549VFd1V1TnbyNfKXTeSVuqh86ZE.lO5y+5+SPGMch6tRPeSL.UcJK8hDGbxQUAlxYrBrYdZUA1TiWLnQCuWB1UI0DC5mOC5l2Z0layK6m5hul0AXSH05HHaSvIvosskglna31XXQ496CapKf2DmD2z2Gh8sRW2ChrxXUrlZuAZkQrXDMVK2FheaFI9HXRFfc8a3CazrKDgKZz8swlXUu9x6q+SMVSydSZp3mIk9nieE4fCFkiwEPrIoLMdvo1q3YpS7ECvJyh7hMXmGQcKdYPudID2g8kBE6EQ70RunnZmgA1zncg.XZDoKDVKrsSDmPhZ6nRAhP1dPPQWeb7nMF6gMiF53TkgsxS+p.l7kgp.dlGOfjliLz2IUuzy8PWrDudAApyFXfaBEXX4SyPlhSd41OSSK9oSRlS8i9jLeAzM+b3XLN2w6y6iz.sC+ry1x1rG67y.4R..BVr0LBBfRhgR98wtdgk2xuYmeAJoqQQ3lSPmW6UEduHR2A6ens6CoSH92gslYH+.MOoaZZZeHYVETOAUP.3oGs8Ln74f+iQE4rDM3tDv7j8XPg+AUwxp9+Vpd6nZXRbXfbnbfx6uqEMLEIlCwHcG51zyrtpFLe6skJ4PadMD4Nf.KK1MmVnElAy9JXxLlcbJrdH5msBNYQOF9IbOH5D63G.v1gdJnSf.RH8SzHSxfwzrqkqCD+fI2Hv5MDfUeRRBPhrXbgPJAHLMc7Qk9EoRG7SnxNQwxG1IIQgang4bSdBVFOASzzDm1kcQOuBZcW7G2kdHaRBJWIo9QE1Q0ceruG+JfrvZL+BpkkcgCsTgzmU5Od1QA2B3bLlNRjMOZCucI8poZFfOvGSPscAzgtpNLooHMTWJOGSXusHqTopunC+znEkBLhSHflYQTGfQ.j3NPA.IbjOQVxQnuh6xGZhh.04An5hyQ6JQ+svgcpv4Dwv4bnULAVCNEbPdAT2f2yAHhpTLxuD4nFE7Z3ChF+SzYJ0rgOAwW1zvhS3rnqVHOIT1lpGwaZFDqkl9XmlFOhd4evy4qy9TsZkR0JTtVAdRU6AQwBDKhPHTxAnHL8iz1M65a2Q0msYoTxXYFzUUJDAJSiJTJBRPHE3Yt+jspqG97QzfZPY.0fxoQMzB7geBvxz8wBLoihjYQkyGCJuNvM.dzOJkpmWQohR.PHARhJavhVHlzo4Vjr7YHsu3Y573pg.oWpZo5UKUlI8zHyV1qhcf0K6Fb23Ge7w8969+kaDERCQWN1Pp7PbKnHnYaUGbeDDj9XRFjg3ODWfCaMw.ZglODeHKrAiIkDPE8h8BQ0+63Ee+OB+yZ7DfpjsLI5flF4ANnz5c3Cl3BM.owAix.9rMOjjEb3tb7Mblgsjz6fVO.79hD27UgkFzz9xw6M4XmACUH22SJNJISKS7QAuwEAYWF9U3K7aXXJX4cr3gSOlK9liX4Y1dASKQ4UnP854KUtRgBEKUqZsx72ho9oHv4vkQJEJlqRYvAA7PTJUobwX54YIgZha2E.0kAoUjuXWodg70KTW.gWFUOWMpcrhRsxEyWnZwAwZkRUUpVSoZw7UJqTqBEqShtmnyPwR4qTpR85kJTtRkZkS1YPDgnngtqEKzMsAVLIQ+tKiJlqPsh0pVNeP.LoSZMvIGcJ17sHrxjnwpWuFrvLuB21zrisseaxcSN5vPmuwpF1VXQStDgJLjMMNiwo6Kn4PrqmSXeZkDjEy9FOQtvjv2efR.dEVJQ6mbda7QbBqhmHh.irDcxjiBF9t17XgUog0b2e9Gbw3+saH5cPa8w6+meiFC5ZR66Od7wu4iipZ5ycoQCIIoAfTiOuwXAoO5xq9uuwP7R6e9RIiqRMjd5qplGsM1CyE8.75jUXw7mlAkPMkiS4.AC7oX0.wJCaHy.DpUK+n3+BHUKUyddPYBs7GRw4jdNk6rspATjlZuk61pEeCtHsLp84jF9xqoD8YXKFZRRh8jhvHZi+uGe72eijhiDy2pw28neyf9VrC0SnN4SaYyBY0HM3rYYRkICtXvHgECFMh1vi+W+imeyJdMUCLilEsBqjmAmSYRXNUqwIrJMw4DE8m+yovx0RvNsdTutQEz5Cham95mq1IZQemoyoYYa6G1Qkd.jmoWZ3mIuwQ+XQFcT0bse.+.CoGFBsEHPqEMn7bnMIOKqD+0AWh7RMa7.MsnrZfAV3rNvhm0AV5rNvxm0AV4rNvpm0AV6jGH4ts30mRVwB4es0ZzESoREjxKj3fDtydXcntR1MNPVyE1hE9HxahH8n3fBUw7ewPxaxV2uT+Sf6t4z8bB9ixPZhxHzRKoi0LUcwx1NznHxK7gDX911V+5EtVZiNN1t9YVvyWmxqblF6svhWK8Cw8jutbaO5qablEfGWHawJYymUoP0rJ.AdpGR1XSjHdSKjUgPWVXyYBgz2Jx3jF1XRDSeEsGfZZqK.DVl+S85jQkuLLLKxafdbYD1HLHQY3o520kZPhB9fViSN4bQhPIoABPTn+TJOEFTzeXmHv9vNw3EaSFQZXsPH6pJExVnDU2RhaKRD4YFI4AlkOe.6HmkVD5fmWHagB4yB+Oo9UB.A5H6WKRG4YJ+JjmPZH+VZoVAmN.PNwKgJgqHqP5K74qKumJ8dM.uhBseTF3WvfSKNV93.5H+oXTfpXyPlFKJmdN3y.8QfzhBc4g6Xv6hohHRHMwqC3dFaubN1l8.WdmG.MkITzKJeUYnSaOMHyKwluhb9bEJS9M2KEXWHKn9WTpyJq20GH+5xVpFGfe.LiawXY.wYtWVYu1Fs7w5KJ+Vw6wosJ.0zGZ.NveRZY3CsEfeDBguZ6lQIKU8.SHR+bdQz2p4Z4ppkgMh2hgDFQBf45xEfIQlfgcUtHYzcu.U+RDt0b6qk9Sg4IgQPGBqstJUEBZoLTmYt5oDHTxuHOB9tDMD8uACPgCVFEhrFTiQ0ub01UT.5B4siX+kJyDRwECIIjYvVqpV6ahiauJQnk5vbE49QQ.XQWYSrQ14Xe8Jx8i.PFYUhyB.g4l65D6Mvg2hwA52nzBe6ZvOo4+IOPsPZYI+y0jjFiHsMiFo8mO4YMRaPIBxyIFig2XrviBgtlabhcwi2L2biUDmHjMxXNQobTQchP4vh6jN3X4iLqBZbAJYASK5.BNt53z2jGZNaH6CImbl6CPNoQF4kyF.DJj4qNBX4hYogsjIsa1hFxoeWQ5g9Wq0gpGf6S.q+2lyAZrMSHEdqLEyFfgmlgOUHwKHyK5+R0nmXfVO1FPIrNVoVdZPTt+o35Lnoguh5+CrIK0r.
  • If you need a certain feature, post it here.
    556 Topics
    4k Posts
    d.healeyD

    So I've implemented the only one file browser at a time solution - https://github.com/christophhart/HISE/pull/657

    As I wrote in the PR comments, I can't think of a reason you would want more than one open at a time, but I can think of situations where the user would spam a button on the UI and open lots of file browsers.

    While I was poking around in the code I saw that it's very simple to modify it so that the callback will still trigger if the cancel button is pressed - I wonder if this would be useful for anything?

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

    2 Topics
    10 Posts
    LindonL

    @cassettedeath said in Customer support when releasing my first plugin?:

    Great thread - very helpful, thank you.

    How often do you have to update the plug-in build so it runs on new OS updates? Is this quite regular or do builds generally work on new OS releases?

    Like Dave says - its mainly Apple futzing about with silicon changes every few years - otherwise they should work fine across OSes - winodw sis much more reliable/backwards compatible

    Have you had any customers contact to say the Hise serial key system isn’t working?

    Which key system? RSA - works fine - HISE Authorise - works fine.

    Many thanks

  • If you encounter any bug, post it here.
    1k Topics
    11k Posts
    LindonL

    @Goodflow could you do a pull request? Thanks

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

    11 Topics
    46 Posts
    d.healeyD

    @orange said in Snippet: Horizontal panel-based slider with hover fade in and out:

    It would be great if CSS and LAF could be used at the same time.

    I think it's on Christoph's radar.

  • Everything related to the documentation (corrections, additions etc.) can be posted here
    61 Topics
    423 Posts
    clevername27C

    @Matt_SF My man. πŸ’―

  • Collection of Blog Entries

    72 Topics
    680 Posts
    M

    @treynterrio you can use this code if you have 2 inputs and 2 outputs or use the previous one if you have one input and one output.

    The first code you can use in scriptnode in case you need to process, for example, mid and side separately.

    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 with sample rate scaling delay_base = hslider("Delay Time[style:knob]", 0.5, 0.02, 1, 0.01); delay_time = min(MAX_DELAY-1, delay_base * current_sr); 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 using rwtable reversed = rwtable(MAX_DELAY, 0.0, phasor(delay_time, 0) : int, // Write index _, // Input signal phasor(delay_time, delay_time/2) : int // Read index ); // Process delayed signal through reverse buffer with gain delayed_and_reversed = delayed : reversed : *(dry_wet); }; // Main stereo processing - apply reverse_delay to each channel independently process = reverse_delay, reverse_delay;
  • The nerdy place for discussing the C++ framework
    138 Topics
    946 Posts
    d.healeyD

    @ustk Yeah it's giving me super weird behaviour too, and it seems like the data objects have a "memory" so even when you change the number of sliders it shows a previous number that was being used.

73

Online

1.9k

Users

10.8k

Topics

94.2k

Posts