HISE Logo Forum
    • Categories
    • Register
    • Login

    Wavetable waveform view

    Scheduled Pinned Locked Moved General Questions
    41 Posts 10 Posters 3.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.
    • Matt_SFM
      Matt_SF @DanH
      last edited by

      @DanH yes it's the index. But did you convert your samplemap successfully ? You have to spread your waveforms across the velocity range of the sampler and convert the samplemap to a wavetable using HISE's converter tool (default options should be fine).

      Develop branch
      Win10 & VS17 / Ventura & Xcode 14. 3

      DanHD 1 Reply Last reply Reply Quote 0
      • DanHD
        DanH @Matt_SF
        last edited by

        @Matt_SF oh right - I just spread it across the keyboard lol

        How do you spread across the velocity range?

        DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
        https://dhplugins.com/ | https://dcbreaks.com/
        London, UK

        Matt_SFM 1 Reply Last reply Reply Quote 0
        • ustkU
          ustk
          last edited by

          What is the advantage of using a WaveTable over a Sampler?
          Because if you can only modulate the position then a sampler can do it if you spread your waves in the samplemap.
          Maybe it is an efficiency difference?
          I'm asking because I began a kind of wavetable based on a sampler and I don't know if I better have to switch to a real wavetable module, I'm not familiar with all of those...

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

          1 Reply Last reply Reply Quote 0
          • Matt_SFM
            Matt_SF @DanH
            last edited by

            @DanH just define the min-max values for each 'velocity' layer, define the LoKey/HiKey numbers, and run the wavetable converter.

            c8a9c40c-230e-4c62-b158-a24c73a39bf7-image.png

            @ustk the main advatage of using wavetables is that the transitions between the different waves are interpolated, hence modulating the position will be smoothed.
            With a sampler you have 2 options if you want to do the same. Let say you want to go from sine to square :
            Either you layer your samples like on the picture above, but when modulating the position, you'll get abrupt changes between sine-tri-saw-square (but maybe that's what you want / you don't care).
            Or you can layer your samples so each one 'crosses' the previous and the next but this is like dry/wetting a signal, there's no "morphing" between the waveforms.
            Try for yourself ! I personally like wavetable synths :) .
            Christoph put an example project in his repo.

            Develop branch
            Win10 & VS17 / Ventura & Xcode 14. 3

            DanHD ustkU 2 Replies Last reply Reply Quote 0
            • DanHD
              DanH @Matt_SF
              last edited by

              @Matt_SF right, how many velocity layers do I want?

              DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
              https://dhplugins.com/ | https://dcbreaks.com/
              London, UK

              Matt_SFM 1 Reply Last reply Reply Quote 0
              • Matt_SFM
                Matt_SF @DanH
                last edited by

                @DanH that's up to you ๐Ÿ˜†. It depends on your project and what you want to achieve...
                For an oscillator which goes simply from sine to saw, then 2 waves should be enough but for complex wavetables you should use as many samples as needed.
                Your samples are the 'key-frames' you want to go through. HISE converter then creates the middle frames.

                Develop branch
                Win10 & VS17 / Ventura & Xcode 14. 3

                1 Reply Last reply Reply Quote 1
                • ustkU
                  ustk @Matt_SF
                  last edited by ustk

                  @Matt_SF Thanks, you can do a smooth interpolation from sampler group XFade too, hence my question

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

                  Christoph HartC Matt_SFM 3 Replies Last reply Reply Quote 0
                  • Christoph HartC
                    Christoph Hart @ustk
                    last edited by

                    @ustk You can use up to 128 different wavetables for each note. If you're doing this with a sampler the voice count will rise up ridiculously.

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

                      @Christoph-Hart Ok I see. In my case I need only 4 waveforms, monophonic, so I don't think it is as bad.

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

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

                        @Christoph-Hart Oh, and I forgot to mention the user should be able to select whatever wave he needs between this group of 4 dynamically from a browser and even create his own shapes. So I think I better have to stick with a sampler...

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

                        Christoph HartC 1 Reply Last reply Reply Quote 0
                        • Matt_SFM
                          Matt_SF @ustk
                          last edited by

                          @ustk said in Wavetable waveform view:

                          @Matt_SF Thanks, you can do a smooth interpolation from sampler group XFade too, hence my question

                          oh ok, I'm aware of groupXFading but I never tried it. Guess I'm up for some A/B testing this evening :)

                          Develop branch
                          Win10 & VS17 / Ventura & Xcode 14. 3

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

                            @ustk Yeah in this case the sampler is better. Are you creating the samplemap dynamically whenever the user swaps one of the four samples?

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

                              @Christoph-Hart I haven't worked on it for a while but I reckon I create a sample map with all samples stacked and ready on note 0 (that is forbidden to play), and when selecting 4 samples among the stack, I just move them across the playing range and assign their group

                              The fact is that the stack is fixed. So I might find a way to load external samples instead and save the sample map so it can be recalled

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

                              1 Reply Last reply Reply Quote 0
                              • Matt_SFM
                                Matt_SF @ustk
                                last edited by Matt_SF

                                @ustk said in Wavetable waveform view:

                                @Matt_SF Thanks, you can do a smooth interpolation from sampler group XFade too, hence my question

                                So I did a quick test and group XFading sounds good. It's still crossfading but the results sound really close with both techniques (with simple waveforms obviously).
                                Of course for what you want to do, group XFading is the answer.

                                I'll try in my actual project to see which is better.

                                However, I'm working with single-cycle waveforms and when I put them in the sampler, it makes HISE crash on the first note I play...
                                I don't know if you're experiencing the same behaviour...

                                @Christoph-Hart should I create a new thread about it ? This is what I got during debug :

                                JUCE Assertion failure in samplebuffer.cpp:341
                                ...
                                JUCE Assertion failure in streamingsamplervoice.cpp:222
                                

                                Develop branch
                                Win10 & VS17 / Ventura & Xcode 14. 3

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

                                  Does the wavetable synth stream from disk or is it all loaded into memory?

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

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

                                    @d-healey good question ๐Ÿ‘

                                    @Matt_SF I was wondering why my old project (that was playing just fine) now crashes too when I play a noteโ€ฆ

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

                                    1 Reply Last reply Reply Quote 0
                                    • FrankbeatF
                                      Frankbeat
                                      last edited by Frankbeat

                                      In my experience, waveforms with loops of shorter than about 600 samples are likely to crash HISE, even when loaded into memory. But with waveforms that short, a wavetable synthesizer is the tool to go for, rather than a sampler. Seems to handle it easier.

                                      Using HISE from the develop branch (Feb '23)

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

                                      15

                                      Online

                                      1.7k

                                      Users

                                      11.9k

                                      Topics

                                      103.6k

                                      Posts