Hi Tom,
I just had to look this up. If you're in GRC, you have "rationale
resampler" and "rational resampler base"; they do basically the
same, but if you use the one without "base", and don't specify the
taps, GNU Radio just automatically designs a filter that avoids all
aliasing and imaging, which is done with a python wrapper around the
C++ rational_resampler_base_xxx's make function[1]. That's pretty
handy in most use cases, but not too much if you want your own
filter for some reason.
If you're using the "base" variant, you must specify the
taps yourself, because you directly invoke the C++ block's maker. If
you go ahead and just use "[1.0]" as taps, you get the aliased
results from my pictures.
So if you happen to want to specify the taps, because you
can integrate the functionality of a downstream filter into the
resampler to save CPU cycles, it doesn't make a difference which
block you use.
Ah, I see. Many thanks for taking the time to explain this. Where did you look to find out that 'rational resampler' block does an automatic filter design for you?