discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Processing expectations


From: Marcus Müller
Subject: Re: [Discuss-gnuradio] Processing expectations
Date: Mon, 10 Aug 2015 14:14:04 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0

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.

Best regards,
Marcus

[1] https://github.com/gnuradio/gnuradio/blob/master/gr-filter/python/filter/rational_resampler.py

On 10.08.2015 13:55, Tom Cook wrote:

On Mon, 10 Aug 2015 at 12:30 Marcus Müller <address@hidden> wrote:
[snip]

Thanks for the very detailed explanation, Marcus.  I think quite a bit of my trouble here is relating GNU Radio terminology to hazily-remembered signal processing courses I took fifteen years ago and haven't used a whole lot since.

So, using a rational resampler at 4x decimation, with no separate aliasing filter and the 'Filter taps' parameter left empty will mean that there will be aliasing in the resulting down-sampled data.  Have I understood you right?  I need to provide filter taps to get an anti-aliasing filter as part of the resampler block?

Thanks again,
Tom


reply via email to

[Prev in Thread] Current Thread [Next in Thread]