Dear all,

I checked the keep_m_in_n block and found a possible bug in it. In the work
function, the code wrote:

consume_each(d_n);
return d_m;

which I think it should be

consume_each(blks*d_n);
return blks*d_m.

while blks=std::min(noutput_items/d_m, ninput_items[0]/d_n).

Since both m and n of the block might change, which means the output to
input rate might change. I changed the set_output_multiple(m) to
set_relative_rate(d_n/d_m). And we made the set_relative_rate(d_n/d_m) be
called in the set_m and set_n function to make sure the rate is updated on
time.

The patch is attached. Could you check it?

Thanks!
Best,
Zhe

Attachment: keep_m_in_n_patch
Description: Binary data

_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to