Skip to content
Success

Changes

Summary

  1. trau: implement TFO frame decoding functions (details)
  2. trau: implement TFO frame encoding function (details)
Commit 0b70d0bca5580233a5300ebd30fa057b4c942860 by falcon
trau: implement TFO frame decoding functions

TFO frames of 3GPP TS 28.062 are slightly modified TRAU-UL frames,
and thus require slightly modified encoding and decoding functions.
Adding TFO frame encoding and decoding functions to libosmotrau
will allow TFO applications (sw implementations of a TFO-capable
speech transcoder) to reuse those parts of TRAU frame encoding and
decoding that are common between regular TRAU frames and TFO.

Change-Id: Ia095598622645068d62301bc4bf7de9f68065e84
The file was modifiedsrc/trau/trau_frame.c
The file was modifiedinclude/osmocom/trau/trau_frame.h
Commit ab0df20544542d490abd184c7869fb0d2404c43b by falcon
trau: implement TFO frame encoding function

Most differences between regular TRAU frames of TS 48.060 & 48.061
and TFO frames of TS 28.062 matter only in the frame decoding
direction.  In the encoding direction, regular osmo_trau_frame_encode()
would have been sufficient for both frame types if it weren't for
the quirk of setting C1..C5 bits.  osmo_trau_frame_encode() sets
these bits per its own mind for most frame types, ignoring the bits
passed by the user in fr->c_bits[].  This API behavior cannot be
changed without breaking existing users, but it is bad for TFO.

Solution: implement new osmo_trau_frame_encode_tfo() function
for TFO applications.  As an additional benefit, the output buffer
space requirement is reduced because there is no possibility of
output frame extension for timing alignment.

Change-Id: I6e0ab4e5115f0aa6979ce93955b0e95b09041091
The file was modifiedsrc/trau/trau_frame.c
The file was modifiedinclude/osmocom/trau/trau_frame.h