MATLAB: Error using resample. too many input arguments

MATLAB

Hi, I tried using resample on a Mac device and I am getting the following error but I do not get any error on windows device.
Error using resample Too many input arguments.
kl = (B*log2(1+1/d));
[Ures_LogP_absCQT, Ures_FreqVec] = resample(LogP_absCQT,FreqVec,1/(fmin*(2^(kl/B)-1)),1,1,'spline');

Best Answer

Hello Sachin,
There are actually six different functions or methods called resample across five products in the current release of MATLAB:
Of these, only the Signal Processing Toolbox function allows for six input arguments, the last being the method. My guess is that you have the Signal Processing Toolbox installed on your Windows computer, but not on your Mac. Or you have different releases of MATLAB on the computers, which may have had different specifications for how to input to your desired resample function. Or you have a user-defined resample function somewhere on your path on the Mac, which shadows the Signal Processing Toolbox implementation.
One way you can tell is to use which with the input arguments to see which implementation MATLAB will try to call:
which resample(LogP_absCQT,FreqVec,1/(fmin*(2^(kl/B)-1)),1,1,'spline')
Or use this to see all implementations installed, and the order of preference:
which -all resample
-Cam
Related Question