summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@collabora.co.uk>2009-07-01 12:55:03 +0200
committerWim Taymans <wim.taymans@collabora.co.uk>2009-07-01 12:55:03 +0200
commit80856964b52a089d5d286fd1543b89d2a3ea4a39 (patch)
tree9c84ed13e5667df10671701559cbfefcc0953b05
parent8d46d67d64efc7eb74801a0c1cdc71223fcbfa8c (diff)
downloadgst-plugins-bad-80856964b52a089d5d286fd1543b89d2a3ea4a39.tar.gz
gst-plugins-bad-80856964b52a089d5d286fd1543b89d2a3ea4a39.tar.bz2
gst-plugins-bad-80856964b52a089d5d286fd1543b89d2a3ea4a39.zip
rtpbin: use new method for netaddress to string
-rw-r--r--gst/rtpmanager/rtpsource.c47
1 files changed, 5 insertions, 42 deletions
diff --git a/gst/rtpmanager/rtpsource.c b/gst/rtpmanager/rtpsource.c
index 4d7c468d..40cdd238 100644
--- a/gst/rtpmanager/rtpsource.c
+++ b/gst/rtpmanager/rtpsource.c
@@ -188,52 +188,13 @@ rtp_source_finalize (GObject * object)
G_OBJECT_CLASS (rtp_source_parent_class)->finalize (object);
}
-#define MAX_ADDRESS 64
-static void
-make_address_string (GstNetAddress * addr, gchar * dest, gulong n)
-{
- switch (gst_netaddress_get_net_type (addr)) {
- case GST_NET_TYPE_IP4:
- {
- guint32 address;
- guint16 port;
-
- gst_netaddress_get_ip4_address (addr, &address, &port);
- address = g_ntohl (address);
-
- g_snprintf (dest, n, "%d.%d.%d.%d:%d", (address >> 24) & 0xff,
- (address >> 16) & 0xff, (address >> 8) & 0xff, address & 0xff,
- g_ntohs (port));
- break;
- }
- case GST_NET_TYPE_IP6:
- {
- guint8 address[16];
- guint16 port;
-
- gst_netaddress_get_ip6_address (addr, address, &port);
-
- g_snprintf (dest, n, "[%04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x]:%d",
- (address[0] << 8) | address[1], (address[2] << 8) | address[3],
- (address[4] << 8) | address[5], (address[6] << 8) | address[7],
- (address[8] << 8) | address[9], (address[10] << 8) | address[11],
- (address[12] << 8) | address[13], (address[14] << 8) | address[15],
- g_ntohs (port));
- break;
- }
- default:
- dest[0] = 0;
- break;
- }
-}
-
static GstStructure *
rtp_source_create_stats (RTPSource * src)
{
GstStructure *s;
gboolean is_sender = src->is_sender;
gboolean internal = src->internal;
- gchar address_str[MAX_ADDRESS];
+ gchar address_str[GST_NETADDRESS_MAX_LEN];
/* common data for all types of sources */
s = gst_structure_new ("application/x-rtp-source-stats",
@@ -246,11 +207,13 @@ rtp_source_create_stats (RTPSource * src)
/* add address and port */
if (src->have_rtp_from) {
- make_address_string (&src->rtp_from, address_str, sizeof (address_str));
+ gst_netaddress_to_string (&src->rtp_from, address_str,
+ sizeof (address_str));
gst_structure_set (s, "rtp-from", G_TYPE_STRING, address_str, NULL);
}
if (src->have_rtcp_from) {
- make_address_string (&src->rtcp_from, address_str, sizeof (address_str));
+ gst_netaddress_to_string (&src->rtcp_from, address_str,
+ sizeof (address_str));
gst_structure_set (s, "rtcp-from", G_TYPE_STRING, address_str, NULL);
}