diff options
Diffstat (limited to 'gr-vocoder/grc')
-rw-r--r-- | gr-vocoder/grc/CMakeLists.txt | 32 | ||||
-rw-r--r-- | gr-vocoder/grc/vocoder_block_tree.xml | 2 | ||||
-rw-r--r-- | gr-vocoder/grc/vocoder_codec2_decode_ps.xml | 10 | ||||
-rw-r--r-- | gr-vocoder/grc/vocoder_codec2_encode_sp.xml | 10 | ||||
-rw-r--r-- | gr-vocoder/grc/vocoder_freedv_rx_ss.xml | 58 | ||||
-rw-r--r-- | gr-vocoder/grc/vocoder_freedv_tx_ss.xml | 57 |
6 files changed, 161 insertions, 8 deletions
diff --git a/gr-vocoder/grc/CMakeLists.txt b/gr-vocoder/grc/CMakeLists.txt index f8cf8231b2..eef52179cb 100644 --- a/gr-vocoder/grc/CMakeLists.txt +++ b/gr-vocoder/grc/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright 2011 Free Software Foundation, Inc. +# Copyright 2011,2016 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -21,8 +21,6 @@ install(FILES vocoder_alaw_decode_bs.xml vocoder_alaw_encode_sb.xml vocoder_block_tree.xml - vocoder_codec2_decode_ps.xml - vocoder_codec2_encode_sp.xml vocoder_cvsd_decode_bs.xml vocoder_cvsd_decode.xml vocoder_cvsd_encode_sb.xml @@ -33,10 +31,32 @@ install(FILES vocoder_g723_24_encode_sb.xml vocoder_g723_40_decode_bs.xml vocoder_g723_40_encode_sb.xml - vocoder_gsm_fr_decode_ps.xml - vocoder_gsm_fr_encode_sp.xml vocoder_ulaw_decode_bs.xml vocoder_ulaw_encode_sb.xml DESTINATION ${GRC_BLOCKS_DIR} - COMPONENT "vocoder_python" ) + +if(LIBCODEC2_FOUND) + install(FILES + vocoder_codec2_decode_ps.xml + vocoder_codec2_encode_sp.xml + DESTINATION ${GRC_BLOCKS_DIR} + ) +endif(LIBCODEC2_FOUND) + +if(LIBCODEC2_HAS_FREEDV_API) + install(FILES + vocoder_freedv_rx_ss.xml + vocoder_freedv_tx_ss.xml + DESTINATION ${GRC_BLOCKS_DIR} + COMPONENT "vocoder_python" + ) +endif(LIBCODEC2_HAS_FREEDV_API) + +if(LIBGSM_FOUND) + install(FILES + vocoder_gsm_fr_decode_ps.xml + vocoder_gsm_fr_encode_sp.xml + DESTINATION ${GRC_BLOCKS_DIR} + ) +endif(LIBGSM_FOUND) diff --git a/gr-vocoder/grc/vocoder_block_tree.xml b/gr-vocoder/grc/vocoder_block_tree.xml index 07d8ba8fd1..e47af4cdd5 100644 --- a/gr-vocoder/grc/vocoder_block_tree.xml +++ b/gr-vocoder/grc/vocoder_block_tree.xml @@ -38,6 +38,8 @@ <block>vocoder_cvsd_encode_sb</block> <block>vocoder_cvsd_decode_bf</block> <block>vocoder_cvsd_encode_fb</block> + <block>vocoder_freedv_tx_ss</block> + <block>vocoder_freedv_rx_ss</block> <block>vocoder_g721_decode_bs</block> <block>vocoder_g721_encode_sb</block> <block>vocoder_g723_24_decode_bs</block> diff --git a/gr-vocoder/grc/vocoder_codec2_decode_ps.xml b/gr-vocoder/grc/vocoder_codec2_decode_ps.xml index b6e10ef8ba..8448dc83df 100644 --- a/gr-vocoder/grc/vocoder_codec2_decode_ps.xml +++ b/gr-vocoder/grc/vocoder_codec2_decode_ps.xml @@ -39,11 +39,19 @@ <name>1200 bps</name> <key>codec2.MODE_1200</key> </option> + <option> + <name>700 bps</name> + <key>codec2.MODE_700</key> + </option> + <option> + <name>700B bps</name> + <key>codec2.MODE_700B</key> + </option> </param> <sink> <name>in</name> <type>byte</type> - <vlen>{ 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48 }[$mode]</vlen> + <vlen>{ 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48, 6: 28, 7: 28 }[$mode]</vlen> </sink> <source> <name>out</name> diff --git a/gr-vocoder/grc/vocoder_codec2_encode_sp.xml b/gr-vocoder/grc/vocoder_codec2_encode_sp.xml index 6af54fa586..f11ad443c6 100644 --- a/gr-vocoder/grc/vocoder_codec2_encode_sp.xml +++ b/gr-vocoder/grc/vocoder_codec2_encode_sp.xml @@ -39,6 +39,14 @@ <name>1200 bps</name> <key>codec2.MODE_1200</key> </option> + <option> + <name>700 bps</name> + <key>codec2.MODE_700</key> + </option> + <option> + <name>700B bps</name> + <key>codec2.MODE_700B</key> + </option> </param> <sink> <name>in</name> @@ -47,7 +55,7 @@ <source> <name>out</name> <type>byte</type> - <vlen>{ 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48 }[$mode]</vlen> + <vlen>{ 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48, 6: 28, 7: 28 }[$mode]</vlen> </source> </block> diff --git a/gr-vocoder/grc/vocoder_freedv_rx_ss.xml b/gr-vocoder/grc/vocoder_freedv_rx_ss.xml new file mode 100644 index 0000000000..14e00a0979 --- /dev/null +++ b/gr-vocoder/grc/vocoder_freedv_rx_ss.xml @@ -0,0 +1,58 @@ +<?xml version="1.0"?> +<!-- +################################################### +## FreeDV audio modem demodulator +################################################### + --> +<block> + <name>FreeDV demodulator</name> + <key>vocoder_freedv_rx_ss</key> + <import>from gnuradio import vocoder</import> + <import>from gnuradio.vocoder import freedv_api</import> + <make>vocoder.freedv_rx_ss($mode,$squelch_thresh)</make> + <callback>set_squelch_thresh($squelch_thresh)</callback> + <param> + <name>Operating Mode</name> + <key>mode</key> + <value>freedv_api.MODE_1600</value> + <type>int</type> + <option> + <name>1600</name> + <key>freedv_api.MODE_1600</key> + </option> + <option> + <name>700</name> + <key>freedv_api.MODE_700</key> + </option> + <option> + <name>700B</name> + <key>freedv_api.MODE_700B</key> + </option> + <option> + <name>2400A</name> + <key>freedv_api.MODE_2400A</key> + </option> + <option> + <name>2400B</name> + <key>freedv_api.MODE_2400B</key> + </option> + <option> + <name>800XA</name> + <key>freedv_api.MODE_800XA</key> + </option> + </param> + <param> + <name>Squelch Threshold</name> + <key>squelch_thresh</key> + <value>-100.0</value> + <type>float</type> + </param> + <sink> + <name>in</name> + <type>short</type> + </sink> + <source> + <name>out</name> + <type>short</type> + </source> +</block> diff --git a/gr-vocoder/grc/vocoder_freedv_tx_ss.xml b/gr-vocoder/grc/vocoder_freedv_tx_ss.xml new file mode 100644 index 0000000000..54a49b730f --- /dev/null +++ b/gr-vocoder/grc/vocoder_freedv_tx_ss.xml @@ -0,0 +1,57 @@ +<?xml version="1.0"?> +<!-- +################################################### +## FreeDV audio modem modulator +################################################### + --> +<block> + <name>FreeDV modulator</name> + <key>vocoder_freedv_tx_ss</key> + <import>from gnuradio import vocoder</import> + <import>from gnuradio.vocoder import freedv_api</import> + <make>vocoder.freedv_tx_ss($mode,$txt_msg)</make> + <param> + <name>Operating Mode</name> + <key>mode</key> + <value>freedv_api.MODE_1600</value> + <type>int</type> + <option> + <name>1600</name> + <key>freedv_api.MODE_1600</key> + </option> + <option> + <name>700</name> + <key>freedv_api.MODE_700</key> + </option> + <option> + <name>700B</name> + <key>freedv_api.MODE_700B</key> + </option> + <option> + <name>2400A</name> + <key>freedv_api.MODE_2400A</key> + </option> + <option> + <name>2400B</name> + <key>freedv_api.MODE_2400B</key> + </option> + <option> + <name>800XA</name> + <key>freedv_api.MODE_800XA</key> + </option> + </param> + <param> + <name>Text Message</name> + <key>txt_msg</key> + <value>'GNU Radio'</value> + <type>string</type> + </param> + <sink> + <name>in</name> + <type>short</type> + </sink> + <source> + <name>out</name> + <type>short</type> + </source> +</block> |