Tap In/Tap Out 1 sample off?

daveronan's icon

Is this still true for Max 5? I am trying to use it for a fractional-delay filter or would I be better off with an external?

AlexHarker's icon

Yes - as far as I'm aware it is true that delay~ and tapin~/tapout~ give an extra sample of delay *WHEN* the delay time is driven with a signal (I'm not 100% on the case of a float/int). You can compensate this of course. Thus in contradiction to raja's post you *can* set a delay of 0 samples, but you can a delay of one sample, and so on.

Max Patch
Copy patch and select New From Clipboard in Max.

The workaround is trivial if tedious....

(the above will work for any sample rate - the [adstatus] variable could be almost anything that will trigger if audio is restarted...

The reason for the extra sample concerns the method of interpolation and although I reported this a bug c74 do not feel this way - I see their reasoning, although I wouldn't have made the same choice. The reply I got was that it was not going to change....

Alex

AlexHarker's icon

Oh - of course - fractional delays of less than one sample are not possible, unless you are prepared / able to delay the rest of your signal path by one sample to end up with the correct relative delay..

A.

Emmanuel Jourdan's icon

tapin~/tapout~ introduce one vector size of delay. The extra delay of one sample can be caused by floating point precision.

AlexHarker's icon

@ej -

1 - can you confirm with patch that tapin~/tapout~ ALWAYS introduce one vector size of delay? This is not my experience at all...

2 - Yes, of course there may be floating point imprecision converting from milliseconds to samples. However, the sample delay I was talking about is NOT caused by floating point imprecision, but is additional to this. This is easier to see in the case of delay~, where there is no conversion happening.

Thanks

Alex

Emmanuel Jourdan's icon
Max Patch
Copy patch and select New From Clipboard in Max.

You'll find 2 examples which show that there's always a minimum of one vector size of delay. In the second example you can clearly hear the difference when you change the number of samples of the vector size.

AlexHarker's icon

@ej - ah I see - a minimum of one vector I know about - sorry your post implied one vector plus the required delay....

Thanks for clarification.

A.

daveronan's icon

Thanks for all your help guys! Much appreciated!