如何减慢GNU Radio中的文件源?

时间:2015-12-18 23:38:48

标签: gnuradio gnuradio-companion

我正在尝试将GNU Radio Companion中的输入文件中的字节解包为二进制比特流。我的问题是Unpack K Bits块以与文件源相同的采样率工作。因此,当字节1的第一位被输出时,字节2已被加载。如何减慢文件源速度或加快Unpack K Bits块的速度?有没有办法告诉GNU Radio Companion重复文件源中的每个字节8次?

请注意,“after pack”显示的数据是“before pack”的4倍。

flow graph

time domain graphs

2 个答案:

答案 0 :(得分:2)

  

我的问题是Unpack K Bits块以与文件源

相同的采样率工作

不,不。 Unpack K Bits是插值器块。在你的情况下,插值是8.对于每个字节,产生8个新字节。

结果是正确的,但是你的接收器的时间尺度是错误的。您必须在第二个GUI Time Sink更改采样率,以适应Unpack K Bits之后流程图的真实采样率。

因此,32e3应该是8*32e3而不是class UserRestrict(object): def process_request(self, request): """ Checks if different session exists for user and deletes it. """ if request.user.is_authenticated(): cache = get_cache('default') cache_timeout = 86400 cache_key = "user_pk_%s_restrict" % request.user.pk cache_value = cache.get(cache_key) if cache_value is not None: if request.session.session_key != cache_value: engine = import_module(settings.SESSION_ENGINE) session = engine.SessionStore(session_key=cache_value) session.delete() cache.set(cache_key, request.session.session_key, cache_timeout) else: cache.set(cache_key, request.session.session_key, cache_timeout)

答案 1 :(得分:1)

马诺斯的回答非常好,但我想补充一点:

对于刚接触到样本层数字信号处理的人来说,这是一个常见的误解:

GNU Radio本身没有采样率的概念。术语采样率仅由某些块用于例如计算正弦的周期(在信号源的情况下:Period = f_signal / f_sample),或计算在显示轴上写入的时间或频率(如您的情况)。

“减速”意味着“使计算机处理样本变慢”,但不会改变信号。

您需要做的就是将您希望显示接收器显示为时间单位与您配置它的内容相匹配。