File sink

I have an application where I observe real time display of some bands.
What I
want to do is make a FIFO/Buffer where the data can be stored
simultaneously
and with a push button ‘rewind’ I can access the immediate past 15 sec
data.

So basically I want to know how to make a such file sink, which can
store
just immediate past 15 sec data.

gr_file_sink keeps increasing the size while gr_head stops after taking
a
fixed number of samples.


View this message in context:
http://gnuradio.4.n7.nabble.com/File-sink-tp43431.html
Sent from the GnuRadio mailing list archive at Nabble.com.

Hello Sumit Kurmar,

this depends on what you want to do with your data, the data rate, and
the amount of effort your willing to make.

  • Easiest solution: Use the “delay” block with a delay of (sample rate)
  • 15s. Advantage: Yields a GNU Radio sample stream that’s delayed by
    15s. Drawback: This can be a large amount of samples, so this might
    actually fail if GNU Radio is not able to allocate a shared buffer
    that’s big enough to hold them; there are ways around that, anyways.
  • Versatile solution: Write your own signal processing block. It’s
    really a simple exercise when done in python or in C++, whatever is the
    language of your choice.
    Just implement a ring buffer of length (sample rate)*15s by keeping an
    input counter that increments (mod length) whenever you copy input
    samples to the internal buffer, and either write a method that returns a
    (linear) copy of the stored data or dumps it to a file or emits it as a
    message or starts pushing it to the output buffer or does whatever your
    application needs.

Happy Hacking,
Marcus

Marcus… that easiest method gave me for a temporary solution… and I
am
happy with it for the time being
cheers


View this message in context:
http://gnuradio.4.n7.nabble.com/File-sink-tp43431p43536.html
Sent from the GnuRadio mailing list archive at Nabble.com.