One short question. What happens if I call the set_delay method of the gr_delay block during runtime. Will it throw away/add some samples when the delay is changed? I am actually trying to create a block that throws away some samples whenever I call a memberfunction skip() but having difficulties testing it.
on 2012-10-23 11:09
on 2012-10-23 12:06
gr_delay pads "delay" number of zeros at the beginning of the sequence. see qa_delay.py in gnuradio/gnuradio-core/src/python/gnuradio/gr I also wanted to throw away some samples at the beginning, I imported the collected data in MATLAB, then threw away some samples and got it back in gnuradio .bin file .. I know its not a good solution but I was in hurry :) -- View this message in context: http://gnuradio.4.n7.nabble.com/gr-delay-behaviour... Sent from the GnuRadio mailing list archive at Nabble.com.
on 2012-10-23 16:14
On Tue, Oct 23, 2012 at 5:07 AM, Johannes Schmitz <email@example.com> wrote: > One short question. What happens if I call the set_delay method of the > gr_delay block during runtime. Will it throw away/add some samples > when the delay is changed? If you increase the delay, you will skip over a number of items in the buffer, but otherwise, no, you won't lose any data, so this isn't what you want to use to throw away data. > I am actually trying to create a block that throws away some samples > whenever I call a memberfunction skip() but having difficulties > testing it. Calling a function externally probably isn't what you want to do if you have a specific set of items you want to toss. If you're just throwing away any set of items, then this should work. If you have specific items (or items at a specific time or time delta), then you'll want to do something with stream tags to tell the block to toss items at a particular sample. Tom
on 2012-10-23 18:55
I am now just using a simple gr_block to asynchronously skip some samples from time to time by calling consume_each(d_skip_size); return 0; I didn't define any forecast function and it seems to work fine but I am wondering what is the performance impact of not doing this. Shouldn't I basically somehow let the scheduler know that I am skipping something by writinga custom forecast? The amount of skipped samples is relatively low compared to the passed samples.