discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] codec2-0.8-block-yaml-update


From: Maitland Bottoms
Subject: [Discuss-gnuradio] codec2-0.8-block-yaml-update
Date: Fri, 21 Sep 2018 18:40:19 -0400

Update to the yaml block definitions to follow previous C++ block update.

>From the Debian patch series for GNU Radio that should be available to
everyone.

-Maitland

--- a/gr-vocoder/grc/vocoder_codec2_decode_ps.block.yml
+++ b/gr-vocoder/grc/vocoder_codec2_decode_ps.block.yml
@@ -7,15 +7,16 @@
     dtype: int
     default: codec2.MODE_2400
     options: [codec2.MODE_3200, codec2.MODE_2400, codec2.MODE_1600, 
codec2.MODE_1400,
-        codec2.MODE_1300, codec2.MODE_1200, codec2.MODE_700, codec2.MODE_700B]
+        codec2.MODE_1300, codec2.MODE_1200, codec2.MODE_700, codec2.MODE_700B
+       codec2.MODE_700C, codec2.MODE_WB]
     option_labels: [3200 bps, 2400 bps, 1600 bps, 1400 bps, 1300 bps, 1200 
bps, 700
-            bps, 700B bps]
+            bps, 700B bps, 700C bps, Wideband]
     hide: ${ 'part' if vlen == 1 else 'none' }
 
 inputs:
 -   domain: stream
     dtype: byte
-    vlen: '${ { 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48, 6: 28, 7: 28 }[mode] 
}'
+    vlen: '${ { 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48, 6: 28, 7: 28, 8: 28, 
9: 64 }[mode] }'
 
 outputs:
 -   domain: stream
--- a/gr-vocoder/grc/vocoder_codec2_encode_sp.block.yml
+++ b/gr-vocoder/grc/vocoder_codec2_encode_sp.block.yml
@@ -7,9 +7,10 @@
     dtype: int
     default: codec2.MODE_2400
     options: [codec2.MODE_3200, codec2.MODE_2400, codec2.MODE_1600, 
codec2.MODE_1400,
-        codec2.MODE_1300, codec2.MODE_1200, codec2.MODE_700, codec2.MODE_700B]
+        codec2.MODE_1300, codec2.MODE_1200, codec2.MODE_700, codec2.MODE_700B,
+       codec2.MODE_700C, codec2.MODE_WB]
     option_labels: [3200 bps, 2400 bps, 1600 bps, 1400 bps, 1300 bps, 1200 
bps, 700
-            bps, 700B bps]
+            bps, 700B bps, 700C bps, Wideband]
     hide: ${ 'part' if vlen == 1 else 'none' }
 
 inputs:
@@ -19,7 +20,7 @@
 outputs:
 -   domain: stream
     dtype: byte
-    vlen: '${ { 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48, 6: 28, 7: 28 }[mode] 
}'
+    vlen: '${ { 0: 64, 1: 48, 2: 64, 3: 56, 4: 52, 5: 48, 6: 28, 7: 28, 8: 28, 
9: 64 }[mode] }'
 
 templates:
     imports: |-
--- a/gr-vocoder/grc/vocoder_freedv_rx_ss.block.yml
+++ b/gr-vocoder/grc/vocoder_freedv_rx_ss.block.yml
@@ -7,12 +7,20 @@
     dtype: int
     default: freedv_api.MODE_1600
     options: [freedv_api.MODE_1600, freedv_api.MODE_700, freedv_api.MODE_700B, 
freedv_api.MODE_2400A,
-        freedv_api.MODE_2400B, freedv_api.MODE_800XA]
-    option_labels: ['1600', '700', 700B, 2400A, 2400B, 800XA]
+        freedv_api.MODE_2400B, freedv_api.MODE_800XA, freedv_api.MODE_700C, 
freedv_api.MODE_700D]
+    option_labels: ['1600', '700', 700B, 2400A, 2400B, 800XA, 700C, 700D]
 -   id: squelch_thresh
     label: Squelch Threshold
     dtype: float
     default: '-100.0'
+-   id: interleave_frames
+    label: Interleave Frames
+    dtype: int
+    default: '1'
+-   id: squelch_enable
+    label: Squelch Enable
+    dtype: bool
+    default: True
 
 inputs:
 -   domain: stream
@@ -26,8 +34,16 @@
     imports: |-
         from gnuradio import vocoder
         from gnuradio.vocoder import freedv_api
-    make: vocoder.freedv_rx_ss(${mode},${squelch_thresh})
+    make: vocoder.freedv_rx_ss(${mode},${squelch_thresh},${interleave_frames})
     callbacks:
+    - set_squelch_en(${squelch_enable})
     - set_squelch_thresh(${squelch_thresh})
 
+documentation: |-
+    Not all modes may be supported by the underlying codec2 library.
+    interleave_frames is an integer between 1 and 32, and is only used in the 
700D mode.
+    (must be set the same on both transmitter and receiver)
+    Squelch Enable defaults to On
+    Squelch Threshold - cutoff level for receiver
+
 file_format: 1
--- a/gr-vocoder/grc/vocoder_freedv_tx_ss.block.yml
+++ b/gr-vocoder/grc/vocoder_freedv_tx_ss.block.yml
@@ -7,12 +7,24 @@
     dtype: int
     default: freedv_api.MODE_1600
     options: [freedv_api.MODE_1600, freedv_api.MODE_700, freedv_api.MODE_700B, 
freedv_api.MODE_2400A,
-        freedv_api.MODE_2400B, freedv_api.MODE_800XA]
-    option_labels: ['1600', '700', 700B, 2400A, 2400B, 800XA]
+        freedv_api.MODE_2400B, freedv_api.MODE_800XA, freedv_api.MODE_700C, 
freedv_api.MODE_700D]
+    option_labels: ['1600', '700', 700B, 2400A, 2400B, 800XA, 700C, 700D]
 -   id: txt_msg
     label: Text Message
     dtype: string
     default: '''GNU Radio'''
+-   id: interleave_frames
+    label: Interleave Frames
+    dtype: int
+    default: 1
+-   id: clip_val
+    label: Clip
+    dtype: bool
+    default: False
+-   id: tx_bpf_val
+    label: Tx BPF
+    dtype: bool
+    default: True
 
 inputs:
 -   domain: stream
@@ -26,6 +38,13 @@
     imports: |-
         from gnuradio import vocoder
         from gnuradio.vocoder import freedv_api
-    make: vocoder.freedv_tx_ss(${mode},${txt_msg})
+    make: vocoder.freedv_tx_ss(${mode},${txt_msg},${interleave_frames})
+
+documentation: |-
+    Not all modes may be supported by the underlying codec2 library.
+    interleave_frames is an integer between 1 and 32, and is only used in the 
700D mode.
+    (must be set the same on both transmitter and receiver)
+    Clip reduces the Peak/Average Power Ratio from 12dB to 8dB by clipping.
+    Tx BPF: enable a bandpass filter
 
 file_format: 1

reply via email to

[Prev in Thread] Current Thread [Next in Thread]