Serious Bug: Cutting a clip/event causes DC Offset - Nuendo 15

Checked after exporting a master and looking at it in RX - and I saw some DC Offset.
Strange, I thought - I had already made sure there was none during mastering.

So I did some troubleshooting in a new empty project with a single track, and
I found using the waveform info/statistics analyser that whenever I perform a cut in a track, there is a good chance for it to generate up to 0.40% DC Offset in one of the parts that are cut, that’s not acceptable.

This can also happen by simply dragging the start or end of a clip to shorten it.

I have tried with snap to grid and zero-crossing, with just one of them, and without - the result is the same.

Basic editing should not cause DC Offset, what on earth is going on here?

I used no plugins and made sure the debugging session was in a new empty project.

My operating system is windows 11, focusrite clarett+, and updated drivers.

Video example of the issue.

The DC offset shown here isn’t catastrophic, but it can, and will produce up to 0.40% or slightly more - that is DC at roughly 50 dB.

Im on N14.0.41, (Win11 (latest), i7-12700) and I can reproduce this issue with stereo clips. I got more than 1% offset in some cases, and can confirm that it is produced with edits such as cuts, trimming events and editing the clip gain.

None of this happened when editing mono clips, however.

I want to mention also that my system has an AMD cpu, as Mr. Staino can reproduce this on his computer with Intel architecture this issue seems CPU agnostic and is likely to originate from Nuendo itself.

I’m on Nuendo 15, most recent version as of this date, so this issue seems to span two whole releases.

I guess, that your problem, is in fact not problem. When you correcting DC offset of whole file, with value calculated for whole file, it not means that any part of clip will also have zero offset. Sound wave is not symetrical, each part can have it’s own calculated offset.
To test it, use sine wave, and make cuts exactly on zero cross. To test it, use sine wave, and make cuts exactly on zero cross on sine wave end.

This unfortunately doesn’t explain why it doesn’t happen to mono tracks, but only stereo tracks.

This also happens on tracks without existing DC offset.

DC Offset is a big subject and expert opinions on when you should be concerned and when / how you should remedy it vary a lot. Some say you might need to be concerned about DC Offset measurements above 0.1%, while others say anything above 0.5%.

The following links might provide some amount of clarification:

https://www.harmonycentral.com/articles/uncategorized/dc-offset-the-case-of-the-missing-headroom-r31/

The measurement of DC Offset is highly dependent on the precise audio segment being analysed. Mono material will also show DC Offset.

Respectfully, I am aware that DC offset occurs in mono - that isn’t the issue.

The issue is that a clip with no prior dc offset will suddenly have it after cutting into the clip or moving the ends of the clip, from basic editing, and this only happens to stereo tracks, while mono tracks are unaffected - indicating that this may be a bug.

As far as I am aware, simply performing basic edits should not introduce dc offset where there previously was none.

Sorry, just tested that here and both stereo and mono events are affected in this manner.

AFAIK DC offset varies according to the audio event being analysed - thus it is normal for variations in the measured percentage when you resize or otherwise edit audio events in Nuendo. Plug-in processing may also introduce different DC Offset measurement results when compared to the original.

I’m sorry but I really don’t think this behaviour is correct, by all means - if I am wrong I will gladly accept that of course, I’m just concerned there is some bad code somewhere in nuendo.

I also disabled all plugins when testing and did it in safe mode.

With respect, try this for yourself and see:

  1. Have a clip with no dc
  2. Make two cuts so you cut a chunk
  3. Now bounce the whole track
  4. There is now DC offset

This indicates that something did actually change because of the edit, not because it revealed any hidden dc offset at that localized part - otherwise the file would just show 0% when reassembled?

I might be wrong but this seems very odd.

Confirmed. I’d already checked that. But there’s the same result in any audio software. Wavelab, Cubase, Acoustica, Pro Tools, Logic would all behave in a similar manner when analysing DC Offset on the same audio material.

Simply changing the length of the audio is going to give a slightly different result when compared to the original length. And the characteristics of certain audio material may cause a more obvious change. AFAIK this is due to the statistical manner in which the software measures the offset. Most of the time, the DC offset is so small as to be of no consequence.

IMO the greater concern would be when the DC Offset goes beyond a certain threshold which produces unwanted side effects. As mentioned, there’s some debate about where that threshold lies, as evidenced in those links I posted. IMHO correcting DC Offset on master files that have already been processed including fading to silence is a bad idea - DC Offset correction, if it must be applied, is usually better applied earlier in the chain of processes and before fades in and out.

I agree that one wouldn’t apply offset correction to any mastered material - or any other processing for that matter (what I used in the video was purely for demostration purposes). In my humble opinion this is also a bit beside the point of this thread - I would just like to address the editing seemingly causing this, and so far no one has offered any real demonstrable reason why this would or should happen.

If the dc offset from editing was at like 0.05% here and there I wouldn’t mind so much, but as another user in this thread pointed out, it can even go beyond a whole 1% - which is actually significant - clicks/pops on playback, lost headroom, etc.

Perhaps I’ve misunderstood, but are you saying that the DC offset from editing is purely a measurement error, or an actual change?

Because the same amount of DC after editing is shown in both nuendo and izotope rx.

If this is indeed just how all DAWs actually work, it is just very surprising news to me in 14 years of audio haha! I will gladly accept that, I just want to be absolutely sure it is not a bug, and that nuendo is working as intended - so the devs can look in to (or disregard) this as needed.

Edit:

I did some null-testing and the files which are stated to contain DC Offset do indeed null with the original un-edited source, so it does seem to have something to do with the measurement, as you say, rather than the edit itself.

Still kind of strange, that makes it rather hard to judge if a stretch of audio actually contains offset, or if it’s just reported wrong.

I’m aware that DC offset is not always an issue and I largely ignore it unless I hear something.

But testing it as per requested by An AudioDude I found this - uneducated as I am in this subject - to have a strange behavior. My mono test file didn’t exhibit any DC offset changes, not matter what I did to it, and the DC offset in my stereo test file went from 0% to 1% and back to somewhere in between with a few short cuts.

AFAIK, unless DC offset varies wildly throughout the clip (which I guess would be detectable by ear and/or eye), I don’t see how the snippet I cut from it could account for such a change. Specially because the stereofile was much more homogenous in contrast to the mono file which had a single “hit” sound with great dynamic range next to the cuts I was making.

It may well be inconsequential, but the numbers surprised me too, I never expected that to happen.

My sentiment, exactly.

And in theory if the whole file had either 0% dc offset, or alternatively had a dc filter applied beforehand, I don’t see why any dc should be generated from splitting or manipulating handles - or that any dc should be “hiding” anywhere, that should already have been filtered out of the whole clip.

There may be asymmetric waveforms, sure, but that is not DC.

That’s why this behaviour seems so odd and imho should be investigated, or at least explained so that it can easily be looked up here for others who might notice this.

Also, cutting at a zero crossing should especially mitigate any negative effects, right? I can’t imagine why that affects the dc value.

There is also a chance that the analysis algorithm that Nuendo uses is just not very good. That means it would display wrong results. If you have N15 you also have a licence for WaveLab Go. Try to do the same thing there. You will get totally different results for DC Offsets. ← this is not quite correct. Only the % values are different, the dB values, which are important, are basically the same.

I appreciate the advice, unfortunately izotope rx shows the same result as nuendo.

Perhaps they are using the same algorithm, but still.

I’ll double check with audacity, the last candidate haha!

There may be errors in the way that Cubase / Nuendo measures the DC Offset. I have not looked into this in any detail and have not done any detailed tests so cannot comment further. One approach might be to measure results for the same audio using different DAWs / audio editors. If the Cubase / Nuendo results give a consistently higher percentage than Wavelab (for example), then that might point to a measurement issue in Nuendo.

In conclusion, Steinberg might do well to investigate this a bit or perhaps offer a comment to mitigate confusion.

That’s all I’m wishing for, really.

At the end of the day “remove DC offset” simply performs an addition on every single sample. I haven’t observed than any length adjustment in Cubendo leads to this kind of shifting on the amplitude axis. So I assume it is a matter of the analysis, not a matter of sound.

Good luck with Audacity and DC Offset. :laughing:

Just had the time to do a quick analysis.

Results for the same audio file (24-bit / 48kHz):

Nuendo DC Offset measurement result:
Left: -84.16dB / 0.12%
Right: -82.64dB / 0.15%

Wavelab DC Offset measurement result:
Left: -84.163dB / 0.0062%
Right: -82.636dB / 0.0074%

Assuming the measurement technique is supposed to be the same in these two programs, this seems to indicate that the Nuendo percentage result is too large (I’d tend to trust the Wavelab result!).

I’d suggest others here do similar tests preferably with software other than Wavelab. If Nuendo consistently gives larger percentage results then this might conclude it’s not strictly accurate…