X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=gnuradio-core%2Fsrc%2Fpython%2Fgnuradio%2Fblks2impl%2Fpfb_interpolator.py;fp=gnuradio-core%2Fsrc%2Fpython%2Fgnuradio%2Fblks2impl%2Fpfb_interpolator.py;h=a6094f7f459f871352be2843a0ec8af54b2c0552;hb=2fa7c997559e173c59227ee14a154e4b462d46bd;hp=a210e3de82c53409144174ab93d1d5f7bb7e2c97;hpb=3f32342fc5c82d53e7c94afbccb01d38280db733;p=debian%2Fgnuradio diff --git a/gnuradio-core/src/python/gnuradio/blks2impl/pfb_interpolator.py b/gnuradio-core/src/python/gnuradio/blks2impl/pfb_interpolator.py index a210e3de..a6094f7f 100644 --- a/gnuradio-core/src/python/gnuradio/blks2impl/pfb_interpolator.py +++ b/gnuradio-core/src/python/gnuradio/blks2impl/pfb_interpolator.py @@ -45,7 +45,7 @@ class pfb_interpolator_ccf(gr.hier_block2): # Create a filter that covers the full bandwidth of the input signal bw = 0.4 tb = 0.2 - ripple = 0.1 + ripple = 0.99 made = False while not made: try: @@ -56,6 +56,10 @@ class pfb_interpolator_ccf(gr.hier_block2): made = False print("Warning: set ripple to %.4f dB. If this is a problem, adjust the attenuation or create your own filter taps." % (ripple)) + # Build in an exit strategy; if we've come this far, it ain't working. + if(ripple >= 1.0): + raise RuntimeError("optfir could not generate an appropriate filter.") + self.pfb = gr.pfb_interpolator_ccf(self._interp, self._taps) self.connect(self, self.pfb)