HISE Logo Forum
    • Categories
    • Register
    • Login

    Silly Button Question

    Scheduled Pinned Locked Moved General Questions
    solo buttonmidimuter
    16 Posts 4 Posters 750 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • trillbillyT
      trillbilly @d.healey
      last edited by

      @d-healey Yes, maybe Im a bit foolish, but I couldnt get the example to work with just the Solo Buttons. I doubt it has anything to do with MIDIMuters vs Gain as all that is being controlled is the buttons but for some reason I couldnt get just the Solo button to work.

      1 Reply Last reply Reply Quote 0
      • trillbillyT
        trillbilly @d.healey
        last edited by

        @d-healey Here is the code I tried to decipher from your video with your technique. Maybe Im just way off...

        inline function onSoloButton1Control(component, value)
        {
        	local index = SoloButton1.IndexOf(component);
        	
        	soloState[index] = value;
        	
        	if (value)
        	SoloButton2[index].setValue(0);
        	SoloButton3[index].setValue(0);
        	SoloButton4[index].setValue(0);
        	
        	for (i = 0; i < SoloButton1.length; i++)
        	{
        		if (!soloState.contains(1) || SoloButton1[i].getvalue());
        	}
        };
        
        Content.getComponent("SoloButton1").setControlCallback(onSoloButton1Control);
        
        d.healeyD 1 Reply Last reply Reply Quote 0
        • d.healeyD
          d.healey @trillbilly
          last edited by

          @trillbilly It's no good taking that code in isolation. It's part of a system, if you don't use the system as a whole you end up with Frankenstein code that will make you unhappy.

          Libre Wave - Freedom respecting instruments and effects
          My Patreon - HISE tutorials
          YouTube Channel - Public HISE tutorials

          trillbillyT 1 Reply Last reply Reply Quote 0
          • trillbillyT
            trillbilly @d.healey
            last edited by

            @d-healey I guess that is part of the issue. I dont need mute buttons, just the solo option.

            I guess I could add a mute feature but Im fairly limited on UI space as it is.

            d.healeyD 1 Reply Last reply Reply Quote 0
            • d.healeyD
              d.healey @trillbilly
              last edited by

              @trillbilly You should write your own system that does what you want, taking guidance from other examples.

              Libre Wave - Freedom respecting instruments and effects
              My Patreon - HISE tutorials
              YouTube Channel - Public HISE tutorials

              trillbillyT 1 Reply Last reply Reply Quote 0
              • trillbillyT
                trillbilly @d.healey
                last edited by

                @d-healey Yes, that what I am attempting with the MIDIMuters. I thought I could possibly take some guidance from your video and implement it in my own project, but as I now know, this will not work.

                I'll continue scouring the forum (dread). In the meantime, if anybody has an idea or direction they can point me in, its super appreciated!

                d.healeyD 1 Reply Last reply Reply Quote 0
                • d.healeyD
                  d.healey @trillbilly
                  last edited by

                  @trillbilly Another option is to post a snippet of just your solo system for us to take a look at.

                  Libre Wave - Freedom respecting instruments and effects
                  My Patreon - HISE tutorials
                  YouTube Channel - Public HISE tutorials

                  trillbillyT 1 Reply Last reply Reply Quote 0
                  • trillbillyT
                    trillbilly @d.healey
                    last edited by

                    @d-healey Here is a snippet. The code is ugly (fair warning).

                    HiseSnippet 1898.3oc6b0saaaCEVJNpq1osqcncaWJDrKb1ZSsD451vPQSiSRWvhiChyZ2tpfQl1lHxjFRzoMXn2r2n8Fzmfg8.rK1k6x8FrQJIaI4JqnJmelyjuHv7muy4SmygjGRJm8bXVXWWlihZ4CNY.VQ8FZsNgx6UuGhPU1dCE0ao0.4xwN59Us9ICPtt31JppkdlrB0xKp384uex5HaD0BGVkhxyYDK7Nj9DdXs6s12Srs2B0Fe.oejdCWaaKFsNylMTvmRZ0TFfrNB0EuKR1sEzTTu1lsIblSKNhicUTWbcV6SZ0i8Jpe+eNwkbnMVVvPokPP9UuEytsjwxuqTuGwt8didtcUTTu9dgVgR9Vg6p0fzlLt9Pqws8ZPODQT6g5BwoWoXzyHJ8pEgdIPI0HTZQeJcGsVVNjA7vVj7YIssoBmSGjvrGkJ98UYgeaIs5LQOn7U6iNBukinvXDUeTsZ2WW7mU91JUd3Ca0bml50at6A62bmVxJpirs06vbz2rSGrE2shv83x0OF4nKsBMFJjig9i08hXVsKlGynUc4vNsrPCI.1LKfMmBXPV.ClBXXV.CW12vbDkcnqtnibBsqtPZbGlsMts9CzsIziz4r.Kj9wDTXrg91aDU0BIZJsVi7GB4Um0e.iJJHTpWySvVQcfzg.R.BLcHvDfXXlJDCyDHV5P.I.AlNDXBPL.oSLv6BwLcHlI.AlNDXBPLfoSLXBDKcHlI.AjNDvnHTqQiT66OWsLhUFV1YH0hSXzJDpHREOtrNiJm+Y8gbNiZT2Ohtp0HoeeAArGhWoxOWobjoA99oMN3Kzs5gncEe6wxpEiDjcPn+9r1CswUpT1O7dUWL+4RIWsARLzqOgVMnAgPqtbezqWdk.cq+45FqVaEwiW4wnCTR0vJASSjfrHRPRhDNMQByhHgwEY4JuQ3eR1AFwAr7JRcF3Fjl6CEK7UMIejzcmluz7BxWZXNEqjngS2JI5TB9xoIRPVDIHIQBmlHgYQjPyb3KMOceoYF8kfKJeIXZ9RPV7kfDL7lSSjlYQjlIIR3zDILKhDBxguDb59RPF8kvKJeIbZ9RXV7kvj7kSSjlYQjlIIRvzDIHKhD.yguDd59R3XeYDW3tLNtIspmapxapnOYSc5jXa0G43bRrY4FebRCXU5v9GhchFjH6nX2.w2hw0l9VLhtCHKeqSjNxnaSI7lCvAkC2ijQBaHQIv7J1ZxsCXnnqbuMlbqfMl3aDUHBgbSsHqbo38HDcSgJumhvb1EAX1EALeh35Z9YuLKnAyDZ3Lg1vblX9LgFNSnM.yjGalPCmIzFyVr1LgFjD5eX6MPbj7fIBlHPL4v.rCmHmCRcC7wDKr+wTTVaCr6Qb1.EUswSDKlmJiyU7ZAL0OVnwSjeop3Kuhzl2KjL+zZ8vjt8hbbReyZJu2JxzWQ+54th.9JZG0yaEA8UzeMCJ5C7UzMGcPSHJ1NPOx.Ce83J0SXjwIiK71WsVb881eYr9zT+CQEGOZsI0Rp2HhdKe5yclqvhAHGg7inn3OGCFs911skG6Y34MoH.h5iEeU1xszHcoLm.XJJuGDGLIw24bk3fyLhCmj3NmqDGdlQbibNvNmD23rKTYRhO2DpLIwmaBUx4TyW5gJlSR7clSlNDNIwmaBUx4hqW9gJSR74kPEvjD24xb5v28x3tsVC4otf3wuaP4EhFzfX27wtPN4ktQcI7ShdgoSdggKlsKL7T1qdFo6cz1ivs5kLeWHA9JR++7luAW+5M07uOsPxtn1V+Xp205YNUtmOUVR6EniwdWUnGQtmW4NLm95OCSwNRapQJ2J9um0aEePluU7lVbAENvAQcGvbwFQk7DsYFssMv7gz3c2upX8R93sk3wKR+t9ZipzLZkhMHDSXhxwjTCRjsJ7mOYSJR3PZgEOMsa5ZIdXk1tnCG1ansK9ExQ4FQAFVsYzp+NjSagewJV.Zo3QEZY63whOtMR+SObQ8ZmWu4.KlMdeJuXCpuK8VJbROOVEaYmXLpTleWFLR8cYHxQGtPFNDhIl6MWGjwGp0g75V7gVGIOhV2DDxE1L5mMuBHkGwwVj9CrwaROFayD0H43GosAtCZnMeTsw8iMXT1fdLJI13j8wbGR2t3XC+R7A5obNx5nvZt6Z6iswH2H1yOascHTLxQXmv4zVX7d+5vjn+5S07oqtbJT8qFqDW5+8qDm9HTwpLyOd5OQSrxmotm6V+x2euOan7VDafDyFHy2d2g8aIRyvBKXLkhskqfptfbRW+x0jkkzoEl11qv+H9DzngrrZPiFiZLmoTYVjRUQJUy8oTYVjR0UhTpLKRopHkphTpJRoZdNkJPQJUEoTM2mREnHkpqDoTAJRopHkphTpJRoZdNkJXQJUEoTM2mRErHkpqDoTAKRopHkphTpJRo5+FoTcQni9HKG1KC9UR58+xCuZDO2Tu+mgTVqgrr93eATZZ0VslRewReuzxRFS+.g8IYLl4.CHGXf4.yWlCLOJGX9pbf4qSEiLqimNjy56G+KpXuM89sEop5mmn2PAk+ELz2ziB
                    
                    1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User
                      last edited by

                      I Probably should have checked your snippet first, but here's my attempt at "solo" buttons. You can replace the Samplers with your MIDIMuters or whatever else you want in there :)

                      HiseSnippet 1446.3oc6Z8uSabDD9NLGA6lF0DkJ0+oRmP8OLJTj+AgToTTL1.QnF.KaJpRQQQqOu1dE2s6o81ifKh2k9HzGg7vzGf7FzN6d2Yemw0XeTfzVaI.O6Nybe6r6NeeFnNmYg87XbM8rG22Eqo+Pil8ohd05gHTs82QS+qM7X1LyV9BAiZhOG43Zi0p12E44gaqoqm40RW0ytnl50mdUUjMhZgGNjl1ILhE9MDGhX3n0q7SDa68PswGSbh48FU12hQqAOTe.VYLJn4hrNE0EeHR51BFZ5KsaahfwaJPBrG3SUV69M6w9.Mv+SHdjV.HAihZMgDELrVsdD610iVxdZZ5On9vBPlfBvSMNfzlLX7gEhuRMg4vHhWCzWXRPp3L.I8XPZw.H8XilVbhqX3LR77EF6SEXdGjUxsi.e0V3OxXTiAdPEq6fNEuGGLFDQ9MKTXMS3aq9xb4fxsmv7LDObW1ybKy2FEaWrnFywkQAi7qTU4PwUVcsbli60jhpTphp7Jq9tDXzScBjq.o5rpJLYcTYkeklANn.YV4KSyI4WoozuPfPn1DJ1riO0RPfaDAkr5bXiIuUD3WCPpsOd0bWjKKoiY9PqrY6v3l4asUgWZ15GCK1qaiocE8fQd1yjtbgDLxfBm+ssdm4VaYNH2qp.aTU.lccOrH5.P9hvFJLM11CK+oJYYGlIoumHAS9BAN92lnv4uLm5qf7cQzJvyjPGrQn.j2UQADVtKgJ10bRRFnzENytFx1tEbYOerhJjoq4P0MKAkmlDLX2lQOjIvGQyq1ZycYNyQmpSmwNWX9g50XmV1BjOo.yS8cZg4wOXIcD5QjrwyRSWiGqfJRLGYz8oDwQt3P68X1skMTju+psozBKoPCqLgHDdmP0t5QgsqBpuZDHIYMB2t0TvON0f1LDdoAguTZBu7XB+m2eGj.I66FthfUoKlKHxho9N3y.hqftvYM1A6cpf4pVxgmhf5+TrnOON6V+AFezth1LkoRxLYn+aPr2frTNHKqoOZVtJyCv4wZ6aiDIIBkL9gS.GRSv9HYXndDQ+3JBlA1wBSjcbZg3iMpSDV8FOFWXLXDN.bafwPMEeowtc5fsDCA3hF68KoU.wz+3+1fG+SLZJ3XjCg1MjKSggbFQLkIpNoTNm6TKmCZpZyPsaR90Xt8wJU8gZDO4n+dE0iZaGlOMwyJD4MvtXj.1liEyxUZz30blu6nQ8oWoNTbLG5uCkh3SbDEC0ZQ70XMNyyqCrbT4xK9T084ck0pgiz.eFPDlbrC8cf8aJEnNkW2zkMa7vx8Wh0AHAmbdbuUOkBGiT6wfFWkcwQrKMhc4Qr2XD6mOh8liX+hg1AEzCPtxSFRM1ivqr7zwq.InNBVxw7rJo6fjGLRx1Gwb8HnJdFA+g3bOC1GTXMlJ+wncdoaK47KNc2FuFNyO+6ul3SejMBiMIxsucomA2agQjX7I.YXGjusHZzD8Pxb.ixb6wnDqj2RfS8c6h4ww9XWPaKDvkzgi7zJMv1XjWrq4eWk2.5vQ7jW9moZwr+IwF6902XD.WSYiOyax91c5wrIxQlYp3H+GGuomu7Nsz8nPlSS3oyEeluO+PCUudSI078ETav7E.kaDsmAvM1DzCXgiyPtfj0MvtfzVBnlXZakweBuBmrXDcpbxhQSpYEkJXsE9dkzd8LXpj5PItwFHpsiej1CTcHgDP4kBkSklqbZtxoqQ4zCtuTNcWJP5V+Sz8uRQQklKJ5lKJ598WVPl+27KK31TvysN.uYhbRO79upvlxyE1LWXybgMyE1LdgMkmKrYtvl4BalKr4dVXycAJcPVb16sB9yLKw5xpQ.TRU+CIk03.os4f+11FFEVuflCvw7dKK4g7uGnrFeLkRQLkSQLajhXddJhYyTDyKRQL+vDiQRuusuf4DzzCFn9tAGrz2cvAqLZ+EfK5+0X
                      
                      trillbillyT 2 Replies Last reply Reply Quote 0
                      • trillbillyT
                        trillbilly @A Former User
                        last edited by

                        @iamlamprey Much easier than my jumble, much appreciated!

                        1 Reply Last reply Reply Quote 0
                        • trillbillyT
                          trillbilly @A Former User
                          last edited by

                          @iamlamprey Hit a snag with this solution.

                          If a Sampler1 is solo and then I disable solo mode, all other samplers turn back enable, even ones that were previously off.

                          I think I know which part of the code needs to be edited to do this...(not really but I have confidence). I'll be tinkering!

                          ? 1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User @trillbilly
                            last edited by

                            @trillbilly Yes that's a bit more complicated, you'll have to setup a sort of "memory" array that stores which buttons were on/off at the time of press.

                            some hints:

                            var memory = [];
                            
                            //save
                            
                            for (b=0; b<buttons.length; b++)
                                memory[b] = buttons[b].getValue();
                            
                            //recall
                            
                            for (b=0; b<buttons.length; b++)
                                buttons[b].setValue(memory[b]);
                            
                            LindonL trillbillyT 2 Replies Last reply Reply Quote 1
                            • LindonL
                              Lindon @A Former User
                              last edited by

                              @iamlamprey -or just use the solo mute code and treat the sample on/off as if it is your mute

                              HISE Development for hire.
                              www.channelrobot.com

                              1 Reply Last reply Reply Quote 1
                              • trillbillyT
                                trillbilly @A Former User
                                last edited by

                                @iamlamprey Awesome! Let me give this a go!

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post

                                12

                                Online

                                1.8k

                                Users

                                11.9k

                                Topics

                                104.0k

                                Posts