convert 0 - 10 v to -10 and 10

what is the way to do this?

Use a Offset to multiply by two, and then subtract ten

Or subtract 5 and then multiply by 2 :slight_smile:

1 Like

use one of these

both of them do the trick :sunglasses:

1 Like

if I have space I use NYSTHIā€™s as well, if Iā€™m feeling more tidy I load the good old bogaudio offset

3 Likes

Two things I cherish about Offset (Bogaudio): 1.) Itā€™s fully polyphonic and 2.) you can change the order of operations in the context menu, i.e. either ā€˜scale, then offsetā€™ or ā€˜offset, then scaleā€™.

6 Likes

6 Likes

Plus one to Bogaudio OFFSET, it is my #1 most used module, I use it multiple times in almost every single patch, and is the reason why lots of my module outputs include a -2 to 2 attenuvertor and a -10 to 10 offset knob

2 Likes

Not that I have anything against Bogaudio Offset, itā€™s been a staple in my patches for a long time, but lately I use this:

It does exactly the same, but a little thinner, and a little lighter on the cpu. And in a big patch, every little bit of space and cpu saving helpsšŸ˜…

4 Likes

For me docB is the only one I use.

But OFS3, because itā€™s only a little bit wider, and itā€™s rare that you need only one instance of Offset.

3 Likes

same for me. :+1:

There is certainly lots of overlap, but they are definitely not the same.

  1. Clipping behavior

    • Bogaudio Offset defaults to clipping at +/- 12V, with an option to turn clipping off.
    • docB OFS never clips.
  2. CV input behavior

    • Both docB CV inputs are additive with the knob, and the scale input equates 1V with x1. So scale knob at x10 + CV input of 10V results in x20 amplification.
    • Like most (all?) Bogaudio CV inputs, the knobs become attenuverters when CV is patched. The offset CV input behaves as expected. But the Scale CV input is not linear! I canā€™t find anything about this in the documentation, but it has never suited my needs due to the non-linearity.

I find the Bogaudio clipping can be useful for CV, but I donā€™t like it at all for audio due to wicked aliasing.

One relative downside of Bogaudio Offset is it does not use SIMD operations. So CPU usage rises with every channel of polyphony added.

The Bogaudio Offset has one surprising use case - it can be used as a two input mixer.

  • Patch input one into the Offset CV and use the Offset knob to attenuvert the signal.
  • Patch input two into the In input, and use the Scale knob to attenuvert the signal. Leave the Scale CV input unpatched
  • The attenuverted signals will be summed at the OUT output

Another option for rescaling is the VCV Rescale module.

It too is fully polyphonic, and has no CV inputs. The order of operations is always gain (scale) before offset. The gain factor can go as high as x100 with the context menu. It always clips (or folds) with independent min and max values between -10 and +10. There is no anti-aliasing, so it has limited usefulness for audio when clipping or folding is involved.

I used to use VCV CV Mix for rescaling, especially when I was limiting myself to the original Fundamental modules.

It also is fully polyphonic, but it does not have CV inputs. Each input is normaled to 10V, so the Level knobs act as offsets when the corresponding input is unpatched. So it can attenuvert one signal between x +/-10 with up to +/- 20V offset. Or patching the same signal to two inputs it can attenuvert between x +/-20 with up to +/- 10V offset. Or patching all three inputs it can attenuvert between x +/-30 with no offset. It never applies any clipping.

Ever since I created the Venom plugin, I typically use MIX 4 for rescaling without any CV

For rescaling as scale followed by offset it works basically the same as CV Mix, except there is an extra input channel. The Level mode must be set to either 100%, x2, or x10 in order to get the offset behavior.

But with the Mix attnuverter it also allows offset followed by scale. Patch the input to channel 1 with the attenuverter at unity. Use any of the other channel Level knobs to set the offset, and use the Mix knob to set the final gain.

It is not the best with CPU usage, but it is very good. Definitely better than Bogaudio Offset when polyphony is used.

By default it does not clip. But it has excellent clipping options. Hard clipping can be done at +/-5 or +/-10 V. And soft tanh saturation clipping can be done at +/-10V or +/- 6V. Best of all it offers oversampling for the soft clipping to mitigate aliasing that soft clipping can introduce. There is lots more this module can do that does not apply to rescaling.

One of my most recent modules is a Venom version of the Audible Instruments Quad VC Polarizer, which in turn is a port of Mutable Instruments Blinds. It is an excellent choice for rescaling.

It is extremely CPU efficient and fully polyphonic. It has a great many uses, but for this discussion it can independently rescale 4 polyphonic inputs in only 5 hp (scale followed by offset). To do so it is a bit counter-intuitive. Patch each input into a Level CV input, and use the attenuverter to scale the input, and the Level knob to set the offset. It sounds weird, but if you do the algebra you will see that it works just fine.

This also has excellent clipping options:

  • None
  • +/- 5V hard clipping
  • +/- 10V hard clipping
  • +/- 6V soft tanh saturation clipping
  • +/- 12V soft tanh saturation clipping

And all clipping can be done with or without anti-aliasing via oversampling.

With the default settings of Normal at 5V and Unity at 5V, it can attenuvert between -100% and 100%, and offset +/-5V.

With Normal at 10V and Unity at 5V, it can attenuvert between -200% and 200%, and offset +/- 10V.

This may be the best option for basic rescaling of up to 4 inputs, both from a CPU usage and space usage standpoint.

6 Likes

interesting breakdown! i use the bog offset a ton, iā€™m curious about this bit that you said:

ā€œOne relative downside of Bogaudio Offset is it does not use SIMD operations. So CPU usage rises with every channel of polyphony added.ā€

do you think this is a thing Bog could fix? so that the offset module is more cpu efficient when using it for polyphony like i do every time?

Bog are very nice modules, but they really havenā€™t been updated in years. There is a lot more on this CPU usage issue here:

1 Like

I think ā€œfixā€ is the wrong word. It certainly isnā€™t broken. But yes, it could be improved.

I finally looked at the source code, and it responds exponentially to the CV input (it is squared). Negative CV is inverted after squaring

Yeah, think I usually used audio taper for my attenuverter curves. Squaring is a pretty common hack.

sometimes im surprised at cpu usage when im not using what seem to be intensive modules. i have a ton of bog in patches tho. maybe ill switch to the suggested docb or venom

In general Bog modules are super efficient. I guess itā€™s possible that if you are doing a lot of polyphony that some other modules could use less CPU. But for sure Bog modules are super light on the CPU. Check out my article (linked above) if you are interested in CPU usage. For sure some modules are complete pigs.

1 Like

will peep your article for sure.

yeah all my patches are 5ch polyphony. several multichannel wav players (voxglitch/simpliciter) and a ton of mixing/offset/modulation galore, usually three or four patches in one, with a master crossfader to go between them all during a gig