用固定输入元素的数量创建一个块GNU RADIO

时间:2018-11-08 18:46:42

标签: python gnuradio

我可以创建一个块,该块的输入量不是输出,以防输出总是有6个以上的元素。但是现在我很难使块始终获得长度为X的复杂样本。例如,我的块将始终具有固定的输入量,而不是默认的4096个样本

import numpy
from gnuradio import gr
import math
import numpy as np

class codificador_wavelet(gr.basic_block):
    """
     docstring for block codificador_wavelet
   """
   def __init__(self,taxa):
       gr.basic_block.__init__(self,
          name="codificador_wavelet",
          in_sig=[numpy.complex64],
          out_sig=[numpy.complex64])
       self.taxa=taxa
       self.mg=8
   def forecast(self, noutput_items, ninput_items_required):
       n = noutput_items-6 
       ninput_items_required[0] = 1 if (n<=0) else n

1 个答案:

答案 0 :(得分:1)

我不知道这是否是一个完整的答案,但是我没有足够的声誉来发表评论。

如果该块始终想要一个已知的恒定输入大小,则可以尝试使用流来矢量接受块的矢量输入,如core concepts tutorial中所示。要向用户隐藏此内容,您可以使用hierarchical block,其中包含要引导的流和要创建的块。