HISE Logo Forum
    • Categories
    • Register
    • Login

    Loading Files Into MIDIPlayer via script?? || SOLVED! 🙏

    Scheduled Pinned Locked Moved Solved Scripting
    34 Posts 5 Posters 111 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.
    • ChazroxC
      Chazrox
      last edited by

      Im here....

      I want to save some midi files to here, while loading them into MIDIPlayer1...

      
      //Does this look correct because it doesn't load the file when I select
      // it from the pop up browser.
      
      inline function onbtnLoadNewMidiControl(component, value)
      {
      	if (value)
      	{
      		FileSystem.browse(FileSystem.AppData, false, "*.mid", function(f)
      		{
      			MIDIPlayer1.saveAsMidiFile(f, 1);
      			MIDIPlayer1.setFile(f, true, true);
      		});		
      	}	
      };
      Content.getComponent("btnLoadNewMidi").setControlCallback(onbtnLoadNewMidiControl);
      
      
      HISEnbergH 1 Reply Last reply Reply Quote 0
      • HISEnbergH
        HISEnberg @Chazrox
        last edited by

        @Chazrox You should be able to use the {PROJECT_FOLDER} Wildcard here.

        Link Preview Image
        HISE | HISE | Project Folder

        A overview of the Project Management in HISE

        favicon

        (docs.hise.dev)

        ChazroxC 1 Reply Last reply Reply Quote 1
        • ChazroxC
          Chazrox @HISEnberg
          last edited by

          @HISEnberg Nice! I havent seen this yet. Exactly what I needed. Thanks! 🙏
          Any tips on loading the file to MIDIPlayer? I was experimenting with just going to the AppData folder and retrieving some midi files there, but when I click on them the rest of my script doesnt execute loading the midi to the MIDIPlayer.

          tsempireT 1 Reply Last reply Reply Quote 0
          • ChazroxC Chazrox marked this topic as a question
          • tsempireT
            tsempire @Chazrox
            last edited by tsempire

            HiseSnippet 3831.3oc2Zr1aaibjJIJIRWejq3PQK5G5Vg1qxm8wH4Gw14vcwx5giiksUjjcbRPvAJxkRLhjKC4JK6j51h9un+YJ5Og9S49dA50YV9VOrcxcWQaELjEmc1Ym26LK2VtLUpmGyUJSttm6Pkx7ix14ba9fpCTLrk1slTl6j8TGdOSosO2QwyipIkIyM2AGLStaII97MOZaESEaUZLHIoiYFpzlFVF7Xns1ZOCSyFJZztFVIvd0s1UkYWkYxFALxMyVRxQQcnRe5AJHZ2HqTlaWWyfyb6vU3TOoL2Zal14cFvFa6i+wFdF8Lo3Ckk5.DxGbCloFxwHTopCLL0ZEJvdRRYx1JV7uou3+IY22PyHBdrZ3dhAHwyHo9HyMRyd2LE6UNI6UJA6MCV5FIXo6DZQDrjox4TWAq..1s1tA.RxFUG45Rs4cnuYDMk43adTvPccAEaL76tUSFyotsBvbZIsdHw6An1wglbfu4QYt40VRKeoRpDJTMLLonTmI7A.aTBAKdMEthzM9qYxtRokks69f81nZYtb21aKexad8lspdRkm9Z4EW7oad35K1Zwgd0Jsmwn1i45tarsB+MarxF6+Bkmr+38TTacjwiOX8CZWk9jgu3Td4S5vpobft2q2Yr7o6Iu91xiGdp0n0rTVzo+ael1Icdt9are1IcOdnV4iq7jyYqsZa8g6UpgyIuo8N50GU8vt862VdOswcVTYkt82c8Gna715ls1l1Xw0NZe42dviG0j+T0ZO47Mar7yeQosGbhk7xlZr1m8Z9PugJ6+jW7XKiQztPHQkks6b7yTehxNuVooF6nSW6sadlpkW6g66Vo73cVz9EM1s+dFGRK8jAkqu5Qms+ZU2s7POGqVUspc5tM0YtMjA9kq0dk0OZwlOc7ltGMr0KNwv3.ms22ZjwYsLsJqUdTuidrb8muS8Jsd1C5r7y7VqpxhUkkOnYMciAG0n2Kpd1wMOg5x2T9Dmpqso0pGu5yGI+lsOcupieQqC2cccasiTaHglK+3yeY120p8gOod0teciCaVqd6KJWZEYKCzmDCz6Xz2VgOxEP81GLxZaEv9G4RQ15.lkALtHGT.v6sUMp8r.itqfqmKOoypuObJ2ztTKGFBnXtu8u8u9Sc2RJQb0s7iq93rcTcMb3wiftdeT1cs4TWcEH9IYrkOtR23W+KxVkAXXyksTFRa3BODMihaTpzRj0KUZguHe96eeRapN0ECEIbFINnMOjsyim..4KIhrtx8o73f8hEhwnfOEy8LEt5.C69D9.ZRB3gwi4iAH6Q4gAwUULMw+WTejsJ2fYWjCVEXFVNKQb.jDAyKj+c4yQv4fy8XEyQzhwC9EgioNPwtOUqH.4hkHb2Q3XSKrH6cpAcrCykGHt63xXmR21kM1SHwgpQPlqx.ykM7PwBovJTpMUzCHR2sa1TQOwrUco.+0jopXB9ACqXq0fRMQ1yGUYWZeCOv9zHT3Kn4pLtKlxqJ0zrvRjH0R+kHrduVnH5KqCaUUwzrH.QtWe+MmP0.NlGxxH.wndTSpJmpQdDNcYCN0xeTxCm.vxHA7Ica1HaXuo1vLAEpIUPIEPXVhr7rWFN8LdLaHFsACUYZTckQlbPRJup+PnDVwDB6nZcgYEMcg7ErJETA0mKUC0wWf54TZdj5SoT80n.tyxZapziZFXkL6YFlQGSQLWi8D3grBgP.xiPcTriHXK72ar+bITv3B+kDAAvjsAEbWlX7hAXAHkNPoM0A1lmencKlmA5ITU3jWLz61v1zvlF4mPX1ATBYFWlYQ0PNYIxoXfC5BABBwPmTzvqFUGltVQwPnwWHrKP9zOkDMQYMX+Nvtwbb.Gou7K8irDDwmT3mzbMp0lfl9AjQgkgyK5GPnTm5cIcOr01UZSZUock8q2sd6NIP.yan3BzBBY7JFPjKxeAnFtBUuu6pPgDkwYRMke7b.rPgnFH0Qy.xeV3yvMOP2Y.8D31BMRPbCGzlw4xTDwqJQwqkNqTvGbwxc+6CI.HlPJ.v4IoFDjh5mBRPSXHTNyg3YEfXZ7NfwoQApB7eIvlve7AFdHBOyPiOn3Bw.dL0n+.fruxOTF8CRPRCu5VN7yKt.ZnKEZkykC1EmTzFVLhgsOqHFKWtXW.PPiyJ3+OO4wCL3Is2AZioRwfjFzpxflIkawEAF4b488AfT0J8DA01LWKEfQ.eRmfcSHNAAIBjOUwEALkJKbumvHJPV+rIUW9Lb3Zh4rDqo6HSXKRDphHQVSzbCqwRDwWkjKMsdNPp7I3EA695WWKQjpmXwznSmhSL19vPE8UwEZyF6SyBOjrxpyIwnvuAKhvqAyUrSYj66KKzlBk5XuG87BuJfO5P4BASkYNxxFRTdN3COGdop.GuhuLHCRgcqAbRgFFtdb3mK4CrIlqEgKxZF.DYHDFlwODlPSW3gKWpDracZR1gBYG0lAME0NcMHZ4YPztCLbmEMgR.+.oXCvCmOXFjDKi7ZPyMmAIMzmIEQa10ifAV1bsoJZDKruPLCrGQ2kYQJD0YSAhN1.pKFNiN.NtrWCAiA6oYEfVKE9foCfBIRX5IL6jvCA7PwdifI7xWMi8lBcjBPqnH6HvpXDCYLjUfziJXFPZIQUlSbolJXILvl4TE0ABlCkokHF7euGjGfiQehd67IGf2YbnaRz0VgCRnNlpPvBBs.tDQZFfHPQR5x4yYh0TPFhx6KKTAxwWX6dhuwupheUS7bM7q5heVG+pA90Nhm2A+pRuBuRjZUjyTWjvLo9bg74vLpyXGS8vMI0UL8DE1FvT7oMBo5doXBbgxnHeY9bh0HWTz4CI5xdi54wcgJzKpKa.oeO6P8hEtnvBKVFVwXHhc3VXgkDyOJT7gDGvqlB8STj6IKBDCPILvJMFQsNsvhEtegESNThFnBHQTjzDzvuiLejfrUCA+BuH+BUE6eOGcYBr1fKhv7pjv35wjkkCTD5AqvPuWlxdDI45KP9cjxK+J.+KP8YRmUYmQdCvhUQMMTyQ97S4MOqzwovH4CH13FTp9G9A.cWjK.y7mWdlk04mBNp3kfdAvcuw5lwjB3N1IRwGs2M9OnFGOlIU1AL+XgQtTr4QhO1.0I1P1ZHoBYQQY39ktE36HZvxeivlLHoh+9E.a6A0YogM7gdlB8sOhL6T5gplF9b7rIaXUTt9U5FWWmnbgnZUSIkBRVXxZPmPHEHAB4UJcwUXd0BXHtWaYLbByULuXt9MIJUM0yAY3C6ZDSLZFx2QbJomhmuv6mkDz.yvqZFBAhov2Z9ouDtcwYLDyf7aPWWbvKMyVP4+WLYi4dnTfShnXqQ5vYNjdi3bvhF1lEN1b6wpYkmWXNsCACcY8BkS7Kn+3DbMVOYwRK.8HmTT.dpXo.d+xXi4zrQLe3a+97u6exSBapUbtC0s6CBevwNriIqmho+QCMwoOj2btm8.t0dMQmdty9zGRFNB4bMNMnSP7ybOXhnZoCm4.voycxv2IOTg3ylnbh3H+SP.abHwwRrRpjF4mE0RcDEwD589nHDEMq3B0g.aMEelBAvtjSSvGifiMh.Yf+br3aQI5d4iFG45hE3hZ67q0izkQRO230mD5fMCG+HRdUmDfeYCdBbaS8FYJp1.qfaxQELKLleNNNqIaLj0.xyTbAYnvBqhSZqSMMHucgEvjr6pGPOBT2GEa2D6ZhZCU5AROAU3FfNQj++8ZGUbFTnxoIbrDIx.JfoxRMiHLhwMjyAzCShOgfBlbNjA2Kovs.4O7GRQB7SP3nFaDrjcYc7K8BIbXQUPGiuGzCmYPsVe+yRgUf89yRAEVccXoERQf2ME4R4C5WwErBIB9iiwS+qneb4tKon+037iRD0N6j5SFiINu4Dwf3oybnseiNPMijIGRWeliEPMSp6LGFK828xlXQ6QV8ntI2kCQTJysR+Fxxd8dCYp9JmDHxr201fenC0ddu.So.MJ9dCC3J.Ut3sa7yBd6FTsiCNFdI7Ex7Sylx5IIX9juLEoIIzOIfPaKpTPPjamE2nMbtYyHl2Q6JdkcRYxDvU.mB6vwMPkPlZzSMTo9u3kbYqQ8FB6zKk4NQNBRY9n2KF+rXl9q157nG1ht0XrO8H.+8+xVCDGnSDj+7a1JbaS.1sGLXvSQvw6DhPe26d22lF5xH3G+3G+OQv5fH1w3sIzbxagnBh5OOa47Kmek7qles7OH+542H+l4KiuAzXI81WklcNBmzebBgSp6TB2S2ZFqzONXkDG0gXg9nrQgUyc0VMgd5Gkc0kWei01X0MVYCIbmS7MhmdmyTh3cRuvhByEK7cy5Wj9bW0CtRCnzy2pGyUi51VQyXjWRuWLNHhGt673gbA7v9IYBIoyS9v0fIftng0I4BFJayi8jll69j.tqAzcAG1nnK9VvQl7dYSBp72QdUDalY4r39AEhxgrqFdHWw0eur3rtJH5RFFoT9KjluPlTXt077y93rS7NdRJF0RX2mvw8Nyif2Mq32kSPm+tYZ+Ge2yeUVQqVn+YMWk9jOkf0bSPdYBElj1TJruZVQQy0T8SSapdebs8sKkuB6xzlkY79ruW18YZiLwS7I40VAuqNAC.6ek5cZiu2ZaOC94otgGeecWVttr3GmskAWcvr4waLCdDCy+AfGCtAP+3r000gNehYvakswI+vbceRt7+D+k+ix1ApdTba.DK9OW7L4YJmRI6Psotnxq7kbar9GW2aiky091XcnJGV9ttJ1dNLuTDtC0xnKDljJM2QdzFtz2zFslIgWkgm63LF5adTCPHm4b5fmCovsnhEajcpK9wjWFoac8J05JtUX25+5tUX+OPvdlLsl5pDdOv00xwjV29TpITKnfG+YPwehqqPHzz9x6yrYNCX1FpIMzsoPST86ScSx6yTfpv4otgaexVsolTkjNs+1sv2nnhK9Z+9.0Eku95hKyd8Kx5ytDL.j7+tIou4+emj1+JGzeeEvID1ZO6Air5.4FUo30DAJEBaxKyMv7a9OWJrmnNTaMwCeK7IXvx3yYBFrb3f+GYMrTTcYespe+cne5cEP.41VbO9xkce7YR4o6JDOb5uVUMMolZhK+gNwU9Pm3penSbsOzI9fOzIt9G5D23pmHtITkQbl+KfEubssp6WYYlnK2alaJ8uQLzARz
            
            
            ChazroxC 1 Reply Last reply Reply Quote 0
            • ChazroxC
              Chazrox @tsempire
              last edited by Chazrox

              @tsempire Thanks! I just checked it out. I cant tell what you're doing different from my script above. Can you possibly give me some insight if you see what im doing wrong?

              This is what I have now and still not working. Obviously doing wrong.

              const var MIDIPlayer1NOW = Synth.getMidiProcessor("MIDI Player1");
              
              inline function onbtnLoadNewMidiControl(component, value)
              {
                  if (!value) return;
                 
                  local root = FileSystem.Downloads;
                 
                  FileSystem.browse(root, false, "*.mid;*.midi", function(file)
                  {
                      
              		MIDIPlayer1NOW.saveAsMidiFile(file, 1);
                      
                      MIDIPlayer1NOW.setFile(file, true, true);
               
              		//pnlCustomMidiRipView.sendRepaintMessage();
              		//pnlCustomMidiPanel.sendRepaintMessage();
                          
                  });
              }
              Content.getComponent("btnLoadNewMidi").setControlCallback(onbtnLoadNewMidiControl);
              
              ulrikU 1 Reply Last reply Reply Quote 0
              • ulrikU
                ulrik @Chazrox
                last edited by

                @Chazrox is this working, you have a semicolon instead of a comma?

                "*.mid;*.midi"
                

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

                ChazroxC 1 Reply Last reply Reply Quote 0
                • ChazroxC
                  Chazrox @ulrik
                  last edited by Chazrox

                  @ulrik I tried it without it but, its not working...

                  What am I doing wrong?

                  Screenshot 2025-08-29 at 12.28.23 AM.png

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

                    @Chazrox When the user installs your plugin they won't have the project folder, so you don't want to store your files there unless it's for them to be embedded in the plugin. For any files the user should be able to modify you probably want to place them in an app data folder.

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

                    ChazroxC 1 Reply Last reply Reply Quote 0
                    • ChazroxC
                      Chazrox @d.healey
                      last edited by Chazrox

                      @d-healey I tried this same method with AppData and it didnt go well. It has to be something else. I've been trying for a few hours but I cant seem to find it.

                      d.healeyD 1 Reply Last reply Reply Quote 0
                      • ChazroxC
                        Chazrox
                        last edited by

                        via GIPHY

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

                          @Chazrox said in Save MIDI files to MIDI FOLDER || See code::

                          @d-healey I tried this same method with AppData and it didnt go well. It has to be something else. I've been trying for a few hours but I cant seem to find it.

                          Which issue are you referring to?

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

                          ChazroxC 1 Reply Last reply Reply Quote 0
                          • ChazroxC
                            Chazrox @d.healey
                            last edited by Chazrox

                            @d-healey I cant get the midi files to load into the midi player.

                            inline function onbtnLoadNewMidiControl(component, value)
                            {
                                if (!value) return;
                               
                                local root = FileSystem.MidiFiles;
                            
                                FileSystem.browse(root, false, "*.mid", function(file)
                            
                                {        	
                            		MIDIPlayer1.saveAsMidiFile(file, 1);        
                                    MIDIPlayer1.setFile(file, true, true);                           
                                });
                            }
                            Content.getComponent("btnLoadNewMidi").setControlCallback(onbtnLoadNewMidiControl);
                            
                            

                            I've tried .AppData .Downloads and .Documents. I can open the folder and click on the file but loading doesnt execute.

                            Trying to load .mid files from anywhere doesn't work so it has to be the way im reading the file in or something...?

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

                              @Chazrox said in Save MIDI files to MIDI FOLDER || See code::

                              but loading doesnt execute.

                              Do MIDI players have a setFile function?

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

                              ChazroxC 1 Reply Last reply Reply Quote 0
                              • ChazroxC
                                Chazrox @d.healey
                                last edited by

                                @d-healey Screenshot 2025-08-29 at 5.23.00 AM.png

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

                                  @Chazrox

                                  Show me where MIDIPlayer1 is declared Actually if saveAsMidiFile is working then the declaration must be correct.

                                  Minimal snippet time.

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

                                  ChazroxC 3 Replies Last reply Reply Quote 1
                                  • ChazroxC
                                    Chazrox @d.healey
                                    last edited by

                                    @d-healey Screenshot 2025-08-29 at 5.27.42 AM.png

                                    1 Reply Last reply Reply Quote 0
                                    • ChazroxC
                                      Chazrox @d.healey
                                      last edited by

                                      @d-healey

                                      @d-healey said in Save MIDI files to MIDI FOLDER || See code::

                                      Show me where MIDIPlayer1 is declared

                                      give me 5 minutes please! brb! 🙏

                                      1 Reply Last reply Reply Quote 0
                                      • ChazroxC
                                        Chazrox @d.healey
                                        last edited by

                                        @d-healey

                                        HiseSnippet 1031.3ocsV8taaaCDmxNpq1aqnEXO.b9SJEFFx4eKEAEMINwaFKI0XJKXeqfV5TLQjH0nnRlQQA1C0d.1Sy97dC1NJIaK03klYrQCXni2e4ui2cbrR5CooREwp8kyR.h0WX6MSnmNXJiKHiNgX8b6y4Ab5YRV.8RHUSNdVBKMEBHVVM+ViTVs1fju9y2bLKhI7gkaQHWI49vY7Xtd4tiO764QQCYAvk73JRuygi7khAxHYFFQMscIIL+aXWCWvLh0vl7crzoDqWZu0Vg9665t+1auqKisc.isSeX6WAg6E5uq6qbClrqK9aOh0SNMfqkJOMSConQOVFLyap7NQgCthmxmDAFh9DOzyEaSFLkGELdN7jRHVaLdIX0r.r9pbrYw92CzVpQUPypwCER8+WDRMpDRe177WdHEwlAp7P4Y1mO5jQzhc5WKPFjoTfP6A+bF7QYsRVWpP7uZB9LoL4TACCufpaar9DTTuDnNCql+GcVIli0PdDX9txwdihi8Kr87U7D8RNly9maORnAUHCObUO3ExRZ7GMrGHQID5dwrafgJjXgFN6451kh+s4AsaiWKS0zaYJpAMKAS5qo4EK8tFzKQcmNUA7Nn1KUdhVXJjt.tK+9wqoycOZgAx3Do.Ib5TWLiIvEWDwE.MLS3q4RAUJpKlwTJYji+b6zEcYTFrY622lhKdH04qK1gp.clRbfY+bdQReVDUIkZLlLnr2rTMD26njjSXZF5eiTUXLQIuKEbLZzkFxhRgtzNurWLOnS2EgnSHpvlE59dZ4pU6Vspfg8RY2BGkNO6lqRWZ+MOXt7sm+QMk.cEo0prx+Wp1JV4V5CHX9g1ONX23lRTc.KJxbA24e.0MonJYlKjZ3sBGCz2BcG8iYEFtRdkFKBuDsJ1llkpGRQGQV7DPUIwmKHVkTuJ7IOtpP+BTphfRwHAW+1DnjdnLJvTRY9dE0rkvL1oxpLBQQ04ErOqrf83LsVJH7.SSy5PKI+TTsqD4GGYtNN2dnoQ2k.JM2bprNAtEm0TzPnk8IP5MZYRtrkoXrK4i26+xBO+qWc3rED+9jCuiGnwoP1V+FROE3WOUanbPJd54xXzSLEpgUiUzoBGMHCxhX55yKLSRKYfozZcqLcjDob8rZMVe7CQbe3FqOxP7E1i4Z+oqNFarhXzLe5+gXrbz6WZeZXH3qWFfaXO7mV24reB2+CxLMWb84LshiWKruHK1CehhOfdWHfnTS5ug4BeAsqg1f.dfHHm3uvUIy9FZqRl8myjDy7Ux24WTlXFt+z7cvXRj+3mV1mano8ueYA10k+Ne+5l5dJt05p31qqh6rtJt65p3dqqhey5p39eZEMcSNJSKiKJavmxL9z71XVVKdJkUSxeCLcj3vC
                                        
                                        d.healeyD 1 Reply Last reply Reply Quote 0
                                        • d.healeyD
                                          d.healey @Chazrox
                                          last edited by

                                          @Chazrox I'm out for a few hours, I'll take a look when I'm home

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

                                          ChazroxC 1 Reply Last reply Reply Quote 1
                                          • ChazroxC
                                            Chazrox @d.healey
                                            last edited by

                                            @d-healey yes sir! 🙏

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

                                            20

                                            Online

                                            1.9k

                                            Users

                                            12.4k

                                            Topics

                                            107.9k

                                            Posts