Internal clipping with normalized samples?

Hey @avantronica ! Same time.
:coffee: I’m waking up, I’ll be brief.

Red lights don’t mean clipping necessarily.
Can you hear clipping? I use a pure sine wave for tests, at 0db. Very easy to hear clipping.

Main level, Track level modified, fx?

Lowering AMP VOL is not a big deal IMHO.

3 Likes

if the Octatrack automatically reduces any captured sample (via external input or internal resampling) by 12 decibels and then replaces those decibels automagically - then this could be the internal clipping issue.

re/ the one step backwards, one step forwards with the decibel auto-attenuate by 12 decibels and then after doing that auto boost a sample by 12 decibels … i don’t know why it does this. Possibly for avoiding clipping in the record-save-play file path sequence.

… maybe there is something going on similarly with imported samples?
Also, try working in 24bit and see if the same scenario is presenting, as 24bit has much more headroom.

Although really whether in 16 or 24bit, when normalising, try going for 7-10 decibels below zero. When effects are being applied to a sample either directly or via Master Effects Channel, the sample is too near the limit, if the starting sound pressure level is just -2 or something.

Occasionally when normalising different samples, i noticed there was a slight yet perceptible difference in the tone of the sound. Imagination? Quite possibly. But i seemed to think i was noticing a mild change in the sound sample’s character when doing this normalising process, enough times to then choose to not use normalising on a regular basis.

1 Like

Many thanks, guys. I am grateful for the replies.

Below, I will answer some of the questions and comments raised.

But first, here are my conclusions so far. I am open to revising these, and I happy to be proven wrong.

  1. A normalized sample WILL clip. This is independent of the track levels, main levels, and bit rate. I think the thing being clipped is the AMP of the track. It is similar to overdriving RYTM’s AMP, except the OT’s AMP is digital and the clipping is not pleasing.
  2. This should be extremely easy to reproduce. Get a sine wave sample, and normalize it. Load that sample into a flex machine on T1. Setup REC3 to monitor the SRC3 output. Hit play. Notice the clipping.
  3. My solution is going to be to normalize all my samples, but drop their gain in the saved attributes. I am not sure how much yet; that will require more testing. But, I will aim for a reasonable amount of headroom and consistency across tracks and projects.
  4. This is hard to detect, and I can only imagine how many people have mix issues happening in their OT and fail to realize this.
  5. It seems very odd that normalized samples would clip the AMP at default VOL settings. I have no idea why Elektron thought it was a good idea to make the OT work like that.

Red lights don’t mean clipping necessarily.

Agree; I’ve read those GainAgain threads. :slight_smile:

Can you hear clipping?

Yes - definitely. That’s what sent me on the goose chase.

Main level, Track level modified, fx?

I can reproduce this with the track level at 0, master track 8 level at 0, and main level at 0, and no effects on the track.

Lowering AMP VOL is not a big deal IMHO.

I mostly agree, except it makes it challenging to do some types of mix automation. I’d rather lower the saved sample level instead.

Also, try working in 24bit.

Yes - I work in 24 bit.

Occasionally when normalising different samples, i noticed there was a slight yet perceptible difference in the tone of the sound.

I noticed the same thing. Now I know exactly why.

What OS are you using? I played with normalised samples this morning on OT mk1 running 1.30something without any distorsion/clipping. These samples were normalised in ableton though. If you normalised within the OT, could it be the algo inside that’s the issue?

Bear in mind that the internal mixbus of the OT is fixed point, not floating point (not sure how many bits accumulator it has though). Fixed point summing, especially if using a lowres bit accumulator, clips very easily.

What OS are you using?

1.30D

I played with normalised samples this morning on OT mk1 running 1.30something without any distorsion/clipping.

Thanks for doing that test. Did you setup a record buffer to listen to the output of your track and monitor it using the LED as described here?

A good test might be to use a normalized sine wave. I do not have one handy at the moment. If I get some time, I might try that later.

If you normalised within the OT, could it be the algo inside that’s the issue?

The ones I am testing were normalized in OT.

Bear in mind that the internal mixbus of the OT is fixed point, not floating point (not sure how many bits accumulator it has though). Fixed point summing, especially if using a lowres bit accumulator, clips very easily.

Agree; thanks for the comment. I definitely think that is the main issue. It is just odd that a setting of 0 on AMP VOL clips normalized samples like that. I would think they would have calibrated AMP VOL so that you had more headroom to turn it up before clipping. Of course, that would not change the facts about fixed point architectures, just the user experience of what 0 means on AMP VOL.

I.e., how many users are working with normalized samples and default AMP VOL settings and not realizing they are clipping the OT’s internal mix bus? Ouch!

Nah, I wasn’t using any metering at all. Just playing the normalised clip w/o any effects or level adjustments. I started a new project this morning, and imported normalised samples to play with as I’m preparing a live set due in 2 weeks. Only using my ears (in my studio with decent monitoring), I noticed no clipping. But then again, I did not try to send it somewhere else internally. Just straight through the mains out via Master Track 8 though.

What I’ve noticed is that the internal OT editing function of Normalize can indeed generate really hot final levels. I’ve stopped using it and instead been doing a series of ‘Selection + 3dB’ to get the level to where I want. It takes a bit more time sometimes (depending on how well I recorded the original in the first place), but it gives me a cleaner result at a level I can use without fear.

3 Likes

I assume the OT’s normalize is just doing what any normalize function does, that is, make the signal as loud as it can be without changing the dynamics.

For me, unless I learn something I am doing wrong, the easiest and most consistent thing to do is:

  1. Normalize all samples;
  2. To allow headroom in OT’s AMP, adjust sample gain in the sample attributes to a reasonable value I have yet to determine.

We need some type of GainAgainAgainInternal thread to determine how much precisely sample gain should be dropped after normalization to allow reasonable headroom in the AMP.

Conclusions like this would be good. Just an example:

  1. For a normalized sample, drop the gain by -12db.
  2. All else equal, clipping the AMP will occur at a VOL setting of 32.

That is just an example of the conclusion I am after. I have not tested those settings yet.

1 Like

Just occurred to me that if the OT normalizes the samples to 0dBFS, you could experience intersample peaks and therefore clip the master out with certain program material…? Maybe this is what’s happening, hmm

Intersample clipping does not show on the meters as it actually clips at the DAC

If that is indeed the case then some headroom must be left at the track mix level

This is all about clipping individual track AMPs. Not the master.

okay then, so that rules out intersample peaks. We back at the internal summing engine, its headroom and all that.

Just made another test with a new project, a Flex playing a 0db normalized sine wave.
VOL=+63
LEVEL=127
No clipping

Main Level 0 to 2> clipping

Fx 1 and 2 set to None :
Main Level 0 to 1> clipping

1 Like

Thanks so much for doing that. I need to drill into my case some more. I will report back.

Would you mind posting that sine wave file?

What if a normalized sinewave will not clip but some other sample will? As in, the sinewave is a constant amplitude signal with no dynamics, right? What about something like a really fast transient?

Dead laptop screen unfortunately. Smartphone only for now.

It is quite easy to generate with a DAW.
I set it at 256hz, 0db, looping perfectly at 120 bpm, so it can be used to check clicks and clipping.

1 Like

0db is 0db, clipping is clipping, whatever the signal is IMHO. I think it’s harder to detect fast transients clipping by ear. Totally obvious with sine waves.
1000 Hz sine is a professional reference for tests, but so boring to hear!

Now I am doing more tests, and I might have had a temporary lapse of insanity about all this. Sigh.

I will report back when I know more.

From test below :
VOL = +63 > +12db
VOL = -32 > -12db

New project
Flex playing at 0db sine wave
Fx 1 and 2 set to none
VOL = +63
No clipping

VOL = +63
Attributes Gain = +0.5db > clipping
VOL=0
Attributes = +12db > clipping
VOL=-32
Attributes = +24db > clipping

Sample gain staging order seems to be :
Attributes Gain > VOL > Fx1 > Fx2 >Track Level > Main Level

2 Likes