pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-mgw/+/39755?usp=email )
Change subject: Drop rtp_processing transcoding stubs
......................................................................
Drop rtp_processing transcoding stubs
This has never been used afaik, and it's only clogging the code and
adding extra indirect function pointer calls to hot paths for no good
reason.
Drop all of it, and re-ad whatever makes sense once someone really wants
to implement transcoding.
Change-Id: Id16af528d94612e771f94333ad5404e5cd1c3318
---
M include/osmocom/mgcp/mgcp.h
M include/osmocom/mgcp/mgcp_network.h
M src/libosmo-mgcp/mgcp_network.c
M src/libosmo-mgcp/mgcp_protocol.c
4 files changed, 1 insertion(+), 100 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/55/39755/1
diff --git a/include/osmocom/mgcp/mgcp.h b/include/osmocom/mgcp/mgcp.h
index f72807e..edc3cb6 100644
--- a/include/osmocom/mgcp/mgcp.h
+++ b/include/osmocom/mgcp/mgcp.h
@@ -130,10 +130,6 @@
char source_addr[INET6_ADDRSTRLEN];
char call_agent_addr[INET6_ADDRSTRLEN];
- /* RTP processing */
- mgcp_processing rtp_processing_cb;
- mgcp_processing_setup setup_rtp_processing_cb;
-
struct osmo_wqueue gw_fd;
struct mgcp_port_range net_ports;
diff --git a/include/osmocom/mgcp/mgcp_network.h b/include/osmocom/mgcp/mgcp_network.h
index 8a1fc47..f30b788 100644
--- a/include/osmocom/mgcp/mgcp_network.h
+++ b/include/osmocom/mgcp/mgcp_network.h
@@ -98,18 +98,6 @@
struct osmo_sockaddr *addr, struct msgb *msg);
int mgcp_get_local_addr(char *addr, struct mgcp_conn_rtp *conn);
-/* payload processing default functions */
-int mgcp_rtp_processing_default(struct mgcp_endpoint *endp, struct mgcp_rtp_end *dst_end,
struct msgb *msg);
-
-int mgcp_setup_rtp_processing_default(struct mgcp_endpoint *endp,
- struct mgcp_conn_rtp *conn_dst,
- struct mgcp_conn_rtp *conn_src);
-
-void mgcp_get_net_downlink_format_default(struct mgcp_endpoint *endp,
- const struct mgcp_rtp_codec **codec,
- const char **fmtp_extra,
- struct mgcp_conn_rtp *conn);
-
/* internal RTP Annex A counting */
void mgcp_rtp_annex_count(const struct mgcp_endpoint *endp, struct mgcp_rtp_state
*state,
const uint16_t seq, const int32_t transit,
diff --git a/src/libosmo-mgcp/mgcp_network.c b/src/libosmo-mgcp/mgcp_network.c
index de837c1..abd095b 100644
--- a/src/libosmo-mgcp/mgcp_network.c
+++ b/src/libosmo-mgcp/mgcp_network.c
@@ -408,31 +408,6 @@
return ts_error;
}
-/*! dummy callback to disable transcoding (see also cfg->rtp_processing_cb).
- * \param[in] associated endpoint.
- * \param[in] destination RTP end.
- * \param[in,out] msg message bufffer containing data. Function might change length.
- * \returns ignores input parameters, return always 0. */
-int mgcp_rtp_processing_default(struct mgcp_endpoint *endp,
- struct mgcp_rtp_end *dst_end,
- struct msgb *msg)
-{
- return 0;
-}
-
-/*! dummy callback to disable transcoding (see also cfg->setup_rtp_processing_cb).
- * \param[in] associated endpoint.
- * \param[in] destination RTP connnection.
- * \param[in] source RTP connection.
- * \returns ignores input parameters, return always 0. */
-int mgcp_setup_rtp_processing_default(struct mgcp_endpoint *endp,
- struct mgcp_conn_rtp *conn_dst,
- struct mgcp_conn_rtp *conn_src)
-{
- LOGPENDP(endp, DRTP, LOGL_DEBUG, "transcoding disabled\n");
- return 0;
-}
-
void mgcp_rtp_annex_count(const struct mgcp_endpoint *endp,
struct mgcp_rtp_state *state, const uint16_t seq,
const int32_t transit, const uint32_t ssrc,
@@ -1187,13 +1162,7 @@
* header is present, we will generate one. */
gen_rtp_header(msg, rtp_end, rtp_state);
- /* Run transcoder */
- rc = endp->trunk->cfg->rtp_processing_cb(endp, rtp_end, msg);
- if (rc < 0) {
- LOGPENDP(endp, DRTP, LOGL_ERROR, "Error %d during transcoding\n", rc);
- msgb_free(msg);
- return rc;
- }
+ /* TODO: Run transcoder */
if (addr)
mgcp_patch_and_count(endp, rtp_state, rtp_end, addr, msg);
diff --git a/src/libosmo-mgcp/mgcp_protocol.c b/src/libosmo-mgcp/mgcp_protocol.c
index ef82796..7c1a715 100644
--- a/src/libosmo-mgcp/mgcp_protocol.c
+++ b/src/libosmo-mgcp/mgcp_protocol.c
@@ -96,43 +96,6 @@
static struct msgb *handle_rsip(struct mgcp_request_data *data);
static struct msgb *handle_noti_req(struct mgcp_request_data *data);
-/* Initalize transcoder */
-static int setup_rtp_processing(struct mgcp_endpoint *endp,
- struct mgcp_conn_rtp *conn)
-{
- struct mgcp_config *cfg = endp->trunk->cfg;
- struct mgcp_conn_rtp *conn_src = NULL;
- struct mgcp_conn_rtp *conn_dst = conn;
- struct mgcp_conn *_conn;
-
- switch (conn->type) {
- case MGCP_RTP_DEFAULT:
- case MGCP_RTP_OSMUX:
- case MGCP_RTP_IUUP:
- break;
- default:
- LOGPENDP(endp, DLMGCP, LOGL_NOTICE,
- "RTP-setup: Endpoint is not configured as RTP default, stopping here!\n");
- return 0;
- }
-
- if (conn->conn->mode == MGCP_CONN_LOOPBACK) {
- LOGPENDP(endp, DLMGCP, LOGL_NOTICE,
- "RTP-setup: Endpoint is in loopback mode, stopping here!\n");
- return 0;
- }
-
- /* Find the "sister" connection */
- llist_for_each_entry(_conn, &endp->conns, entry) {
- if (_conn->id != conn->conn->id) {
- conn_src = mgcp_conn_get_conn_rtp(_conn);
- break;
- }
- }
-
- return cfg->setup_rtp_processing_cb(endp, conn_dst, conn_src);
-}
-
/* Helper function to allocate some memory for responses and retransmissions */
static struct msgb *mgcp_msgb_alloc(void *ctx)
{
@@ -811,13 +774,6 @@
goto error2;
}
- if (setup_rtp_processing(endp, conn_rtp) != 0) {
- LOGPCONN(conn, DLMGCP, LOGL_ERROR,
- "CRCX: could not start RTP processing!\n");
- rate_ctr_inc(rate_ctr_group_get_ctr(rate_ctrs, MGCP_CRCX_FAIL_START_RTP));
- goto error2;
- }
-
/* Notify Osmux conn that CRCX was received */
if (mgcp_conn_rtp_is_osmux(conn_rtp)) {
if (conn_osmux_event_rx_crcx_mdcx(conn_rtp) < 0) {
@@ -1050,11 +1006,6 @@
}
}
- if (setup_rtp_processing(endp, conn_rtp) != 0) {
- rate_ctr_inc(rate_ctr_group_get_ctr(rate_ctrs, MGCP_MDCX_FAIL_START_RTP));
- goto error3;
- }
-
/* modify */
LOGPCONN(conn, DLMGCP, LOGL_DEBUG,
"MDCX: modified conn:%s\n", mgcp_conn_dump(conn));
@@ -1394,9 +1345,6 @@
cfg->source_port = 2427;
osmo_strlcpy(cfg->source_addr, "0.0.0.0", sizeof(cfg->source_addr));
- cfg->rtp_processing_cb = &mgcp_rtp_processing_default;
- cfg->setup_rtp_processing_cb = &mgcp_setup_rtp_processing_default;
-
INIT_LLIST_HEAD(&cfg->trunks);
/* Allocate virtual trunk */
--
To view, visit
https://gerrit.osmocom.org/c/osmo-mgw/+/39755?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: Id16af528d94612e771f94333ad5404e5cd1c3318
Gerrit-Change-Number: 39755
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>