-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
I'm looking at filter design procedures for rational_resampler and pfb_arb_ resampler and see contradiction between them. Lets assume downsample with rate 3/4 or 0.75. Lets source sample rate to be 10000 (so, target sample rate should be 7500), but, in fact, it is irrelevant. rational_resampler could be configured for this task with interpolation=3 and decimation=4. We'll set fractional_bw to "0.4" to match arb_resampler "80%" multiplier. design_filter() method in rational_resample.py will create low-pass filter with: gain = 3 FS = 1 transition center = 0.4/3 = 0,1(3) of 30000 = 4000 (!!!) transition width = 0.1 It doesn't look resonable, as 4000 is more than 3750 which is Nyquist frequency for targer sampling rate. Lets look at arbitrary resampler (pfb.py): rate is < 1. so it takes first branch: gain = 32 (default number of filters) FS = 32 (WHY?!) transition center = 0.5 * 0.75 * 0.8 = 0.3 (And it should be in Hz!) transition width = 0.15 As you can see, parameters are rather different. But in this case filter should be roughly the same, because task is the same! We need to filter out all frequencies below 3750! And both methods raise the questions. I could not say, that one of the methods looks good to me. Questions are: (1) Why rational resampler doesn't take decimation in account when calculates bandwidth? It design filter which will correctly reject all images in upsample, but looks like aliasing is possibly when effective ratio is less than 1, as only interpolation is used in bandwidth calculation and resulting filter "effectively" works at upsampled rate. (2) Why arbitrary resampler set Fs to number of filters and AFTER that pass bandwidth numbers as normalized to 1, not to this Fs?! 0.3 is perfectly good (may be slighly conservative, but Ok) transition band center, but in this case this 0.3 will be taken for FS=1, and here FS=32 (number of filters) is used, so it will be 32 times too low (!). Are these two peculiarities two bugs, really, or I don't understand something? Yes, I've read harris' book on multirating processing, and AFTER this book I got these questions. - -- Black Lion AKA Lev Serebryakov -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQJ8BAEBCgBmBQJUSCQDXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRGOTZEMUNBMEI1RjQzMThCNjc0QjMzMEFF QUIwM0M1OEJGREM0NzhGAAoJEOqwPFi/3EePRzAP/1BERw1W6GM+kLwYDEulshRu fzUcoa7+MWuK/Bn5lVmLl0DnoAUT+4jOpQaQhh581P3KTXMBGffooLoLPAfo6TRj J+8wdtbTa+8biVY2+Cug6yD2Sdo/mXOqMI2w74amaBr6HrzI2r9aDjuTX26E6FZd HAL7lL7QSqfbSRMfnRFTZTtjmPOatK7Z310j9TKirv7QG6Ko9KLk/po9TdgOUQgP /ddOi1mRxCvGdVE8e0M5rDvGwd+ToTqfgf7jo7RQcDdmftzsfjmGPVrSyPLED/v1 86cVFWeHjOJ/HmZ797dGc6Bv3nX89J0TTneIL0m4J65qskqukquCYvD17OIB+kL3 wXfOBumpssVbAA1wjoPyDXOlXKO9GIhcMm6XosXpw+wJnHSx1ykx3Ycd3uew8/Cm 9fYIdqRmYoxh1hlHvpvri1iJslMQqz7bHWYw0aEPYCE6KY8tV004Nen2prH5Wdyy 3mkn7g/kQfnGHL9EPhYdyGUJBG4MnGPsCW6FF2SPRZkReK+cgVDA8WBt5YExQayP nFr3F9atnuD8LxJ697zIeNJAbK4CBofaiEw4wZ2ooWqG52MIdq1ArqIqEC3P2dK1 xqjt/IPbZaiXTykjAqH8zWcPX1BsJnGLdvhhofLGdkLRQD/x+3nmEiDIH9PFTCfW D6U1vL56df3r+FRgMczz =4Rwb -----END PGP SIGNATURE----- _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio