HISE Logo Forum
    • Categories
    • Register
    • Login

    scrolling audio display/visualizer

    Scheduled Pinned Locked Moved General Questions
    14 Posts 4 Posters 578 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.
    • mmprodM
      mmprod @Lindon
      last edited by

      @Lindon thanks! I forgot that the audio analyzer had an oscilloscope…….

      Is it style-able any further?

      For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
      John 3:16

      dannytaurusD 1 Reply Last reply Reply Quote 0
      • mmprodM
        mmprod @Lindon
        last edited by

        @Lindon Also, can I zoom out even more? Like more than 32768 samples

        For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
        John 3:16

        dannytaurusD 1 Reply Last reply Reply Quote 0
        • mmprodM
          mmprod
          last edited by

          Or perhaps slow down the rate at which it moves across the screen?

          For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
          John 3:16

          1 Reply Last reply Reply Quote 0
          • dannytaurusD
            dannytaurus @mmprod
            last edited by dannytaurus

            @mmprod said in scrolling audio display/visualizer:

            Is it style-able any further?

            Use a LookAndFeel script

            const laf = Content.createLocalLookAndFeel();
            
            laf.registerFunction("drawAnalyserBackground", function(g, obj)
            {
            	//fill the background
                    g.fillAll(Colours.blue);
            });
            
            laf.registerFunction("drawAnalyserPath", function(g, obj)
            {
            	// draw the outline path
                    g.setColour(Colours.red);
            	g.fillPath(obj.path, obj.area);
            	// fill the path
                    g.setColour(Colours.red);
            	g.drawPath(obj.path, obj.area, 1);
            });
            
            Content.getComponent("Analyser1").setLocalLookAndFeel(laf);
            

            Meat Beats: https://meatbeats.com
            Klippr Video: https://klippr.video

            mmprodM 2 Replies Last reply Reply Quote 0
            • dannytaurusD
              dannytaurus @mmprod
              last edited by dannytaurus

              @mmprod said in scrolling audio display/visualizer:

              @Lindon Also, can I zoom out even more? Like more than 32768 samples

              Synth.getEffect("Analyser1").setAttribute(1, 65536);
              

              This is double the 32768 available in the dropdown, and therefore half the speed of scrolling, and seems to be the maximum allowed. Settings higher than this are ignored.

              The '1' refers to the BufferSize attribute.

              Meat Beats: https://meatbeats.com
              Klippr Video: https://klippr.video

              1 Reply Last reply Reply Quote 0
              • mmprodM
                mmprod @dannytaurus
                last edited by

                @dannytaurus said in scrolling audio display/visualizer:

                @mmprod said in scrolling audio display/visualizer:

                Is it style-able any further?

                Use a LookAndFeel script

                const laf = Content.createLocalLookAndFeel();
                
                laf.registerFunction("drawAnalyserBackground", function(g, obj)
                {
                	//fill the background
                        g.fillAll(Colours.blue);
                });
                
                laf.registerFunction("drawAnalyserPath", function(g, obj)
                {
                	// draw the outline path
                        g.setColour(Colours.red);
                	g.fillPath(obj.path, obj.area);
                	// fill the path
                        g.setColour(Colours.red);
                	g.drawPath(obj.path, obj.area, 1);
                });
                
                Content.getComponent("Analyser1").setLocalLookAndFeel(laf);
                

                Aha, thank you! drawAnalyserBackground/Path does the trick

                For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
                John 3:16

                1 Reply Last reply Reply Quote 0
                • mmprodM
                  mmprod @dannytaurus
                  last edited by

                  @dannytaurus said in scrolling audio display/visualizer:

                  @mmprod said in scrolling audio display/visualizer:

                  Is it style-able any further?

                  Use a LookAndFeel script

                  const laf = Content.createLocalLookAndFeel();
                  
                  laf.registerFunction("drawAnalyserBackground", function(g, obj)
                  {
                  	//fill the background
                          g.fillAll(Colours.blue);
                  });
                  
                  laf.registerFunction("drawAnalyserPath", function(g, obj)
                  {
                  	// draw the outline path
                          g.setColour(Colours.red);
                  	g.fillPath(obj.path, obj.area);
                  	// fill the path
                          g.setColour(Colours.red);
                  	g.drawPath(obj.path, obj.area, 1);
                  });
                  
                  Content.getComponent("Analyser1").setLocalLookAndFeel(laf);
                  

                  Thanks, thats exactly what I needed

                  For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
                  John 3:16

                  1 Reply Last reply Reply Quote 0
                  • mmprodM
                    mmprod
                    last edited by

                    By any chance, can I style things other than color as well?

                    For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
                    John 3:16

                    dannytaurusD 1 Reply Last reply Reply Quote 0
                    • dannytaurusD
                      dannytaurus @mmprod
                      last edited by dannytaurus

                      @mmprod said in scrolling audio display/visualizer:

                      By any chance, can I style things other than color as well?

                      Like what? There's not much else to customize.

                      You can already set the width and height, the colours used to draw the waveform, including the stroke width of the outline, and the colour of the background. By setting the buffer size you are also setting the scroll speed.

                      In my plugin the audio is mono so I display only one channel of the waveform by putting the floating tile in a panel and making it twice the height. The bottom half is cut off by the panel bounds.

                      Meat Beats: https://meatbeats.com
                      Klippr Video: https://klippr.video

                      mmprodM 1 Reply Last reply Reply Quote 0
                      • mmprodM
                        mmprod @dannytaurus
                        last edited by

                        @dannytaurus

                        IMG_3434.jpeg

                        For example is it possible in hise to make the audio visualizer lines? Like in the image above.

                        For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
                        John 3:16

                        mmprodM 1 Reply Last reply Reply Quote 0
                        • mmprodM
                          mmprod @mmprod
                          last edited by

                          @mmprod here’s an even better example:

                          For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
                          John 3:16

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

                          16

                          Online

                          1.8k

                          Users

                          12.1k

                          Topics

                          105.4k

                          Posts