How does resampling work?

I want to understand resampling better, so I am trying to replicate the functionality of Matlab's resample() function. I get stuck with the upfirdn() function, which is built in (and therefore an invisible "black box"). To clarify, I'm not looking for a fast implementation, I just want to see how to get the exact same result.
The part that is bugging me is that (as stated by Matlab help) the final output size is:
Ly = ceil( ((Lx-1)*P + Lh)/Q ) where Lx = length(X) and Lh = length(H)
and I don't understand why. How can I figure out exactly what upfirdn() is doing? Can anyone help?

Answers (0)

Products

Asked:

on 1 Nov 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!