Attention is currently required from: fixeria, laforge, pespin.
falconia uploaded patch set #3 to this change.
The following approvals got outdated and were removed: Code-Review+1 by laforge, Verified+1 by Jenkins Builder
codec: add osmo_hr_sid_classify()
In order to support DTX, each frame coming out of the channel decoder
for TCH/FS, TCH/HS and TCH/EFS needs to be classified as valid SID,
invalid SID or non-SID speech as specified in GSM 06.31, 06.41 and
06.81, respectively. However, the case of TCH/HS (GSM 06.41) is
more difficult than FR & EFR: ETSI provided an example implementation
instead of a stipulation, and because they failed to document the BCI
error flag they relied upon, ETSI's reference implementation of HR SID
classification defied understanding for a long time. But now this
mystery has been cracked:
https://osmocom.org/projects/retro-gsm/wiki/HRv1_error_flags
Add a function to libosmocodec that implements the same logic as
ETSI's swSidDetection(), including support for BCI flag. This function
is intended to be used in OsmoBTS (it can post-process the output of
sysmoBTS PHY) when TW-TS-002 output is requested, and it can also be
used in implementations of SDR-based GSM MS when feeding TCH/HS Rx to
a proper speech decoder and Rx DTX handler for HRv1 codec.
Related: OS#6036
Change-Id: I5f4eb65379646125b966cf182775b6e9348900bd
---
M include/osmocom/codec/codec.h
M src/codec/Makefile.am
A src/codec/hr_sid_class.c
3 files changed, 209 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/58/37558/3
To view, visit change 37558. To unsubscribe, or for help writing mail filters, visit settings.