HISE Logo Forum
    • Categories
    • Register
    • Login

    Haha the easter bunny has delivered.

    Scheduled Pinned Locked Moved General Questions
    loris
    99 Posts 10 Posters 7.4k 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.
    • d.healeyD
      d.healey @Christoph Hart
      last edited by

      @Christoph-Hart Yeah I can also see a case for morphing between dissimilar samples, like sustain to flutter or sustain to vibrato. Or even between samples that are from completely different instruments or sources.

      Would it be worthwhile my contacting the developer and seeing if we can get him to release it under MIT or perhaps dual license it for HISE?

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

      Christoph HartC 1 Reply Last reply Reply Quote 0
      • Christoph HartC
        Christoph Hart @d.healey
        last edited by

        @d-healey My gut feeling is that the performance is not good enough for realtime usage. A 8 second sample takes about 2 seconds to synthesise, so a single voice is 25% CPU, so playing a chord will eat up your entire CPU.

        I think the library was never intended to be used in realtime and the amount of work to make this possible is more or less the same as writing a fast additive synth that uses the analysed partial data from scratch.

        LindonL d.healeyD 2 Replies Last reply Reply Quote 3
        • LindonL
          Lindon @Christoph Hart
          last edited by

          @Christoph-Hart

          "a fast additive synth that uses the analysed partial data from scratch...."

          -- so that would be a great idea to do - just do all your partial generating in batch and ship this specification file with an additive sound generator that knew how to read them...

          HISE Development for hire.
          www.channelrobot.com

          1 Reply Last reply Reply Quote 1
          • d.healeyD
            d.healey @Christoph Hart
            last edited by d.healey

            @Christoph-Hart That makes sense. Ok I'll continue with the phase alignment idea. I'm already working with another developer on this angle too.

            Oh actually you might be interested, it's the guy who made this - https://github.com/VirtualAnalogy/Paraphrasis

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

            LindonL 1 Reply Last reply Reply Quote 2
            • LindonL
              Lindon @d.healey
              last edited by

              @d-healey said in Haha the easter bunny has delivered.:

              @Christoph-Hart That makes sense. Ok I'll continue with the phase alignment idea. I'm already working with another developer on this angle too.

              Oh actually you might be interested, it's the guy who made this - https://github.com/VirtualAnalogy/Paraphrasis

              ooh, err, that'd be good.....

              HISE Development for hire.
              www.channelrobot.com

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

                Is the save button implemented?

                Does the pitch lock use the harmonify class (or whatever it's called)?

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

                Christoph HartC 1 Reply Last reply Reply Quote 0
                • Christoph HartC
                  Christoph Hart @d.healey
                  last edited by

                  @d-healey Nope, the save button doesn't do anything yet, I'll try to think of a few ways of batch processing this stuff as you don't want to click on it for each sample export :)

                  the pitch lock is a custom script function - that's the great thing about the entire setup: you can just define a Javascript function that processes each breakpoint (=read grain) of each partial (=read harmonic).

                  The relevant function looks like this:

                  inline function pitchLock(obj)
                  {
                      // Repitch
                      obj.frequency *= pitchFactor;
                  		
                      // Apply noise gain (bandwidth is the noise amount, 1 = full noise, 0 = pure sinusoidal)
                      obj.bandwidth *= noiseGain;
                  
                      // calculate the "real" harmonic
                      local ratio = Math.round(obj.frequency / obj.rootFrequency);
                  
                      // calculate the fully locked frequency
                      local lockedFrequency = ratio * obj.rootFrequency;
                  
                      // interpolate between the locked and original frequency 
                      obj.frequency = pitchLockAmount * lockedFrequency + (1.0 - pitchLockAmount) * obj.frequency;
                  }
                  

                  As you can see, it's almost pseudo-code style easy to write spectral manipulation functions, which makes it a super nice tool for playing around.

                  d.healeyD 1 Reply Last reply Reply Quote 2
                  • d.healeyD
                    d.healey @Christoph Hart
                    last edited by

                    @Christoph-Hart Oh wow, that makes it quite simple to use then. Yes batch preprocessing would be good.

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

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

                      I'm thinking if I pitch lock all the dynamic layers, then align the peaks and troughs my chorusing issues should be eliminated. Is there a way to overlay waveform views so I can do the lining up in HISE?

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

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

                        what the heck is a Loris?

                        d.healeyD 1 Reply Last reply Reply Quote 0
                        • d.healeyD
                          d.healey @A Former User
                          last edited by d.healey

                          @iamlamprey

                          84024504-7aca-4317-a254-f19a50564dcf-image.png

                          www.cerlsoundgroup.org/Loris/

                          Go check out the video I posted on Patreon last week :)

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

                          ? 1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User @d.healey
                            last edited by

                            @d-healey i shall resub when I'm not MC Hammer-broke ;)

                            i assume there's already someone out there way smarter than me working on a differentiable version of this...

                            d.healeyD 1 Reply Last reply Reply Quote 0
                            • d.healeyD
                              d.healey @A Former User
                              last edited by

                              @iamlamprey Oh sorry, didn't realise you weren't subscribed. The video will probably be public in a couple of weeks.

                              Basically Loris is a tool for dismantling audio files into individual sine-waves, fiddling about with them, and then putting them back together.

                              And what Christoph has done is use it to create what is essentially a harmonic editor.

                              This kind of thing:
                              https://www.youtube.com/watch?v=TSqx_zZKlLk

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

                              Christoph HartC 1 Reply Last reply Reply Quote 0
                              • Christoph HartC
                                Christoph Hart @d.healey
                                last edited by

                                @d-healey Aah, keymap, the glory days. What a shame what Apple did to this software...

                                d.healeyD ustkU 2 Replies Last reply Reply Quote 2
                                • d.healeyD
                                  d.healey @Christoph Hart
                                  last edited by d.healey

                                  @Christoph-Hart Fortunately it was never something I used and didn't become dependent on for my workflow. I know some developers still keep some really old Mac hardware around just for this one tool. But this feature always seemed cool to me.

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

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

                                    @Christoph-Hart can i steal this LAF? good lord it's beautiful

                                    1 Reply Last reply Reply Quote 2
                                    • ustkU
                                      ustk @Christoph Hart
                                      last edited by ustk

                                      @Christoph-Hart It crashes on mac with a mouseUp in the upper previewPanel so I changed this

                                      Engine.playBuffer("", "", 0.0);
                                      

                                      into this

                                      Engine.playBuffer([], "", 0.0);
                                      

                                      Can't help pressing F5 in the forum...

                                      ? 1 Reply Last reply Reply Quote 0
                                      • d.healeyD
                                        d.healey @Christoph Hart
                                        last edited by d.healey

                                        @ustk Intel or M1?

                                        @Christoph-Hart said in Haha the easter bunny has delivered.:

                                        I also got the crash on Windows, but on macOS it's not crashing for some reason... I'll debug it later, but it looks like an easy fix.

                                        Can you also make the export work? :D

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

                                        ustkU 1 Reply Last reply Reply Quote 0
                                        • ustkU
                                          ustk @d.healey
                                          last edited by

                                          @d-healey Intel... If the export is meant to be the save button then it apparently isn't linked to anything...

                                          Can't help pressing F5 in the forum...

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

                                            @ustk Yeah that's the button (discussed a bit further up this thread). Christoph is planning a batch processing feature and the toolkit at the moment is quite barebones.

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

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

                                            52

                                            Online

                                            1.7k

                                            Users

                                            11.7k

                                            Topics

                                            101.8k

                                            Posts