CVSD encoder -- how to use output?

Hello All–

We have been attempting to use GNU Radio to build a transmitter that
will
encode voice via CVSD, and then transmit via FSK. We have been using the
cvsd_encode block to encode the voice samples via CVSD. However, the
documentation for this block says that it groups the output bits
together into
short int samples. How can we extract each bit from the short ints for
modulation and transmission?

Thanks for any help you can provide!

-Eric

Eric R Menendez wrote:

We have been attempting to use GNU Radio to build a transmitter that
will encode voice via CVSD, and then transmit via FSK. We have been
using the cvsd_encode block to encode the voice samples via CVSD.
However, the documentation for this block says that it groups the
output bits together into short int samples. How can we extract each
bit from the short ints for modulation and transmission?

To convert between the packed and unpacked formats that block uses, use
the below with ‘bits_per_chunk’ set to 1.

gr.packed_to_unpacked_ss(bits_per_chunk)
gr.unpacked_to_packed_ss(bits_per_chunk)

These will accept and output short integer item streams.

Note: the gr-cvsd-vocoder component is somewhat buggy and will not be
included in the 3.1 stable branch (well, it might get added back when it
gets fixed on the trunk.)


Johnathan C.
Corgan Enterprises LLC
http://corganenterprises.com