HISE Logo Forum
    • Categories
    • Register
    • Login

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

    Scheduled Pinned Locked Moved Solved Scripting
    34 Posts 5 Posters 108 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 Chazrox

      How do we save to the MIDI Folder within the plugins project folder?

      I dont know how to write the string reference to the exact folder.

      //Basically, I dont know how to reference the MIDI Folder. ..
      
      const MidiFolder = FileSystem.getFolder(FileSystem.Desktop);
      const midiFileNOW = MidiFolder.getChildFile(""); 
      
      

      This one...
      Screenshot 2025-08-28 at 6.44.36 PM.png

      I can write and read from .json files but moving files is a different thing I havent learned yet.

      Thank You 🙏

      1 Reply Last reply Reply Quote 0
      • 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
                                            • First post
                                              Last post

                                            23

                                            Online

                                            1.9k

                                            Users

                                            12.4k

                                            Topics

                                            107.9k

                                            Posts