falconia has uploaded this change for review.

View Change

E1: implement dummy fill for HRv1 codec

In the absence of a proper TFO transform (TS 28.062 section
C3.2.1.1), OsmoMGW-E1 inserts constant fill frames when there is
no RTP input, or when RTP input fails conversion to TRAU-DL and
thus does not enqueue anything to the I.460 mux.

This dummy fill was previously implemented for FR and EFR codecs,
but not for HRv1. Fix this omission.

With this change and with a fix to OsmoBSC to select 8k subslot
endpoints for TCH/H instead of 16k, OsmoMGW-E1 should support HR
codec to the same degree to which it supports FR and EFR: far from
perfect, but likely to be usable, especially if DTXu is disabled
and there is no TrFO interworking with a far end that does DTXu.

Change-Id: I188bc0a0468b19126281016f45e36f1de617e9ee
---
M src/libosmo-mgcp/mgcp_e1.c
1 file changed, 5 insertions(+), 0 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/51/39751/1
diff --git a/src/libosmo-mgcp/mgcp_e1.c b/src/libosmo-mgcp/mgcp_e1.c
index e3d72e0..e989ef6 100644
--- a/src/libosmo-mgcp/mgcp_e1.c
+++ b/src/libosmo-mgcp/mgcp_e1.c
@@ -82,6 +82,11 @@
dummy_fill_pl = osmo_gsm660_homing_frame;
dummy_fill_pl_len = GSM_EFR_BYTES;
break;
+ case OSMO_TRAU16_FT_HR:
+ case OSMO_TRAU8_SPEECH:
+ dummy_fill_pl = osmo_gsm620_silence_frame;
+ dummy_fill_pl_len = GSM_HR_BYTES;
+ break;
default:
LOGPENDP(endp, DE1, LOGL_ERROR, "E1-I.460-IDLE-TX: unsupported frame type\n");
goto skip;

To view, visit change 39751. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: I188bc0a0468b19126281016f45e36f1de617e9ee
Gerrit-Change-Number: 39751
Gerrit-PatchSet: 1
Gerrit-Owner: falconia <falcon@freecalypso.org>