Attention is currently required from: fixeria, neels, pespin.
Hello Jenkins Builder, fixeria, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-msc/+/35307?usp=email
to look at the new patch set (#3).
The following approvals got outdated and were removed: Code-Review+1 by pespin, Code-Review+2 by fixeria, Verified-1 by Jenkins Builder
Change subject: SDP/MGCP: pass octet-align=1 for AMR / pass all fmtp ......................................................................
SDP/MGCP: pass octet-align=1 for AMR / pass all fmtp
Since recent libosmo-mgcp-client update (see Depends), we can now pass fmtp for each individual codec entry to be sent in the SDP. Use that new feature to pass any fmtp from rtp_stream.c to the MGW via MGCP.
In effect, this adds the 'octet-align=1', defined in codec_mapping.c as the default for AMR, which was missing from the SDP/MGCP that osmo-msc sends out.
A 2G to 2G call worked out OK without it, because omitting the 'octet-align' setting from MGCP disables all octet-align payload checks in osmo-mgw. Both 2G call legs use octet-align=1, and things work out.
Running a call from 3G to 2G before this patch would result in osmo-mgw dropping the RTP with logging like:
DRTP NOTICE (rtpbridge/1@bsc0 I:B38CF524) rx_rtp(44 bytes): Expected RTP AMR octet-aligned=1 but got octet-aligned=0. check the config of your call-agent! (mgcp_network.c:1527)
...because osmo-bsc's MGW was instructed to expect octet-align=1, while osmo-msc's MGW emits octet-align=0. This happens because converting the 3G IuUP to 2G AMR heeds the RFC 6871 specified default of octet-align=0.
So, after this patch, we accurately send "octet-align=1", and make the IuUP-to-AMR conversion emit octet-align=1 to match 2G.
Side note: 3GPP specifies AoIP to use bandwidth-efficient AMR only; however, in all known Osmocom world, our 2G BTS emit octet-aligned AMR instead -- so in practice it makes most sense to run osmo-msc with octet-align=1 as the default. osmo-msc shall at some point feature a .cfg option to switch to octet-align=0 to conform with 3GPP, but until then, osmo-msc now configures all AMR to be octet-align=1.
Depends: osmo-mgw If58590bda8627519ff07e0b6f43aa47a274f052b Change-Id: Ief9225c9bcf7525a9a0a07c282ffb8cc0d092186 --- M TODO-RELEASE M configure.ac M src/libmsc/rtp_stream.c 3 files changed, 44 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/07/35307/3