diff options
author | Clayton Smith <argilo@gmail.com> | 2020-10-19 07:02:25 -0400 |
---|---|---|
committer | mormj <34754695+mormj@users.noreply.github.com> | 2020-10-20 05:55:15 -0400 |
commit | ddb282314af10949706596045c2711b67a0bc3f6 (patch) | |
tree | 870800343caf084949ba04e50e41aecd8dd73bd6 /gr-vocoder/lib/freedv_tx_ss_impl.h | |
parent | b38d43f388d8e30007b83736f329aa8aac1d1cb5 (diff) |
vocoder: allow input & output rates to differ
The input & output rates of the FreeDV modulator aren't necessarily the
same. In particular, the 2400A and 2400B modes have an input rate of
8000 sps and an output rate of 48000 sps. To allow for arbitrary input &
output rates, I've changed freedv_tx_ss from sync_block to block.
Diffstat (limited to 'gr-vocoder/lib/freedv_tx_ss_impl.h')
-rw-r--r-- | gr-vocoder/lib/freedv_tx_ss_impl.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gr-vocoder/lib/freedv_tx_ss_impl.h b/gr-vocoder/lib/freedv_tx_ss_impl.h index f4f341b97e..bf4c0ccef1 100644 --- a/gr-vocoder/lib/freedv_tx_ss_impl.h +++ b/gr-vocoder/lib/freedv_tx_ss_impl.h @@ -50,9 +50,12 @@ public: void set_tx_bpf(int val); // Where all the action really happens - int work(int noutput_items, - gr_vector_const_void_star& input_items, - gr_vector_void_star& output_items); + void forecast(int noutput_items, gr_vector_int& ninput_items_required); + + int general_work(int noutput_items, + gr_vector_int& ninput_items, + gr_vector_const_void_star& input_items, + gr_vector_void_star& output_items); }; } /* namespace vocoder */ |