Nuendo doesn't export looping sounds anymore?

Hi

I just exported some looping ambient sounds for a game. The process is straight forward. When I listen in Nuendo, the loop sounds perfect. No click or anything, it just loops and you don’t hear a thing. But when I listen to it after exporting selected items, it has a noticeable ugly huge click in it. The waveform should seamlessly connect, as it does in the arrange view, but the exported sound has a nasty spike right at the end so it does not loop at all.

I did this for other games in the past and it did work like a charm and now there’s an ugly click in everything I export this way. Anybody else experiencing this? Now I have hours of additional work making stuff that should loop really loop outside Nuendo. How frustrating.

See here: https://youtu.be/D21ZXF-xQ3E

I sometimes do this. Just tested it again and I don’t hear a click. Do you hear a click if you import the file back into Nuendo ?

Render in Place and Export may sometimes have to add a few microseconds of silence to the end of the file, because its length in samples must be a whole number.

Example:
https://i.imgur.com/GdtJk41.png

The ruler’s time format is in samples, and the file edited being edited in Cubase is about 6.5 samples long. That’s not a whole number, so silence is added to make the file 7 samples long when rendered in place.

Why doesn’t it click when playing back? Surely Nuendo cannot play audio in half-samples either?

What’s the best way forward, then. I would have to set snapping to samples and then … is there a command to snap the end of a region to the grid?

I just tried to align it manually, by snapping the cursor to the grid and then snapping the end of the region to the cursor. But no dice. It still produces a click. I cannot see any silence inserted, signal goesfrom back to back, but it doesn’t loop. It clicks. The waveform is broken.

I tried it on my Mac and just to be sure on my Windows machine as well. Exactly the same, clicky output. :open_mouth:

I also just looked at loops produced in 2016. I guess this was N7 or N7.5? There apparently it was no problem. I made several loops without knowing of this sample filling with silence stuff and I got perfectly looping loops out of Nuendo, no clicks.

I’m lost. If there’s some error now I’d have to re-do 200 loops somehow. A major time drain.


Hi Chris,
Here is some brainstorming which may or may not help. Of course, I hope it helps! Much of this is probably stuff you already know or have already tried :

There has to be a logical explanation for this. As mentioned above. I can’t make this happen here.

  • Are you using ‘Snap to Zero crossing’ when you make your loop points ? If not you might like to try this to ensure you get no clicks.
  • Did you try doing a straight export rather than using ‘export selected events’?
  • Did you try re-importing the exported file back into Nuendo and then comparing the start and the end of your files at the highest zoom resolution? Are the waveforms different? Do you have a screenshot of that please ?
  • Sometimes the sound of a click may not be audible in cycle playback in Nuendo. Did you try repeating/duplicating the event on the Nuendo timeline? and audition the join in normal playback to check if it clicks?

Near the end of your video you post a message when you zoom to the loop point ‘This can’t sound right!’… but did you compare this waveform to the waveform of the original ? It must be worth comparing the original waveform and the exported waveform. Of course, they should be the same. And I know I’m stating the obvious here… just trying ideas which might help troubleshoot the problem.

But was this with a similar kind of ambient material ? Did you use ‘snap to zero crossing’ back then ?

P.S. If you could upload a short test audio file where you get a click after using ‘export selected events’, I’d be glad to test it here.
P.P.S. You’d almost certainly get click free results with ‘snap to zero crossing’ active.

Thanks for all the hints stingray. I’ll get through your items one by one as soon as possible and see if something hints in the right direction.

It’s not easily possible in a stereo file. But it should not matter, because the way I do loops is like that: Have a steady 20 second wave. Cut the clip somewhere in the middle. The waveform is perfectly steady at the point where I cut it, it perfectly connects, of course. It’s a clean cut. I then change the position of those clips. I put the front clip behind the back clip and overlap them a bit to create a crossfade. The new beginning and new end of that combined are now those points which previously perfectly fit together. There’s no need for a zero crossing as the waveform belongs together. See GIF.




Yes, same result. I tried not converting it to 16 Bit and leaving it 24 Bit. I tried converting it to 44.1 instead of leaving it at 48kHz. I tried disabling any plugin in the chain, like the limiter on the master even though it doesn’t even kick in. All the results have the exact same clicking output and waveform graph.

Sure. I even have a loop that is one file. It loops perfectly outside Nuendo. I import it into Nuendo and cycle it. It sounds fine. I export it, it clicks. Beginning and ending of the waveform doesn’t match anymore.

Looping WAV in Nuendo:
original.png
Looping WAV exported, then imported into Nuendo:
exported-then-imported.png

It doesn’t click but there is a very short volume drop, as if I would have fades, but I don’t have any. Although I don’t get that volume drop when I loop cycle the file. Only when I concatenate the waves.

See screenshots above from within Nuendo at highest zoom level.

Sure. A pack with both files.
https://chrispolus.d.pr/s57DkR

UPDATE

Now, I thought I disabled all plugins in the signal chain but I forgot one. I cut away some excessive bass with a Low Cut Filter in the Pre section of the built-in Channel Settings EQ. When I disable that Pre section with the Low Cut, it loops fine!

I don’t really get the theory behind it. If an EQ doesn’t cause wave form jumps in the middle of a file, why would it introduce irregularities at the beginning and end? Remember, the beginning and end of my loops are actually adjacent samples from the same file (see GIF above) so they fit together. If both were processed equally, it should result in the same output and the wave should fit together, no? Otherwise the wave should also jump when I simply cut a region in the middle and don’t move anything.

Or is there some strange processing delay / plugin buffer / messed up delay compensation that somehow shifts the file? Both have the same number of samples. I tried other plugins. The Steinberg Studio EQ, Curve EQ, iZotope Ozone. All did they introduce the same irregular waveform at the beginning and end. Something is fishy here.

Glad to hear you found it Chris! That must be a relief!


AFAIK many digital filters introduce an amount of delay in the signal which varies with frequency resulting in phase distortion, hence this may have caused the loop point to no longer match.

Yeah, it’s a good idea to bounce/render in place audio files before attempting to loop them because almost any real time effect is going to change the original waveform to some extent.

Well, yes. Now I at least know what the problem is. But I have to add these low cut filters to my audio, otherwise I have a problem in-game when low frequencies add up. I would now need to un-loop the file again, low cut, bounce, and then make the loop again. A huge load of work. It’s not feasible. I did the looping outside Nuendo with a tool, on the rendered, clicking file.

I tested it with all kinds of EQs, normal, linear phase, outside Nuendo in other tools, all introduce some kind of error on the edges so the loop doesn’t fit together anymore. Very curious I didn’t run into this problem earlier! Maybe I haven’t processed loops with plugins before, really strange. Or I was lucky.

Anyway, a good learning. A loop can ONLY be done reliably when making the loop is the last stage in the process. First do all the filtering, sound stuff, then bounce, and then loop.

It’s a bit annoying as you cannot adjust any of the processing after the fact without doing all of these steps again. Would be a nice addition to Nuendo’s toolkit to being able to render smooth loops with real-time processing applied.

I can see your dilemma with regards to the order of processes. It’s awkward.

I seem to remember someone on the forum with a similar issue (wanting a reverb effect to be looped).

If I remember correctly the solution was to repeat the event a second time and then export as separate events using the event name plus a counter so you get '‘filename-001’ and '‘filename-002’. After exporting you delete all instances of ‘filename-001’ and keep ‘filename-002’ which will contain a click-free loop point. Or you can use RIP in the project window and render the two events as separate events and then use only the second one. Something similar to this might help you… or it might not!

Out of curiosity I just checked this with real-time filtering using the onboard EQ filter and rendering using RIP and it works! The start of the second event is suitably modified so that it produces a perfect loop (in this screenshot the upper track shows the first event looped and the lower track shows the second event looped).

Interesting, so instead of Export Selection you use Render In Place? And adjecent clips get rendered correctly? That’s an idea for next time.

And yes, I remember that I also asked for the rendering for reverb. The solution would be simple, too. In many DAWs there is an option. Render Second Pass. What happens is the selected time region is rendered, and then rendered again. Only the second take is recorded / saved to disk. So any reverb tail that would be at the end folds back into the beginning on the second pass. Works like a charm in other DAWs and it’s very quick. It would probably also solve my click problem when I could record the second pass as ending and beginning would fit better together.

Thanks for the RIP tip.