[Top][All Lists]

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

Re: [Discuss-gnuradio] File Sink Output Size Problem

From: Kevin Reid
Subject: Re: [Discuss-gnuradio] File Sink Output Size Problem
Date: Thu, 8 Sep 2016 18:43:22 -0700

On Thu, Sep 8, 2016 at 6:34 PM, Pavan Yedavalli <address@hidden> wrote:
My current flowgraph consists of a signal source (cosine) -> stream_to_vector of size 1024 -> forward FFT of size 1024 -> complex_to_mag of size 1024 -> file sink of size 1024 (unbuffered OFF and append set to overwrite). 

After I run this flowgraph for a few seconds and manually stop it, I use scipy.fromfile(open("filename"), dtype=scipy.float32) to retrieve the values from the binary file. However, the length of this output vector is some integer multiple of 1024 every time. Shouldn't it always be 1024 because I'm overwriting the file? I noticed that the longer I run the flowgraph, the larger this value is, so it seems like it may not be overwriting? Or perhaps there is something else I need to do make sure that my output is always of length 1024 with just the magnitudes of each sample?

The Vec Length field on the file sink doesn't mean the size of file it writes; it means the size of each stream item it writes (as a multiple of the input type's size). In your case each stream item is 1024 floats, which means exactly that your file will always contain some number of 1024-float items, as you have observed.

There is nothing in GNU Radio that will repeatedly overwrite a file as the flow graph runs — I suggest you find another way to accomplish your goal. What were you planning to use to read this file?

(If you just want a single FFT, you can add the Head block in your flow graph, set to 1, and the flow graph will exit after writing that one.)

reply via email to

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