diff options
-rwxr-xr-x | apps/grgsm_decode | 2 | ||||
-rw-r--r-- | grc/decoding/gsm_tch_h_decoder.xml | 48 | ||||
-rw-r--r-- | grc/demapping/gsm_tch_h_chans_demapper.xml | 15 | ||||
-rw-r--r-- | python/CMakeLists.txt | 1 |
4 files changed, 26 insertions, 40 deletions
diff --git a/apps/grgsm_decode b/apps/grgsm_decode index 3bc0db3..4bd1d95 100755 --- a/apps/grgsm_decode +++ b/apps/grgsm_decode @@ -344,7 +344,7 @@ if __name__ == '__main__': tch_options.add_option("--sub-channel", dest="tch_h_channel", default="0", type='intx', help="TCH/H sub-channel. [default=0]") tch_options.add_option("--multi-rate", dest="multi_rate", default="", type='string', - help="The MultiRrate configuration element from the Assignment Command message. " + help="The MultiRate configuration element from the Assignment Command message. " "Example: 28111a40. See 3GPP TS 44.018 - 10.5.2.21aa MultiRate configuration") tch_options.add_option("--voice-boundary", dest="enable_voice_boundary_detection", action="store_true", default=False, help="Enable voice boundary detection for traffic channels. This can help reduce noice in the output.") diff --git a/grc/decoding/gsm_tch_h_decoder.xml b/grc/decoding/gsm_tch_h_decoder.xml index 895104e..3936336 100644 --- a/grc/decoding/gsm_tch_h_decoder.xml +++ b/grc/decoding/gsm_tch_h_decoder.xml @@ -3,54 +3,27 @@ <name>TCH/H decoder</name> <key>gsm_tch_h_decoder</key> <import>import grgsm</import> - <make>grgsm.tch_h_decoder($sub_channel, $mode, $boundary_check)</make> + <make>grgsm.tch_h_decoder($sub_channel, $multi_rate, $boundary_check)</make> <param> - <name>sub-channel number</name> + <name>Sub-channel number</name> <key>sub_channel</key> <value>0</value> <type>int</type> + <hide>none</hide> <option> - <name>sub-channel 0</name> + <name>0</name> <key>0</key> </option> <option> - <name>sub-channel 1</name> + <name>1</name> <key>1</key> </option> </param> <param> - <name>TCH/H coding mode</name> - <key>mode</key> - <type>enum</type> - <option> - <name>GSM-HS</name> - <key>grgsm.TCH_HS</key> - </option> - <option> - <name>GSM-AMR 7.95</name> - <key>grgsm.TCH_AHS7_95</key> - </option> - <option> - <name>GSM-AMR 7.4</name> - <key>grgsm.TCH_AHS7_4</key> - </option> - <option> - <name>GSM-AMR 6.7</name> - <key>grgsm.TCH_AHS6_7</key> - </option> - <option> - <name>GSM-AMR 5.9</name> - <key>grgsm.TCH_AHS5_9</key> - </option> - <option> - <name>GSM-AMR 5.15</name> - <key>grgsm.TCH_AHS5_15</key> - </option> - <option> - <name>GSM-AMR 4.75</name> - <key>grgsm.TCH_AHS4_75</key> - </option> + <name>MultiRate configuration</name> + <key>multi_rate</key> + <type>string</type> </param> <param> <name>Voice boundary detection</name> @@ -83,6 +56,11 @@ </source> <doc> +The MultiRate configuration string should contains the hex string from the +MultiRate configuration element from the Assignment Command message. +Example: 28111a40. +See 3GPP TS 44.018 - 10.5.2.21aa MultiRate configuratio + If "Voice boundary detection" is enabled, then only bursts are decoded as voice where - the framenumber is greater then the framenumber of a received "Connect" or "Connect Acknowlegde" message, and diff --git a/grc/demapping/gsm_tch_h_chans_demapper.xml b/grc/demapping/gsm_tch_h_chans_demapper.xml index f2bd67f..52148f5 100644 --- a/grc/demapping/gsm_tch_h_chans_demapper.xml +++ b/grc/demapping/gsm_tch_h_chans_demapper.xml @@ -10,22 +10,29 @@ <key>timeslot_nr</key> <value>2</value> <type>int</type> - <hide>part</hide> + <hide>none</hide> </param> <param> - <name>TCH/H Channel</name> + <name>Sub-channel number</name> <key>tch_h_channel</key> <value>0</value> <type>int</type> - <hide>#if $tch_type() == 0 then 'all' else 'none'#</hide> + <hide>none</hide> + <option> + <name>0</name> + <key>0</key> + </option> + <option> + <name>1</name> + <key>1</key> + </option> </param> <check>$tch_h_channel() > -1 and $tch_h_channel() < 2</check> <sink> <name>bursts</name> <type>message</type> - <optional>1</optional> </sink> <source> <name>tch_bursts</name> diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index 22c88a9..21f2507 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -58,6 +58,7 @@ GR_ADD_TEST(qa_burst_sdcch_subslot_filter ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_S GR_ADD_TEST(qa_burst_fnr_filter ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_burst_fnr_filter.py) GR_ADD_TEST(qa_dummy_burst_filter ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_dummy_burst_filter.py) GR_ADD_TEST(qa_tch_f_decoder ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_tch_f_decoder.py) +GR_ADD_TEST(qa_tch_h_decoder ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_tch_h_decoder.py) GR_ADD_TEST(qa_tch_f_chans_demapper ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_tch_f_chans_demapper.py) GR_ADD_TEST(qa_tch_h_chans_demapper ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_tch_h_chans_demapper.py) #GR_ADD_TEST(qa_msg_to_tag ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/qa_msg_to_tag.py) |