[MERGED] osmo-sip-connector[master]: sdp.c Send octet-align in fmtp

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Keith Whyte gerrit-no-reply at lists.osmocom.org
Mon Sep 11 10:59:19 UTC 2017


Keith Whyte has submitted this change and it was merged.

Change subject: sdp.c Send octet-align in fmtp
......................................................................


sdp.c Send octet-align in fmtp

rfc4867 8.2:

      octet-align: Permissible values are 0 and 1.  If 1, octet-aligned
               operation SHALL be used.  If 0 or if not present,
               bandwidth-efficient operation is employed.

We don't have any support for AMR BE mode, but if we don't
send this the other end expects BE mode and can't decode the stream

Change-Id: I938758ac4ec55db9223e3da6c3c277e8fa670055
---
M src/sdp.c
1 file changed, 10 insertions(+), 1 deletion(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/src/sdp.c b/src/sdp.c
index ccd000d..213e979 100644
--- a/src/sdp.c
+++ b/src/sdp.c
@@ -166,18 +166,27 @@
 char *sdp_create_file(struct sip_call_leg *leg, struct call_leg *other)
 {
 	struct in_addr net = { .s_addr = ntohl(other->ip) };
+	char *fmtp_str = NULL, *sdp;
 
 	leg->wanted_codec = app_media_name(other->payload_msg_type);
-	return talloc_asprintf(leg,
+
+	if (strcmp(leg->wanted_codec, "AMR") == 0)
+		fmtp_str = talloc_asprintf(leg, "a=fmtp:%d octet-align=1\r\n", other->payload_type);
+
+	sdp = talloc_asprintf(leg,
 				"v=0\r\n"
 				"o=Osmocom 0 0 IN IP4 %s\r\n"
 				"s=GSM Call\r\n"
 				"c=IN IP4 %s\r\n"
 				"t=0 0\r\n"
 				"m=audio %d RTP/AVP %d\r\n"
+				"%s"
 				"a=rtpmap:%d %s/8000\r\n",
 				inet_ntoa(net), inet_ntoa(net), /* never use diff. addr! */
 				other->port, other->payload_type,
+				fmtp_str ? fmtp_str : "",
 				other->payload_type,
 				leg->wanted_codec);
+	talloc_free(fmtp_str);
+	return sdp;
 }

-- 
To view, visit https://gerrit.osmocom.org/3735
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I938758ac4ec55db9223e3da6c3c277e8fa670055
Gerrit-PatchSet: 11
Gerrit-Project: osmo-sip-connector
Gerrit-Branch: master
Gerrit-Owner: Keith Whyte <keith at rhizomatica.org>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Holger Freyther <holger at freyther.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Keith Whyte <keith at rhizomatica.org>
Gerrit-Reviewer: Max <msuraev at sysmocom.de>
Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr at sysmocom.de>



More information about the gerrit-log mailing list