summaryrefslogtreecommitdiff
path: root/gr-vocoder/lib/codec2_encode_sp_impl.cc
diff options
context:
space:
mode:
authorMarcus Müller <mmueller@gnuradio.org>2019-08-07 21:45:12 +0200
committerMarcus Müller <marcus@hostalia.de>2019-08-09 23:04:28 +0200
commitf7bbf2c1d8d780294f3e016aff239ca35eb6516e (patch)
treee09ab6112e02b2215b2d59ac24d3d6ea2edac745 /gr-vocoder/lib/codec2_encode_sp_impl.cc
parent78431dc6941e3acc67c858277dfe4a0ed583643c (diff)
Tree: clang-format without the include sorting
Diffstat (limited to 'gr-vocoder/lib/codec2_encode_sp_impl.cc')
-rw-r--r--gr-vocoder/lib/codec2_encode_sp_impl.cc108
1 files changed, 52 insertions, 56 deletions
diff --git a/gr-vocoder/lib/codec2_encode_sp_impl.cc b/gr-vocoder/lib/codec2_encode_sp_impl.cc
index ae76b09472..6e69b69c2e 100644
--- a/gr-vocoder/lib/codec2_encode_sp_impl.cc
+++ b/gr-vocoder/lib/codec2_encode_sp_impl.cc
@@ -36,72 +36,68 @@ extern "C" {
#include <iomanip>
namespace gr {
- namespace vocoder {
+namespace vocoder {
- codec2_encode_sp::sptr
- codec2_encode_sp::make(int mode)
- {
- CODEC2 *codec2;
- int samples_per_frame, bits_per_frame;
+codec2_encode_sp::sptr codec2_encode_sp::make(int mode)
+{
+ CODEC2* codec2;
+ int samples_per_frame, bits_per_frame;
- // Check the number of input samples and output bits per frame.
- codec2 = codec2_create(mode);
- samples_per_frame = codec2_samples_per_frame(codec2);
- bits_per_frame = codec2_bits_per_frame(codec2);
- codec2_destroy(codec2);
+ // Check the number of input samples and output bits per frame.
+ codec2 = codec2_create(mode);
+ samples_per_frame = codec2_samples_per_frame(codec2);
+ bits_per_frame = codec2_bits_per_frame(codec2);
+ codec2_destroy(codec2);
- return gnuradio::get_initial_sptr
- (new codec2_encode_sp_impl(mode, samples_per_frame, bits_per_frame));
- }
+ return gnuradio::get_initial_sptr(
+ new codec2_encode_sp_impl(mode, samples_per_frame, bits_per_frame));
+}
- codec2_encode_sp_impl::codec2_encode_sp_impl(int mode, int samples_per_frame, int bits_per_frame)
- : sync_decimator("vocoder_codec2_encode_sp",
- io_signature::make(1, 1, sizeof(short)),
- io_signature::make(1, 1, bits_per_frame * sizeof(char)),
- samples_per_frame),
+codec2_encode_sp_impl::codec2_encode_sp_impl(int mode,
+ int samples_per_frame,
+ int bits_per_frame)
+ : sync_decimator("vocoder_codec2_encode_sp",
+ io_signature::make(1, 1, sizeof(short)),
+ io_signature::make(1, 1, bits_per_frame * sizeof(char)),
+ samples_per_frame),
d_frame_buf((bits_per_frame + 7) / 8, 0)
- {
- if((d_codec2 = codec2_create(mode)) == 0)
- throw std::runtime_error("codec2_encode_sp_impl: codec2_create failed");
- d_samples_per_frame = samples_per_frame;
- d_bits_per_frame = bits_per_frame;
- }
-
- codec2_encode_sp_impl::~codec2_encode_sp_impl()
- {
- codec2_destroy(d_codec2);
- }
+{
+ if ((d_codec2 = codec2_create(mode)) == 0)
+ throw std::runtime_error("codec2_encode_sp_impl: codec2_create failed");
+ d_samples_per_frame = samples_per_frame;
+ d_bits_per_frame = bits_per_frame;
+}
- int
- codec2_encode_sp_impl::work(int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
- {
- const short *in = (const short*)input_items[0];
- unsigned char *out = (unsigned char*)output_items[0];
+codec2_encode_sp_impl::~codec2_encode_sp_impl() { codec2_destroy(d_codec2); }
- for(int i = 0; i < noutput_items; i++) {
- codec2_encode(d_codec2, &d_frame_buf[0], const_cast<short*>(in));
- unpack_frame((const unsigned char *) &d_frame_buf[0], out);
- in += d_samples_per_frame;
- out += d_bits_per_frame * sizeof(char);
- }
+int codec2_encode_sp_impl::work(int noutput_items,
+ gr_vector_const_void_star& input_items,
+ gr_vector_void_star& output_items)
+{
+ const short* in = (const short*)input_items[0];
+ unsigned char* out = (unsigned char*)output_items[0];
- return noutput_items;
+ for (int i = 0; i < noutput_items; i++) {
+ codec2_encode(d_codec2, &d_frame_buf[0], const_cast<short*>(in));
+ unpack_frame((const unsigned char*)&d_frame_buf[0], out);
+ in += d_samples_per_frame;
+ out += d_bits_per_frame * sizeof(char);
}
- void
- codec2_encode_sp_impl::unpack_frame(const unsigned char *packed, unsigned char *out)
- {
- int byte_idx = 0, bit_idx = 0;
- for(int k = 0; k < d_bits_per_frame; k++) {
- out[k] = (packed[byte_idx] >> (7-bit_idx)) & 0x01;
- bit_idx = (bit_idx + 1) % 8;
- if (bit_idx == 0) {
- byte_idx++;
- }
- }
+ return noutput_items;
+}
+
+void codec2_encode_sp_impl::unpack_frame(const unsigned char* packed, unsigned char* out)
+{
+ int byte_idx = 0, bit_idx = 0;
+ for (int k = 0; k < d_bits_per_frame; k++) {
+ out[k] = (packed[byte_idx] >> (7 - bit_idx)) & 0x01;
+ bit_idx = (bit_idx + 1) % 8;
+ if (bit_idx == 0) {
+ byte_idx++;
+ }
}
+}
- } /* namespace vocoder */
+} /* namespace vocoder */
} /* namespace gr */