HISE Logo Forum
    • Categories
    • Register
    • Login

    New API: Server and FileSystem

    Scheduled Pinned Locked Moved General Questions
    71 Posts 8 Posters 5.5k 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.
    • Christoph HartC
      Christoph Hart
      last edited by

      I'll take a look tomorrow.

      1 Reply Last reply Reply Quote 1
      • B
        BWSounds @Christoph Hart
        last edited by

        @Christoph-Hart said in New API: Server and FileSystem:

        You need to create a reference to the folder first:

        const var audioFiles = FileSystem.getFolder(FileSystem.AudioFiles);
        
        FileSystem.findFiles(audioFiles, "*.wav", true);
        

        Also use the constant FileSystem.AudioFiles instead of "AudioFiles".

        Can we do this with MIDI FILES?

        1 Reply Last reply Reply Quote 0
        • Christoph HartC
          Christoph Hart
          last edited by

          Are you talking about embedded Midi files or files on the user‘s disk?

          Embedded files should be retrievable with MidiPlayer.getMidiFileList() - it‘s not implemented yet but it will follow the same logic as Sampler.getSampleMapList().

          B 1 Reply Last reply Reply Quote 1
          • A
            arminh
            last edited by

            @Christoph-Hart you had a chance to check why consts not working properly?

            Christoph HartC 1 Reply Last reply Reply Quote 0
            • B
              BWSounds @Christoph Hart
              last edited by

              @Christoph-Hart said in New API: Server and FileSystem:

              Are you talking about embedded Midi files or files on the user‘s disk?

              Embedded files should be retrievable with MidiPlayer.getMidiFileList() - it‘s not implemented yet but it will follow the same logic as Sampler.getSampleMapList().

              Files on a user's disk. Really a way to save or create a path for midi files.

              1 Reply Last reply Reply Quote 0
              • Christoph HartC
                Christoph Hart @arminh
                last edited by

                @arminh I've just committed the fix, it should work now.

                @BWSounds Now you can pass in scriptfile objects into MidiPlayer.saveAsMidiFile / MidiPlayer.setFile (Plus you got MidiPlayer.getMidiFileList()` for all internal references).

                A B 2 Replies Last reply Reply Quote 1
                • A
                  arminh @Christoph Hart
                  last edited by arminh

                  @Christoph-Hart ok audio files work but desktop not :)

                  constant not found: FileSystem.Desktop {SW50ZXJmYWNlfHwyMzJ8MTB8NjU=}
                  
                  

                  Is there option to show file name of object?

                  1 Reply Last reply Reply Quote 0
                  • Christoph HartC
                    Christoph Hart
                    last edited by

                    Damn that‘s annoying ;)

                    Change line 4389 from 6 to 9, it ran out of the predefined slots...

                    1 Reply Last reply Reply Quote 0
                    • Christoph HartC
                      Christoph Hart
                      last edited by

                      Never mind, I've fixed it, so you can just pull.

                      A 1 Reply Last reply Reply Quote 1
                      • A
                        arminh @Christoph Hart
                        last edited by arminh

                        @Christoph-Hart thanks! :) And how to exctract name or path from object? I don't see any method in API to do this :)
                        Using trace gives me empty Interface log.

                        1 Reply Last reply Reply Quote 0
                        • Christoph HartC
                          Christoph Hart
                          last edited by

                          Link Preview Image
                          HISE | Docs

                          favicon

                          (docs.hise.audio)

                          A 1 Reply Last reply Reply Quote 0
                          • A
                            arminh @Christoph Hart
                            last edited by arminh

                            @Christoph-Hart thanks a lot. I also used Filename but the result is the same as with FullPath.

                            Using this

                            for (f in files)
                            {
                                var p = f.toString(Filename);
                                audioArr.push(p);
                            }
                            

                            gives me links like this

                            "/Users/armin/Library/Application Support/My Company/test/filez/pluck5.wav",
                            
                            1 Reply Last reply Reply Quote 1
                            • B
                              BWSounds @Christoph Hart
                              last edited by BWSounds

                              This post is deleted!
                              1 Reply Last reply Reply Quote 0
                              • A
                                arminh
                                last edited by

                                @Christoph-Hart can you add option to set own headers in Server API?

                                1 Reply Last reply Reply Quote 0
                                • Christoph HartC
                                  Christoph Hart
                                  last edited by

                                  There already is Server.setHttpHeader:

                                  Link Preview Image
                                  HISE | Docs

                                  favicon

                                  (docs.hise.audio)

                                  1 Reply Last reply Reply Quote 1
                                  • Dan KorneffD
                                    Dan Korneff
                                    last edited by

                                    Is there a way to set the FileSystem.browse() startFolder to be a sub-folder?
                                    I'm looking to use a button to browse to the UserPresets folder of an Expansion.

                                    FileSystem.Expansions
                                    

                                    gets me to the root..

                                    I've tried:

                                    FileSystem.Expansions.UserPresets
                                    FileSystem.Expansions/UserPresets
                                    

                                    no go.

                                    Dan Korneff - Producer / Mixer / Audio Nerd

                                    1 Reply Last reply Reply Quote 0
                                    • Casey KolbC
                                      Casey Kolb
                                      last edited by Casey Kolb

                                      @dustbro

                                      I think you just need to do something like this:

                                      var folder = FileSystem.getFolder(FileSystem.Expansions).getChildFile("UserPresets");
                                      FileSystem.browse(folder, false, "", function() {});
                                      

                                      Casey Kolb
                                      Founder & CEO of Lunacy Audio
                                      Composer | Producer | Software Developer

                                      1 Reply Last reply Reply Quote 1
                                      • Dan KorneffD
                                        Dan Korneff
                                        last edited by

                                        Is there anything special I have to do while using getParentDirectory?

                                        I'm trying to get the directory of a file, but it's returning the full file path with file name.
                                        e.g. C://Folder/audio.wav

                                        Same as if I call FullFilePath

                                        Dan Korneff - Producer / Mixer / Audio Nerd

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

                                          @dustbro Example please

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

                                          Dan KorneffD 1 Reply Last reply Reply Quote 0
                                          • Dan KorneffD
                                            Dan Korneff @d.healey
                                            last edited by

                                            @d-healey Trying to get a label to display the parent directory of some audio files.

                                            const var DirectoryLabel = Content.getComponent("DirectoryLabel");
                                            const var Browse = Content.getComponent("Browse");
                                            
                                            const var FullPath = [];
                                            const var ParentDirectory = [];
                                            
                                            inline function onBrowseControl(component, value)
                                            {
                                                if(value) //if button clicked
                                                {
                                                    //open file broswer
                                                    FileSystem.browseForDirectory("", function(directory)
                                                        {
                                                            
                                                            local files = FileSystem.findFiles(directory, "*.wav", false);
                                            
                                                            for(f in files)
                                                            {
                                                                FullPath.push(f.toString(File.FullPath));                   //push full path
                                                                ParentDirectory.push(f.toString(File.getParentDirectory));  //push parent directory
                                                            }
                                                        });     
                                                           
                                                }
                                            	
                                            };
                                            
                                            Content.getComponent("Browse").setControlCallback(onBrowseControl);
                                            
                                            HiseSnippet 1096.3ocsV01aaaCDlxwpH1cdnEXec.B9SxCY9kt1tADTTu3DODrlTi3rhALLzRKQESDJRAR5jYTDf8Sa+j1+fsihRVx1JYsFX7a26O2wi2wIRQ.QoDRjSiKWlPPNeg6zkb87QywTN5ziMLRvRBWeIQoQGsLAqTjPjiyd+jQCmF0Qom+90GgYXd.ofEB8NAMf7FZLUWvcxvelxXiwgjKowkz94COMPvGIXhE.Z1ysOJAGbM9Jx4XiZ0bQNO5jPpVHmpwZhBz4HQ3xoyE2xs5+NphNiQLDCPSAGYYiFMmxBmjmoJDxo9jh7dOad+UtmQCoq3Wj+OIUfWgEkqAN0VGR0WCRCtOHMVvBMN3dfmSI3U2Bum5NMPRSzERLX6wtmx0DYDFJ6kgkUWTsWT2cj.zfq6FiulLVBDqrv+k86ef2y52uygsZ1pIT7UZuavRuioRR.jTKeCdFg48JubebEQORDmH3.ge60UqswKE93Ho3VE4ds0Jt8lQd7BFaBVOGr6298072jzdvUgLWgVMobFkS7hVvCzTA2Svs91DWof4GjGzC.+vVP5zp4Ga0zCNzHeKGud8nQdyVn0f8ALZv0jPqJYZZN85IRHbuHJi3MSJT2RjEBGCbmtToIwcmkF8wB4Jr52t8AqvmeXN6NEluQnxOaygIBvrTLnfJPonFQ4gFRUg+Ovq82z8V7MlfiYJhsVuoGiDR+HOpMwTc1VgJvUZFmcS0MYgZteTWsXpVR4W4aPQ2boc5bXE11qmwHnjvXdIfVUGgMtwqNPPW0F5kFxrHXGb4spjrUbta8PeWFb2BPVFf1MZ07tz53C2V2UYXm1.NByXyfAY9azX14vRsrmKzj2x86z7iMaz7tldaJJJpRYYthQjUJ1LeU9PF5yWDOiHyeYjqHLzY8oZO9SapVfslTRQA+TNU+V3giktXtmQlMqyk1GsJYKypHGKyMM0pPsBVaOVEkcmYFvloNnpNc75WlMd8nzg.HJfw8cs2WnzhS4sZne4ziwZbte.WBgIgH0TSwx4XxMvVO6X6FtGSTWqEIvBrU8IHG2+6n9GEQb3vkqH9qKFRUmIhA2fk.amZnR9ceqeak42zAyot8ItqOstj6+PTI2+mWL7VZndN.QmqcPn4D5UyM.14qAoDnq.mdw6rGlQuhGmF0G4xHQPYc6sVvtSQ3BFVu9BUyOGxD.8iqs4xrchqn5kk+YwmwV19UtkcPUsCehv8otSn5f4Ui2ZUfWnu3+a7l8mkVtmDEA2pEfst63ecW+fxmATtPrPCyfOCCihgNI2yWDOE91V.APBmSXJSGSMySNKceCsoxLkvCSI9G3jIbfg1IS3fbgnXbfT79.6CUyuh1OkCfId5GBa3dlg1aP9CTW29c6ihgOq89f.So3aArWsMOaGr461Aad9NXyK1Aad4NXy2uC17COnMl+I+iKzhX6yDfwjSRGT53bB2L2HsiD8uvBkWeC
                                            

                                            Dan Korneff - Producer / Mixer / Audio Nerd

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

                                            19

                                            Online

                                            1.7k

                                            Users

                                            11.9k

                                            Topics

                                            103.6k

                                            Posts