bsc_subscriber_conn_fsm: use subslot 0 in case of E1 full subslot

In classic E1 based GSM networks the audio is usually transfered through
16bkps I.460 subslots while 4 16kbps subslots are multiplexed into one
E1 timeslot. However, there may be setups where still 16kbps subslots
are used, but with 1 instead of 4 channels per timeslot. In those cases
the bit offset is 0, while the rate is still 16kbps.

Change-Id: I0d2bc44acaa8e5a28cccfdf7cfb945bf14a4ed30
Related: OS#5198
This commit is contained in:
Philipp Maier 2023-02-08 16:50:30 +01:00
parent d4044214ca
commit 329e1cdc22
1 changed files with 7 additions and 1 deletions

View File

@ -721,9 +721,15 @@ struct osmo_mgcpc_ep *gscon_ensure_mgw_endpoint(struct gsm_subscriber_connection
/* use dynamic RTPBRIDGE endpoint allocation in MGW */
epname = mgcp_client_rtpbridge_wildcard(mgcp_client);
else {
uint8_t i460_bit_offs;
if (for_lchan->ts->e1_link.e1_ts_ss == E1_SUBSLOT_FULL)
i460_bit_offs = 0;
else
i460_bit_offs = for_lchan->ts->e1_link.e1_ts_ss * 2;
epname = mgcp_client_e1_epname(conn, mgcp_client, for_lchan->ts->e1_link.e1_nr,
for_lchan->ts->e1_link.e1_ts, 16,
for_lchan->ts->e1_link.e1_ts_ss*2);
i460_bit_offs);
}
conn->user_plane.mgw_endpoint =