HISE Logo Forum
    • Categories
    • Register
    • Login

    Table Based Midi Browser With Clicks & Keypresses + Other things?

    Scheduled Pinned Locked Moved Solved General Questions
    23 Posts 5 Posters 1.6k 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.
    • J
      johnmike
      last edited by johnmike

      Ok so im still on the journey to build the ultimate Midi Browser... ive been able to get it about where I want it but there's a few things that just aren't fully acting right...so far ive got:

      -a table based browser in a viewport that shows tempo, time sig, bars and key etc
      -it's clickable and loads midi files
      -you can search and filter the data in the viewport
      -it has a midi file viewer that follows the midi player transport shows the midi data and allows for drag and drop midi

      The main issues im having now is that:

      -I can scroll the viewport with up/down arrow keys but hitting "enter" does not load the file only clicking does....would love to have it just load by using the arrow keys + enter or to even just have a "Prev/Next" button that will cycle through that the end user can click...either would work..both would be great

      -I can't seem to work out the color scheme for the table browser LAF works with a panel and regular viewport...but when you enter "table mode" you can't change the color of the rows. The problem being (as seen in the snippet) you can't tell what row you are on because there's no other color option besides gray

      -while searching/filtering table data works...when you click on the results it actually doesn't load what you click...it's still loading it in the table row order....so if I search "Your Loop Midi file" it populates the table but when you click on it it loads "Your midi file 1" same results no matter what is clicked/searched...seems to always follow the default table rows

      Here's the Snip:

      HiseSnippet 4498.3oc66rsbibbcC3typkb0Jsx1kiqJ4gtP4nBTK8Pb+hTTLwURtKAIH.VdSkj7.fFXFxAy.NW.I10aUp7KQukeg7r+JzePxmPdMOjp7iop7vlyomYvbg.ffzqRY4xnj3ho6Set0ma8YZzPWqK0vPSmKxpsmLhxE4C4aMQ0TprjnrJ2tU3h72wOTtm7HEwITcSwNJTCpndWItRSFIZXP6wEIxC1FANxpOji84O8aKIpHp1k5MDG2QZxco6IOT1zazFa8RYEkZh8nskG5C5zasaWM0xZJZV.i8.93biD6dg3.59hHXqvyE4QU6Iapo2xTzjZvE4gkz5Mokj1Up1vejrgLvp3CI3ZAHxd3ZZJ8PNFGkqrjrRuFtJ.CNtH7M7TGOvVc7K3qCR+zw8TKOiMAwaE90GQVIH68f.rWB+rWber2LXoU7wRef6NDikXaHLVAFX2J65Lfe1nrktNU0rE8RKZvsisblpsNnX8uysml1npp31bO+CiHuC.ZqQzfSD4AKsjlXgRJGJT0jAyKTpce.fFkPXGuhnoH2Je1J7oSjPPsc1WlubsIBudmxBmbdsdoK2X6yZKbvjWdjU63m26vDm1oPVZ5ianLHdic2a6cN35QiyljVu9yKMP+hpunV11IN3hyRTWVu+KZdb0pCKjZ2iaYzYvkcZm5HszkGWQX+hiaIjamCqdVIs81tt5kWczXy8yd3fitXTt96LJqbAog01ax1WmpROwNaOfZbxwod43IpkOa74WZU84a+bCJM8Am28Eu9kup6NRWePoCKbnv1cRz9vRG167KG+7IMJuu30cxt+kGkZ6wFhIJUNUFsWL5jWj1Z+h8yczqGnqUczQMyD2nctwwsjN6nl6HZlRnhYZk7mT706UYrY8KT2+zRZmddbsSZUudmjaSMpMvp5vCOpdiI5BUacVRSkiF+Zo5VmlPnb8NWTx7TkiOp4du1rp3YW97lu3xF6z0nndiKZ+pWIsSorwimtdlwcOUZakcae5qRc1dBBourZ0wW1uYsK6aU8zwkKW83xG9p7mLnvNR8UutWJyyyKTZhtFUnUp7Id9UJiabPpKyVh9xyxVWqZBwCyezwWW+RqSOTp9ESFW7rLoMdwUMyjKtTiAzyK13Eu9jxIyztEED3VWu2khZ6P62vLkjlfUJkrpSt3hbMad1kWUTPXmhUxXzexd6KkQ5HgSrJ95FWMx5kWzVfCserCX7Ox+lFMO3EUK29aqcvdUp17s33Gz20JKo.DhCbXvnPsjGnJZZoCK6Q6aMrjHXbN0dmr09ZCkg4YALcF7YaUgpNqgQeIvuP2zebPaGr.9PsoCGo4Mv2rE2ey7+uY9+9y7OO+luxfpar44ZRpWAYbkEGZr4dxczE0mrYYwtRTiM2Y2VUIUncrFroIXO9WZdD9RC9P6zfeBeqt5xiL8lAcUdB+tplT89hP5N+oBsgkak+k+A9xZ.DplBCEufVSGdX5JhkOd7MH4hGe8uXs01bSRSZepNl4jXpQ7xwtFTbhgIYrntuAIeIgU3jv.poW94XQ8fH5rvpoDkLVld0HMcSe3cacMswzR5ZWYvPsKOCHurFnaTgGhEM.TNn2C6s0HMDUoJDe30df4gO1rykMUD6PUViPHdnSoihanJzTatHNDbHI.7v9+M2DmYDR4v7Y95KlSyWmwqdZXA.Apztls0XyGyApP.YPMaRGA0wYdfZCMCYSYnVSIQ0AzXl5VTDZYUEYUJoukZWbVhlpCpPtQWSIVWWVYCfcUfEs1aPogH2mDS1nBsOr7dwXSIz2QpWm7oeJY5BE5AQzE5oqMZDsG4K+RBi1LjXiJ7SPtFUegv4FrkY+WakJ6yzur4lq1pZaR6CZTpXSRihMKVuZ6pMa4C..wMD0AbANAFwbPxaW6sfZ3Vz8HO4nPJKpnf0GFKrlB0lvdryftRQEPrmtDvkK5mgwahtAIA.uOXaf6RM0rLA0YL2ciXhn1dUQTInTTQIV7qi67Ao1patoNc.QQFLk9x.pPPLpNFDg8foPAcUDtgN.FDt80LoMAKIvpPgxf+q.1D9OSIYCDfik6YJEacuA1gJOPBP6WiHdsUk6GyGFkMpNbj4jXqiazwWeMmsY.tU6qoGSEnFQV0lWX1.qt5at4lonsBGOUTL6+wP3JIYS+671ZEPkoBGzYpDvn.ncEh6Cz.39sNa6qtlsUADARrCysWUSenHvXfU5HmSAPF431v.F8WgAtgNz8LCt9Xfz+Yg0e1biKM6oKdEil5VJPXVa4AGbOb+GnwFD1ehKD+lJd+h2Zuc8u.+GLNl8oYHsY+cnVO5ZABah5T1b0gohYq0i1T6JazF8yIoRiXigpVTSF60USwZnJDPbBXZNGzUlAiQruxIxPzcq.HKZMYcCS3qaXO3dXLUbbVXQmAw7a3XsoWa5NFSeE8ySFO9ZucifnrEEB60aF3jkEcIPZhYfz1Rx5yBmPw.2SLVCrWMklAJwBJVBbVXFnTt+Lw3KoSVRD90N6rMzFYo.mfks8x5xA4JYSIhgFjUCiTG6XQCIhtrpAXcRGQEMIfmKANnKYnn5DBcLjmFaTBACMaP.KChj3XHhturZLCCv1BKlGbW9J6v.dFE.edJnkHrNKfwIIIfXhdaveNo.FrzcuA.O8loQHlpaIvX4itwTMC7Xwnuci4QnFxhpZ9HWxPjKQx6N8J0YADrht0PaRkJLoRj9tSpEPossjME8qJSGhf4u6hV4EPuRPol9nVlPTKWl6L0prHEIVzrOxkMr1L0cW5pr.xAdT9ktbgIWl6N4ptHwiUJsOBlOLAie20mUQ580f+9rCX63WFy+CNQGJpqKNgn0mkfi4fSFIZJYPTz5BAM5g4tm19JHtfROHX.LFbzjygTvDVaG0ghFGMAVnADlAic.0+vB2DNfgW7hgN3rAiXtALht3lYjvtTpkAzjKOnoVdPSu7flY4AM6xCZtkGz7LPYVEqYWISW6FiBF.6BkPcMn0+MI9h0bqPwtJhtNktN8.B109eiCMXWHvzRi6bd356wiK.CKfYovRCiVVQt6EQWeJ.uIP0ZPM0FZJTgQPdHnPbFvf0GPKvVFrvIOmfXS2g2CUq2MkL+.GDVPT2SSrmS0Nv5Lfp+6IqNvyEH.7ZpAbp.ZvXtXygcbp1zQuNmBn7NRQfmW2a2nlqpFNgphK654i1QzvV6vJoDxTKirAaw91jlMiOkomwNl6bj+YnXd7PcSG3eJnKqfBUcfoz71NC6hC6HAV9W4h2u9KVjYPQSrgMl3liqdvSGzWWaHKXks4ge76pHm0dtGB.RnMcHm9eDVH.yCKkPGhx87p9o3bNs5T8JCMqGX7fZrYH8sr5hs+oukhxDlvS8I9yTnCiPPte0ndtE+w5xgcwerS+fs0.h7GPobCTDp+FnvGKpIqjy.E84siJ3jwKD+71.OQULn2MsQMQfE5cS6fkRQrHoXtXN5bk.uuEPNVXHsp55Z5eNooqyJANfEp96fGn0PHLwVHGuXbE8lgiB11KCTVQiYhnZORKSndqNVll.+5KCMdh341jJbRjLdfafXYdfiS517s1R9xx.7AiNLyyPV3ynUUHrKSepbFXF8ZBwPL7rzyuIP1x1r6.jOFXNhCSOrjhCB6edhChgaQbr08yVb7w.rtY4q8mh8gcyppC.VVnqNbnP51JZcDUr61LTi9EEU6UiRUvNcrF.tfNcfLT.ntapqXQw9afFwUXsBTGrbm1nqAaPXEM3IjX9TQXxw9jzASaDFNamA1sFxeqUbWoDjnSObFsA95pDBjLjMw9wD9bQFv5CC1PIad.D1MHol1svojJL1Pmw.LjMhJpHOPk1COU9TvXBqCli1E1Vzo8P+Autuf26.3fV9a.ODAvY7Ez6YaHb8sZnS+MXmbNBMXLVa57AidvJIqsFI3Z83AhqExLLYmhxaytEO+fBw9BUzjk8iUluS9d+yxXVXN61+Zpsm1UT8xPANwVWvTWdXrv62AVFTYYz0wDc612AeDYCBV0vDrQZTULENnRPktLnSBZgbmNujm8vzn9dXBO1SL6JwBjWbdUH4TskaxxPxMXEXJJqZ3WVWm76+82HwliGZOMKfjs0ZABo5.FhcOR4Fj32A7gqz4rmu+YI2ivd2YImy5tLrzsUjU.SRgQVFRHusDo5WRil.3eIdmC9bhmcP5vtbn+JjP2mSI1R+CTiwd2AvTjvS0u+LmyAeJv42m0z3KHUeQKLlp0vNTceN9L.4h7vfWbF9k6hyz0V83CPM0cUkMOXDUcd2qINGcJG.fCWAeyj8VT+YNuEUZuibdKjb3K98i4Cr+wwXd+uzVtvH5ibPTIVMRLj7HdrRf66ZwztyXsuZW1UgfKRDGoBjTHsooLpDiTgNVtK09EDuJeEpwEHVh73olRbQdxcRvudJw+NwslL8genyVWgcQd5.j+vVRr2XfGH5aYYvd2Q16KtIlA.dz27MeyyPX7x0h2hqzIKDOWgrwyjv2DIQ3AP+eQ3M5hlhP1GH5S2KTgMXtHe.ehrYDhyTHSEx0rExm59NxwWoFS99.d6uCxEeDDkSb+hi7vGoxJbbSkkG4p2GIhMOvGIBqo7KK3x9uXKyuTyw8emDGyql.bze9O+e20pXJtezsYS4ssvU121x+y2sktXOYMfyrF4+BEHaTWaHfZQc.3HqrrzhYCNGZE+Ob2o0GDbag8BKXj5I7SCf4mdrsGW6ui1BUb3MOLXsIAzwvm2gPawNQaUwtRujdC13Iyy53w1VG48wCa867Iyb6Fxr+GtgYO2oa4wOLa5zExlKYgLAMP3ykMY1LoxDzR+C4SFOc17IimJSx.lIHhxUHepzYSmmCh5qckareCzRDJ9k3afU7Iqe37j0Ucj05ySgy8quUebXO4F9ES0g9UCISUHWlboRUHU.0vS3ymHYgTfeepfdE7IRkOQhTEBpdvD.2lv6ee9iMctCq1xdM3zVXahZi2rLTE7Ld+CkXQZBmfsschchGX4.3vDfunsF0SXeBetLoSmIUtbgk0bIRlLKDeKWnva7IyjOQlBIrujaQRxi0iDcZFrc6gcu267bIYs1MJqOJvLwW6s9vWJWit74yDOS54nUus8Ut1KXesFnJZI+ZVZIHx4+1e7O93s7q04mmS9mvGpeEyK6x2cniq9uhe1ulNtkhdOlm88D9Hy+oUPuYax72yyZ5IFRoht3.xmRvCixHX.J8g2h8zGGzdZAQQtKlSYSFOWlrEJjLTJlu+6+92ELIJKWYkJUXCaaLkl+MOcgVSQ23oArldJXNMMU3I9RExGo2Mxc8t28Nmax9MtdZOiutVO7cJG7Rii2TdmIfxDCbE0vqglpgr4j.2u52W2j7kkE+D9FxlcklMOtxL3Q75Z+i.O5b+6eJe098ocM8XvGxW6jebtr89I+GYS9mv2BNlF6sQxH9uj8L4XwwTx1TUpNp7RrfeKD+GK6uEhQK8uEhC5ZBjustnpwHMi.2p+VzgxsAmUC+T6UFzZ5zKah6l9Gurln9Lm5O8aqAB4LWSK7hfxLKJNTyRMv83L7OEfGtbmn4V9MY7ver9MY7vkyLYwr2OAb7iDowM9Q97LvLd3HEZU0wTE33SLd7mAmWpuHbfb2QCZWWWSUajjlpbW+a5Mol5xCFP08y6yTfJZZF32ZxuXqlTEpneC3e8V3E8RTGuJV2ScQhkWWrn8qeEuM6RPmQxeN6a++pY1BCd+fkJ386c989GH+NG.4V2xe7zeiaLy+scYkOxY.BNxbCm+69WWI6OTghm+zmB73.0RBG+YFA72E7nzManoHpGV8+952OUf.kK1FAEoe5XSigkv290OgXXlIwOcX3mgmr4u.XW6K58f5hPJEr+T6aMrET0SWJd67gSEfcIMxJXkK1OG2s0Usnp8XO.0i+NmISfOGwYxDtS9WMzXnXWcsusqciTQ2+GyFAzspreyOqxWGelj3lsPEuE.ea2tAQ0MVXx66BSceWX566BybeWX166ByceWX9aegXIrEsL0FZ6KxwUuQU6yxFY5OL2HOf6+C.VtZ7.
      

      here's some midi files to test with:
      MidiFiles.zip

      1 Reply Last reply Reply Quote 1
      • J johnmike marked this topic as a question on
      • J
        johnmike
        last edited by

        I found this post with @d-healey and @ulrik showing that this is possible...I messed around with the snippet here and I couldn't work it out:
        https://forum.hise.audio/topic/7505/little-help-please-make-viewport-scroll-with-keypress/32?_=1717065535469

        GUJIANG ulrikU 3 Replies Last reply Reply Quote 0
        • GUJIANG
          GUJIAN @johnmike
          last edited by GUJIAN

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • GUJIANG
            GUJIAN @johnmike
            last edited by

            This post is deleted!
            1 Reply Last reply Reply Quote 0
            • ulrikU
              ulrik @johnmike
              last edited by ulrik

              @johnmike
              This will activate the tableCallback to act on the Return key:

              GrooveBrowser.setEventTypesForValueCallback(["ReturnKey"]);
              

              In the TableCallback

               if (obj.Type == "ReturnKey")
                   onGrooveBrowserRowClick(obj.rowIndex);
              

              Read more about it here:
              https://docs.hise.audio/scripting/scripting-api/scriptedviewport/index.html#seteventtypesforvaluecallback

              Hise Develop branch
              MacOs 15.3.1, Xcode 16.2
              http://musikboden.se

              J 1 Reply Last reply Reply Quote 0
              • GUJIANG
                GUJIAN
                last edited by

                I don't quite understand. I sent a compressed file on it. Can you please help me modify it

                1 Reply Last reply Reply Quote 0
                • GUJIANG
                  GUJIAN
                  last edited by GUJIAN

                  This post is deleted!
                  ulrikU 1 Reply Last reply Reply Quote 0
                  • J
                    johnmike @ulrik
                    last edited by

                    @ulrik yup that did it! What about the colors/search function? Any thoughts there?

                    ulrikU 1 Reply Last reply Reply Quote 0
                    • J
                      johnmike
                      last edited by

                      -With the colors I just need the selection to be more prominent…for whatever reason I can’t seem to get the table row highlight color to change…when you are watching it you can tell when it’s moving…but when you take your eyes off of it you don’t really know where you’re at…not too much of a big deal cause in the midi window you can see the name…but I’m thinking about the end user experience and little stuff like that would drive me crazy…lol

                      -the search filtering is dope but it’s falling apart because it’s not actually loading what you are clicking on…it’s loading whatever is in the default order of the table…so row one is always midi file 1no matter what the search results say…

                      1 Reply Last reply Reply Quote 0
                      • ulrikU
                        ulrik @johnmike
                        last edited by ulrik

                        @johnmike to fix with the colours you need to use laf, (lookAndFeel)

                        //	laf
                        const TBLLaf = Content.createLocalLookAndFeel();
                        TBLLaf.registerFunction("drawTableCell", function(g, obj)
                        {
                        	Console.print(trace(obj));    // this will reveal all you can do with this function
                                g.fillAll(obj.bgColour);
                        	
                        	g.setColour(obj.selected ? obj.itemColour : obj.itemColour2);
                        	g.fillRoundedRectangle(obj.area, 2);
                        	
                        	g.setColour(obj.textColour);
                        	g.setFont("oxygen", 14);
                        	g.drawAlignedText(obj.text, obj.area, "centred");
                        });
                        
                        GrooveBrowser.setLocalLookAndFeel(TBLLaf);
                        

                        Read about it in the documentation
                        https://docs.hise.audio/scripting/scripting-api/scriptedviewport/index.html#settablemode

                        Hise Develop branch
                        MacOs 15.3.1, Xcode 16.2
                        http://musikboden.se

                        1 Reply Last reply Reply Quote 0
                        • ulrikU
                          ulrik @GUJIAN
                          last edited by ulrik

                          @GUJIAN @johnmike
                          I took GUJIAN's project and modified it a bit, based on your questions

                          1. A MidiPlayer callback that will reset the "Play" button when stopped
                          2. "drawTableCell" laf, for the colouring
                          3. read midi files from the MidiFiles folder and dynamically distribute the information to the "TableRowData"
                            (the FifthID Key signature, is not possible to extract from the midi files so you need to set them in an other way, I have them in an array here)
                          4. implemented this to be able to load the selected midi file with the Return key
                          GrooveBrowser.setEventTypesForValueCallback(["ReturnKey"]);
                          
                          1. Changed the "index" based way to load midi files to "name" based, it helped to make the search function to work better

                          All this information of how to do it was retrieved from the documentation, even in Hise autocomplete function, you can find the links to the documentation

                          Skärmavbild 2024-06-01 kl. 10.04.40.png .

                          thanks for that @Christoph-Hart

                          HiseSnippet 3970.3oc25j1baibkf1l1lbxgmolJUpJeX6k0tSnFoAlTj5vN0DKdpCSJQQRqKWNSARzf.Rfno.ZRIJGsUp7KK+D1eJy2yGRduFGDfGRxNG0NKKUTDu90u9c2uWitgMqK0wgYKEKQ6wCnRw9YwaM1hqWRWwvRZ2xRwdV7QC3cLkJNdfhiCUUJVrGuMNXrDOQR74GeSQESEqtzIfjjNhYzkVynuAeBzFa8VCSypJpz1F8Cgc9s1sKypDyjMDXjGGOiz.ktWnzituBh1ihKE6oUTM3L6VbEN0QJ1SJxTG2RmckkK9GY3XzwjhOjUpEPHWvUYlpHGiPkJoaXp1vWfcjjhEuwDw+wth+WGutgpQ.7IpgWHFfLYFg0GwdTT16wQXurgYuLgXu4vROJDK8LeKhfkLUFSsErB.X2x65AHLaTZnsM0h2hd4PZDywO9FugZaCJ1Ive9V0XrAUrT.lSMr0CIdG.0VCngG3GeSrG+fkzr2ojJgBUUCSJJ0w7e.vFkPvhWVgqH8nu8QwymMqrU60e6lkpNV9lcJIex4UUyWpw1m0V9fwu8ngsybt5gYOsyqVml+3Fl8xzX2ZauyAWOXz5qRqWe4h8runxdUWuc1Ct3rr0Mr01q4wUpz+U4183VNc5cYm14Nhkuznxx6WXTK4M14vJmUjUa65VWd0Qi36u9g8N5hAansyf0Mdkd+p0Fu804JqpzY6dTmSNN2aGM1pzYiN+xgUVd6kcnz7Gbd28t4suq6N5WePwCe0gxa2Ia6CKdn54WNZ4wMJsux0cVe+KOJ21ibTxVrTt0X6M3j8xOb+BZabzM8rYUFbTy0x3zdiQYFpe1QM2QgmStLOu4lmT3lZkGwqeg09mVjc54YXmzpd8NqtM0oZugU5e3Q0aL1VtRqyVkadznazqO7zrxkp24hh7SMO9nl0tgWQ4rKWt4dW1XmtNErabQ628N8cJtdlL4qu1ntmpus4tsO8c4Nqlrb9KqTYzkZMqdo1vJmNpToJGW5v2s4I8d0N5ZVWqlie9lxEGaynxsxsY1kuxbTiCxc45Eou8r0qypjU4vMO53qqe4vSOTu9EiGU3r0x6r2UMWaiL5M5QOuPi8t4jRqtV6VTPfaccsKUX6P0ZvyoyjGlybcqwWbwFMad1kWUPVdmBkWyQabs80WS+H4SFV3lFWMX3aunsrD5+3lvXk3erQyC1qRo1+P0CpUtRyaOExrPZXnXwHhvXDWxpx8Mv3FLYTKidVJ7g1vre59C6WTA7QCb6IasOquALtHOoGvWrUYp07.igTP3gMOb.kabVjPo1z9CXS.7G1RJTr+Sbi8+x3s5ZaLfOYDL73KhuqEmZqo.w3gi+cwU5Q+G+53kX.FVb49JWPqZCODLizalIyJjMxjYoeWxju7kjlTMpMltfvAkSPhkjPFYGdH.jumH1YPtGkOIgT5TSvHkKESbrBuqtgUOBWmFl.NXNijS.H6P49IZJoXZh+Os1PqtbClUZNXUfYzevJjA.RhDNKk7iISPv4fy8HEygzzSF724OVWcEqdT0z.jaWgvsGhiMqvhr2HC5UCX1bOwcaaFaDsnM6JGgD6qFAYtDCLWVvCoSEAKeo1TQyiHsKVqlhVnY20lB7WMVWESvO3hBVpUoTSj8bQU1l1yvArOU8E9Tp1JW0FSKWhZZlZERfZo2JDVmyEJhdxZv1oELMSCPj6zycCTTMfi4frLBPLpC0j1kSUIuAmtrAm12cTxqmBvpHAbIcS1PKX+ylvLAEpIUPIEPXVgr57WFN8Z9D1PLZUFpxToZJCM4fjjMu6PnDVvDB6npsgYELcg74sJo5BpOapJpiuE0yQz7H0mQo5pQAbmm01ToC0zyJY1wzeWGLqwBM1SgGxJDBAHOBcfhU.Aaf+dy5KjPdiK7WBED.S1BTvsYhwS6gEfTz.klzAPoH7CrZvbLPOgRBm7z9d2FVlFVz.+DByxiRHyXyLS20mSVgLBCbPWHPPHFZjzFNkoZvzUSKFBM9BgcIx27MjfIJqB6IC1M1fAfiz2+8tQVBh3RJ7STtF0ZSQS2.xfvR+4E7CHTpUk1j1GznXgljFEZVndk1UZ1JDBXdCEafVPHiSZOhbaxaA0v8n5ccWEJjfLNSqobim8f4KDkAoNXFP9yTeKt4A5NCnGB2FnQBha3f1bRtLEQ7pRP7Zlqy38AWrDu7kPB.hIjB.bdBqAAonxHPBpACgxYBDu9dHFEu8YbZPfp.+2CrI7GW2vAQ3XCUtd5kl.XGpQOcfrevMTF8CBQRCmJ8GvGmdIzPmw2JmHgFylj1BVLhgkKqHFKQhIt.ffNIqf6+bjuR2fG1d6oMlIECRZPqJCZlHtE25YjSjz0G.RUqzQDTawr6q.LB3SNva2Dx.ufDAxiTrQ.ynx726wOhBj0ucZ0kKC6ulXNKwZZOzD1hDgpHRjUCM2vZrBQ7UF4Lypm8jJWBdq2tut0dSDo5I8YpzYSwIFqNLTZWUbplrqboYpWSxkeAIFE9MXQDNUY1hcJCbeeeplTnTGq2RGm5Cd7QKJWHXcYlC6aAIJGC9vKfWJIvwI868xfjZ2x.mjppgsCG94Jt.qg4ZQ3hrld.QFBggY78gIzzod8pYx.6VGkjsnP1Q04PSQsSO.hlcNDsstg87nITB3mIEqBd3b84PRrLxG.Me0bHog1boHZydXDzyxlnIUQkzGK5Ey.6PzrY8IoB59JEQCaR1FCmQGfA1rygfQu8z56gVCEt9rAP9DwO8DlcR3g.dnX+avDd+GlydS9NRdnkVjcDXULhgbEjUfzgJXFPZIAUlSrolJXILvl4Tkt5BlCkoUHF7eqCjGfiQeh9OcIGf20bniWz0VgCRnFlpPvBBs.tDAZFfHPQRZxISXh0TPt.k22mp.jiOUwNhuwuJgeUV7bY7qJheVA+pJ901hm2F+pPmTePjZUjyTSjvLr9bojIvLpyYGSM+MI0TLcDE15wT7YMBQ5dIcHbgxnHeexDh0HQPz4qIZxNC63vsgJzSqIa.oeu9.szotM0RKmEVwIPD6vszRqHlePn3qIC.uZJzOQZtirHPzCE+.qnXDz5zRKm5koVN7PgZfxiDAQRSQC2NxbQBxVcA3W3D3WzUw52xQWFOqM3hHLuJgLtNLYYYOEgl2Jbgy6iXOBjbskH+2jrq9A.+aQ8YXmU4ACczwhUQMMTyQxjy3MOuzwQvH7CH13FTccOfF.5tHW.l4uK6bKqyMEbPwKd8Bf6di0MiIEvcrCkhOXua7ePMNNLSp7.v7iEFYSwlGItXCTmXAYqgjJjkEkg6V5lmuinAK2MBqwfjJt6W.rsCTmkJ1vG5YJz2tHxrhnGJYZ3xwymr9UQY6Vo6j55DkKDTqZDoTPxTSWC5TBo.IPHuWoaREl2u.5i6CVF8mvBEyaWneSnRUi7rWFd+tFwDil97c.mR5n33J7tYIAMvb7pliPfXJ7sVb5Kga2jLFhYP9OQWWbv6LylW4+2Nci4NnTfShnXoRZwYCHcFx4fE0uMKbrE1iUsBmlZAsCACcW8BkP7Kn+3PbMVOY5LKA8HGVT.dJcFOd+tXiEzrwD9v098c+i+IIwuoVw4NTwpGH7dG6v1lrNJltGMzTm9PRyEd1C3V6kEc5YO+SeHb3Hjy0XjWmf3mEdvDA0R6OScvoyd5v2oOTgImMQ1PwQtmf.13PnikHWjjFImG0hbDESHzm7QQHJZVwFpCA1ZZxYJ3A6NNMAWL7N1HBjA96vhuEkn6jLXbjqSmhKpsysVORaFI5bmr9DeGr433GPx66j.bKavQfaSpyPSQ0FXEbSOpfYgwbywwY0XWAYMf7LoWRFJrne5os0QlFj2N0RXR1c07nGAp6ihsahcMQsfJ8.omfJbCPmHx++IsiJNCJT4zTNVhDY.EvTYQlQ.FSv0myAz8ShOkfBlbNjA2IrvsD4O9GiPB7iW3nJaHrjsYsbK8BIreQUPGieBzCmoWsV+ymk7q.6Smk7Jr5gvRKEg.ebFxEwGzshKXEBE7OIFO5uB9wc6tDg9OfyOJTT67SpOcLl37lCEChmNyAVtM5.0LRldHMs4NlG0Lo1ycXrze66ZhosF1uC0N7tbHhRwdRz2hW7G1awqqqxIDhLqcsL3GLfZsnWxpjmFEe2ldbEfJW71M9Ju2tAU8HuigWBegL+x3QrdRBlO7KSQZZB8K7HTQQkBBh7z33Fs9yMdLw7d2thWqnTrXdbEvovNbbCTIDqLcjQWp6KdIQ7xTmKfc5kh8r.GAoXewmDie8Dl92u03fG1ht0UXe5A.9K+4szEGnS.j+zka4usI.6o555GhfmrSHB8ie7i+snPWEAuyN67WQvZfH1x3lPZN4sPTAQ8WEOaxUSlKY9jqkb8jajbyjuJYV7szNQRe58oYWfvI8+LkvI0dFg6vslyJ8y8VIwQcHVnuHdPX0BWs7gzS+r34WciMWay7alaSIbmS7s1GcmyHh3yhtvhByEK7yi6Vj9BW08uWCnzoa0gYqRsapnZLzIr2KFGDvCOeQ7PBOdndXlPRZb3Gd.LAzEMrNgWPeYaQrmzrb2W6wcUgtK3vFEsw2TOxjuHdXPY+GjWEwlwVMNtePpfbH6phGx0j5uWUbVWoDcICijI4sRKVHCKLOYQ9YeY7odGOgEixgr6S439rEQvmGW76rgnyewLp+iq64uItnUKz+rrsROx2PvZtEuh5oTXRpynv98yKJZglpeYTS0mhqsqcI68XWl0rLm2m8KhWmoNzDOwmvWsF79D4M.r+Uj2oM9dqsbL3iibKT9m08s4gxheY7FF7t5ymGezb3QLL+eA7n2sT5mGuhlFz4yDF7Iwqdx+ZtRRgW9eg6x+EwaAUOJtM.hE+WIdlbrxHJYapE0FUdYuiaL1+6C8FiM3AeiwNnKGV911JVNCXNQHbKZei1PXRjzbuygV0ldYSzZFFdIFdtiyYne7MUAgbtyoEdNjB2hB8YCshbwOl9BS8jGVoV2yMW6I+etat1OAB1iEqwLW2wW.tt8GXRqXMhZB0BJ3wuBJ9SbcE7gF0WtNyhMPmYYzMrgtIEZhpWOpcXdetBTANOxsv6q2pI0jpD1o8+ZK7MJpXiu1uOScQ1Gtt3trW+53trKAC.I+zMI8i++2IocuxA8pq.NgvV6w2eX+VPtwtT7Zh.kBgM4E6QX9M2my32STKpkp3g+F7wavr3yw7FLq+f+aYM5qz0l8Ccc6uC8Set.BH2Vhq1Wh30wmIYmsqP7vo+gtciRpYl3petSL2m6Dy+4Nw09bm35etSbiO2It48OQbSnBC4L2W.KdAfaTwsxxXAW.4XOV5uCQRLUJA
                          

                          Hise Develop branch
                          MacOs 15.3.1, Xcode 16.2
                          http://musikboden.se

                          J 1 Reply Last reply Reply Quote 0
                          • J
                            johnmike @ulrik
                            last edited by

                            @ulrik yup this works perfect...I hate that it can't pull the Key/Time signature data from the files...because I literally have over 300 midi files lol...but I was able to copy this into my current project everything is working the way that I want it to...and im gonna just be entering in the table data manually! thanks so very much!

                            Christoph HartC 1 Reply Last reply Reply Quote 0
                            • J johnmike has marked this topic as solved on
                            • Christoph HartC
                              Christoph Hart @johnmike
                              last edited by

                              @johnmike said in Table Based Midi Browser With Clicks & Keypresses + Other things?:

                              yup this works perfect...I hate that it can't pull the Key/Time signature data from the files

                              Does this help?

                              Link Preview Image
                              HISE | Docs

                              favicon

                              (docs.hise.dev)

                              ulrikU 1 Reply Last reply Reply Quote 1
                              • ulrikU
                                ulrik @Christoph Hart
                                last edited by

                                @Christoph-Hart is this the same data as you get when you use

                                MIDIPlayer.getTimeSignature();
                                

                                or does it contain more information?

                                Hise Develop branch
                                MacOs 15.3.1, Xcode 16.2
                                http://musikboden.se

                                Christoph HartC GUJIANG 2 Replies Last reply Reply Quote 0
                                • Christoph HartC
                                  Christoph Hart @ulrik
                                  last edited by

                                  @ulrik same

                                  1 Reply Last reply Reply Quote 0
                                  • GUJIANG
                                    GUJIAN @ulrik
                                    last edited by

                                    @ulrik

                                    Currently, it is not possible to drag MIDI files into Cubase 13, right

                                    If this function can be implemented, it would be convenient to use

                                    ulrikU 2 Replies Last reply Reply Quote 0
                                    • ulrikU
                                      ulrik @GUJIAN
                                      last edited by

                                      @GUJIAN said in Table Based Midi Browser With Clicks & Keypresses + Other things?:

                                      @ulrik

                                      Currently, it is not possible to drag MIDI files into Cubase 13, right

                                      Wrong, you can drag midi into cubase for sure, here I drag midi from a plugin into a track in Cubase 12

                                      cubase midi drop.gif

                                      Hise Develop branch
                                      MacOs 15.3.1, Xcode 16.2
                                      http://musikboden.se

                                      1 Reply Last reply Reply Quote 0
                                      • ulrikU
                                        ulrik @GUJIAN
                                        last edited by

                                        @GUJIAN Oh I guess misunderstood your question, you mean if you can drag midi from this snippet, no it's not implemented

                                        Hise Develop branch
                                        MacOs 15.3.1, Xcode 16.2
                                        http://musikboden.se

                                        GUJIANG 1 Reply Last reply Reply Quote 0
                                        • GUJIANG
                                          GUJIAN @ulrik
                                          last edited by GUJIAN

                                          This post is deleted!
                                          d.healeyD 1 Reply Last reply Reply Quote 0
                                          • d.healeyD
                                            d.healey @GUJIAN
                                            last edited by d.healey

                                            @GUJIAN does it work if you compile your project as a vst?

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

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

                                            12

                                            Online

                                            1.7k

                                            Users

                                            11.8k

                                            Topics

                                            103.0k

                                            Posts