More Loop Point Snapping Options

We all know about the need for a true crossfade looper, but as an alternative/interim measure, how about some more flexible loop point snapping options:

Snap to near zero – allow a user-selectable tolerance for snapping, so that you can specify points within a certain vertical distance of the zero point rather than true zero crossings. This would then apply across BOTH stereo channels. This would be much more useful than snapping only the left channel as we do at the moment.

Snap to same gradient – generally snapping to the same sample value is not enough, the gradient also needs to be similar to avoid a spike or click in the waveform. Renoise could calculate the gradient at each loop point (with a suitable smoothing function) and snap the moved loop point to a similar gradient to the stationary one (with tolerance as above).

Snap to fixed gradient – as above, but allow a user-defined fixed gradient rather than snapping to the same gradient as the other loop point. This would be useful for ping-pong loops which work best when the loop point is at a flat portion at the top of a wave (rather than a zero crossing).

My guess is that these would be much easier to implement than a full crossfade looping solution, but might improve the problems that occur particularly with complex stereo samples.

what do you mean with ‘gradient’?

The gradient of the waveform at the point the loop happens, i.e. is it moving upwards, downwards and at what rate?

Even if you snap to a perfect zero crossing, if your end loop point is on a downward-travelling part of the wave and the start loop point is at an upward portion, the sudden change in direction will cause a sharp spike and possibly an audible click.

ahh, thanks for the clarification :) . What software has these options? Normally with troublesome soundfiles, stereofiles that have phasing between channels, I zoom in and apply fades manually…but maybe this gradient thing is the ultimate solution!