Depth Control Device

When I saw the “Inertial Slider” Device I was like :dribble:. So I had this actually really simple idea.

I’m pretty sure most of you know the hassle with LFOs. It’s hard to understand how the LFO Offset and the Amplitude are related to each other and when you are going to flaten a LFO it often becomes a mess and requieres at least one Hydra to effectively control the LFO params. And then you have to control the Hydra.

Forget about this crap, forget about Offset, Amplitude, calculating and Hydras. From now on you can simply trigger the DepthControl’s input with the LFO (or any other source) and automate the signal depth with a single slider, while the LFO keeps running on its original settings. I seriously doubt it will ever become easier again. :)

And btw.: Now also modulating LFOs with each other (not mixing, like the Meta Mixer does) is a most easy thing. :yeah: You just trigger the depth of the DepthControl device with one LFO and the input with another LFO. Done. :drummer:

If you don’t know how to try it out: Just copy the XML-code below and paste it in the Mixer view to your track.

Edit: UPDATED with Gooze’s addition of the floor slider. :)

<?xml version="1.0" encoding="UTF-8"?>  
<filterdeviceclipboard doc_version="0"><br>
  <deviceslot type="FormulaMetaDevice"><br>
    <isactive>true</isactive><br>
    <isselected>true</isselected><br>
    <selectedpresetname>Init</selectedpresetname><br>
    <selectedpresetismodified>true</selectedpresetismodified><br>
    <ismaximized>true</ismaximized><br>
    <customdevicename>Depth Control</customdevicename><br>
    <formulaparagraphs><br>
      <formulaparagraph>(A-C)*B+C</formulaparagraph><br>
    </formulaparagraphs><br>
    <functionsparagraphs><br>
      <functionsparagraph></functionsparagraph><br>
      <functionsparagraph></functionsparagraph><br>
    </functionsparagraphs><br>
    <inputnamea>Input</inputnamea><br>
    <inputnameb>Depth</inputnameb><br>
    <inputnamec>Floor</inputnamec><br>
    <editorvisible>true</editorvisible><br>
    <panelvisible>0</panelvisible><br>
    <inputa><br>
      <value>1.0</value><br>
      <visualization>Mixer and Device</visualization><br>
    </inputa><br>
    <inputb><br>
      <value>0.5</value><br>
      <visualization>Mixer and Device</visualization><br>
    </inputb><br>
    <inputc><br>
      <value>0.0</value><br>
      <visualization>Device only</visualization><br>
    </inputc><br>
    <desttrack><br>
      <value>-1</value><br>
      <visualization>Device only</visualization><br>
    </desttrack><br>
    <desteffect><br>
      <value>-1</value><br>
      <visualization>Device only</visualization><br>
    </desteffect><br>
    <destparameter><br>
      <value>-1</value><br>
      <visualization>Device only</visualization><br>
    </destparameter><br>
  </deviceslot><br>
</filterdeviceclipboard>  
  

Right,

How does this work? I am looking at the code you posted, and I see nothing related to the actual internal workings of the device, nor do I see anything related to the coding part that the user can do.

Total noob when it comes to all this, but seriously interested in learning, so any explanation you care to give would be amazing.

Thanks!

The “device” is just Renoise’s own Formula Device, which is a bit hidden at the moment since it’s not 100% totally ready for general usage. (Although it does still work pretty damn well)

The thing that makes it work is the formula that Bit_Arts has added to it:

A*B  

(In the Formula Device itself, you can expand/edit the formula with the [>] button found in the lower right corner.)

In other words, the output is literally just Input A (“Input” parameter) multiplied by Input B (“Depth” parameter).

Very simple stuff, but an elegant solution nonetheless.

Bed time for me now, but I will be investigating this when I get time in the week.

Cheers.

A*B is too simple; at least make C control the relative floor (A-C)*B+C.

Nice idea. Added to the code. :)

For Math! XD

For math and for the slider name. ^^