Output of overdriven modules isn't remaining clipped

For discussion of the Voltage Modular synthesis ecosystem.
Post Reply
wavemechanic
Posts: 182
Joined: Thu Sep 12, 2019 5:14 am

Output of overdriven modules isn't remaining clipped

Post by wavemechanic »

In order to emulate hardware behavior, shouldn't the clipped output of one module stay clipped as it runs into another one that reduces the gain? I tried this in Softube Modular where it works as expected, but in Voltage, my intentional clipping is lost after it leaves the clipped module and feeds another one.
Attachments
screen 2019-09-07 at 7  3.55.41 PM.jpg
screen 2019-09-07 at 7 3.55.41 PM.jpg (108.45 KiB) Viewed 4610 times
User avatar
Captain
Posts: 103
Joined: Sat Aug 25, 2018 11:12 am

Re: Output of overdriven modules isn't remaining clipped

Post by Captain »

The sound is actually not clipping at any point in your example patch, the waveform just goes beyond the boundaries of the oscilloscope view, so the "clipping" is purely visual (it might be a little confusing that the clipping starts before the waveform hits the edge of the screen, but it's the limit set by the 2V/5V/10V switch). VM (like most modern DAWs) has a practically infinite internal headroom, so the sound will never clip inside your patches, unless of course the sound goes through a module that clips/limits the signal on purpose, or when you route the signal out of VM. Most hardware modules probably clip or start distorting at some point, but for example the VM Gain module does not have any limits how loud the signal can get.
wavemechanic
Posts: 182
Joined: Thu Sep 12, 2019 5:14 am

Re: Output of overdriven modules isn't remaining clipped

Post by wavemechanic »

That's my point. The gain is floating-point (practically infinite). In a real Eurorack module, you would see clipping. In this virtual environment it isn't clipping. I was trying to intentionally clip it by maxing out the gain. Softube does this as I expect and real module to. But in this environment I cannot. You might say it's too perfect or is not faithful to analog. I should be able to overdrive and clip the output of the module and see that clipping at the next stage. I've attached an example of this working in Softube Modular. I guess I would expect all modules to emulate the distortion characteristics of analog clipping. I wasn't expecting the opposite behavior. It also means that I have to keep track of which modules are faithful and which are not, which is another reason I wish I could add and search my own metatags for modules.
Attachments
screen 2019-09-07 at 7  4.19.10 PM.jpg
screen 2019-09-07 at 7 4.19.10 PM.jpg (217.06 KiB) Viewed 4522 times
User avatar
Captain
Posts: 103
Joined: Sat Aug 25, 2018 11:12 am

Re: Output of overdriven modules isn't remaining clipped

Post by Captain »

OK yeah, I got what you mean. In the case of the virtual Doepfer modules in Softube Modular, since they are official emulations of specific real hardware pieces, it definitely makes sense for them to emulate all aspects of their HW counterparts, including the overdrive characteristics. In analog hardware, distortion is usually more of a byproduct of the specific components used (and laws of physics...) rather than something that was put there ”on purpose” (of course that doesn’t mean these byproducts can’t be used for great effect :) ).

But in the case of (for example) the purely virtual VM Gain module that has no connection to the real/analog world, it isn’t exactly obvious how it should behave with ”overdriven” signals. At what point should it start clipping? Which distortion algorithm should be used (there’s only about a million to choose from...)? And so on.

At least to me it makes more sense that unless we are trying to emulate some specific analog hardware or behaviour (or clipping/distortion is the ”main” function of the module), we stay purely in the digital world without any arbitrary limitations and unwanted distortion, and a gain module just changes gain, nothing else. It’s always easy to just add a separate distortion/saturation module in a patch if we want that. And nothing stops someone from creating a clipping gain module or a full collection of ”analog behaving” modules for VM too (hmm, maybe there’s my next coding project... after the dozen other modules I have in the works :D ) But yes, I definitely get what you mean.

In the end, I guess there’s no right and wrong in this, it’s more like a philosophical question. :)
wavemechanic
Posts: 182
Joined: Thu Sep 12, 2019 5:14 am

Re: Output of overdriven modules isn't remaining clipped

Post by wavemechanic »

I can adjust my expectations now that I know. I construed it as an oversight originally, because I thought the goal was to emulate Eurorack in every respect. I just have to adapt my thought process to the actual paradigm here and memorize which modules behave like analog and those that don't.
User avatar
Captain
Posts: 103
Joined: Sat Aug 25, 2018 11:12 am

Re: Output of overdriven modules isn't remaining clipped

Post by Captain »

The same kind of ambiguity also exists in the VST world. Without trying (or without specific information from the manufacturer), you can never be sure how a plugin behaves if you crank its input or output beyond ”normal” levels. In my experience, plugins with an ”analog” vibe (which may be based on an actual HW unit) usually emulate some kind of overdrive behaviour, while purely virtual/digital plugins work in a linear fashion with an (almost) unlimited headroom.
wavemechanic
Posts: 182
Joined: Thu Sep 12, 2019 5:14 am

Re: Output of overdriven modules isn't remaining clipped

Post by wavemechanic »

Let me be clear. I understand floating point gain behavior extremely well. My point is that I expected a Eurorack emulation to behave like Eurorack hardware. I can adjust my expectation. Obviously, I don't have a choice. But if I am expecting realistic Eurorack behavior, then I am expecting gain to clip in all modules if it exceeds the emulated voltage level, and I make decisions accordingly. Softube thought of this. Voltage is different. Again, not complaining here. The goal of my post was to note what I thought was a bug, express my surprise based on the fact that the GUI suggests Eurorack behavior, and at this point to acknowledge that the mixed behavior is intentional. I get it. I'm fine with it. There are modular plugins on the market that don't look like Eurorack. Then floating-point behavior of each module would be expected. In the case of this GUI, I wouldn't expect it. I stand corrected, of course. It was just confusing at first.
User avatar
DarkStar
Posts: 82
Joined: Mon Jan 28, 2019 4:09 pm
Location: Surrey, UK

Re: Output of overdriven modules isn't remaining clipped

Post by DarkStar »

Let's see if I understand correctly.

Internally the signal is not clipping anywhere. Going into the first 'scope, it is exceeding +5V but as the 'scope's range is set to +/-5V then it hits the limit and appears to clip. That is just a visual artefact of the 'scope.

If that is correct, then
(a) the Oscilloscope should be changed to reflect this
-- perhaps change the colour of the top row and bottom row of panels to show that they are outside the display area.
-- or omit the signal level where it exceeds the range,

As in these 2 mock-ups:
Image

(b) Perhaps a new Clipper module, with different clipping models, would be handy
DarkStar ... interesting, if true. // Inspired by ...
User avatar
Captain
Posts: 103
Joined: Sat Aug 25, 2018 11:12 am

Re: Output of overdriven modules isn't remaining clipped

Post by Captain »

DarkStar wrote: Mon Sep 23, 2019 3:17 pm Internally the signal is not clipping anywhere. Going into the first 'scope, it is exceeding +5V but as the 'scope's range is set to +/-5V then it hits the limit and appears to clip. That is just a visual artefact of the 'scope.
Yep, that is 100% correct, and I agree that it can be confusing when the oscilloscope shows clipping, but you can't be sure if it's the actual signal or just the scope that is clipping. Your suggestions are good, and something like a dashed line for the clipping section might also work.

EDIT: And actually, just indicating the limits of the scope with a different background color or similar is not enough, since it’s still possible that the signal is actually clipping, it just happens to clip right at the borders. :D So in addition, either hiding the graph where it goes outside the view, or drawing it with a different color or dashed line etc. would be the best option. Currently the oscilloscope view is doubly confusing, since it doesn’t clearly indicate whether the actual signal is clipping or if it just goes outside the view, _and_ the waveform clips way before it hits the screen borders.
Post Reply

Return to “Voltage Modular”