Attention is currently required from: neels, laforge.
falconia has posted comments on this change. (
https://gerrit.osmocom.org/c/libosmo-abis/+/32078 )
Change subject: osmo_rtp2trau() for FR & EFR: correctly handle the no-data case
......................................................................
Patch Set 1:
(2 comments)
File src/trau/trau_rtp_conv.c:
https://gerrit.osmocom.org/c/libosmo-abis/+/32078/comment/1e7ed5a4_a883df1a
PS1, Line 282: } else if (data_len == 0) {
: /* C1 .. C5: idle speech */
: tf->c_bits[0] = 0;
: tf->c_bits[1] = 1;
: tf->c_bits[2] = 1;
: tf->c_bits[3] = 1;
: tf->c_bits[4] = 0;
Please read the rules of TS 48.060, particularly sections 6.5.2 and 6.5.3. Here is a
bullet-point summary of these rules:
* In the case of DL, for both FR and EFR, there is no choice: the TRAU must send an idle
speech frame, which is distinguished from a regular speech frame by a unique C1..C5
pattern.
* In the case of UL for EFR, the CCU must send a regular EFR speech frame (not idle speech
frame) with BFI=1 - once again, no choice given.
* In the case of UL for FR, the CCU has the option of sending either a regular speech
frame with BFI=1 or an idle speech frame.
Thus there is only one case where we as implementors get a choice: the case of FR UL. My
patch implements the option of sending BFI=1, consistently with EFR when such behaviour is
required. So let's decide on this issue first, before arguing over code structure:
should we send a speech frame with BFI=1 or an idle speech frame in this case?
Also @laforge wrote:
Basically above where the "FIXME: Generate SID
frames?" comment is (which is no longer a FIXME then.
This FIXME is fixed, and that comment removed, in the second patch of the series.
https://gerrit.osmocom.org/c/libosmo-abis/+/32078/comment/b866177b_87816889
PS1, Line 441: if (data_len == 0 && tf->dir == OSMO_TRAU_DIR_DL) {
(wondering as above: why only for DL?)
In the
present case (EFR codec) the answer to the "why" question is straightforward:
because TS 48.060 section 6.5.3 says so.
--
To view, visit
https://gerrit.osmocom.org/c/libosmo-abis/+/32078
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-abis
Gerrit-Branch: master
Gerrit-Change-Id: I7f21e2210bba9ef87f1af515a001a0cfc1c0a1d8
Gerrit-Change-Number: 32078
Gerrit-PatchSet: 1
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Mon, 27 Mar 2023 16:35:48 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: neels <nhofmeyr(a)sysmocom.de>
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: comment