aboutsummaryrefslogtreecommitdiffstats
path: root/include/mgcp/mgcp_internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/mgcp/mgcp_internal.h')
-rw-r--r--include/mgcp/mgcp_internal.h24
1 files changed, 17 insertions, 7 deletions
diff --git a/include/mgcp/mgcp_internal.h b/include/mgcp/mgcp_internal.h
index 6b2989d..cf2e9fd 100644
--- a/include/mgcp/mgcp_internal.h
+++ b/include/mgcp/mgcp_internal.h
@@ -1,8 +1,8 @@
/* MGCP Private Data */
/*
- * (C) 2009-2011 by Holger Hans Peter Freyther <zecke@selfish.org>
- * (C) 2009-2011 by On-Waves
+ * (C) 2009-2012 by Holger Hans Peter Freyther <zecke@selfish.org>
+ * (C) 2009-2012 by On-Waves
* All Rights Reserved
*
* This program is free software; you can redistribute it and/or modify
@@ -47,16 +47,22 @@ struct mgcp_rtp_state {
uint32_t orig_ssrc;
uint32_t ssrc;
- uint16_t seq_no;
- int lost_no;
+
+ uint16_t base_seq;
+ uint16_t max_seq;
int seq_offset;
+ int cycles;
+
uint32_t last_timestamp;
int32_t timestamp_offset;
+ uint32_t jitter;
+ int32_t transit;
};
struct mgcp_rtp_end {
/* statistics */
unsigned int packets;
+ unsigned int octets;
struct in_addr addr;
/* in network byte order */
@@ -121,6 +127,10 @@ struct mgcp_endpoint {
/* SSRC/seq/ts patching for loop */
int allow_patch;
+ /* fields for re-transmission */
+ char *last_trans;
+ char *last_response;
+
/* tap for the endpoint */
struct mgcp_rtp_tap taps[MGCP_TAP_COUNT];
@@ -139,9 +149,6 @@ struct mgcp_msg_ptr {
unsigned int length;
};
-int mgcp_analyze_header(struct mgcp_config *cfg, struct msgb *msg,
- struct mgcp_msg_ptr *ptr, int size,
- const char **transaction_id, struct mgcp_endpoint **endp);
int mgcp_send_dummy(struct mgcp_endpoint *endp);
int mgcp_bind_bts_rtp_port(struct mgcp_endpoint *endp, int rtp_port);
int mgcp_bind_net_rtp_port(struct mgcp_endpoint *endp, int rtp_port);
@@ -161,5 +168,8 @@ struct mgcp_trunk_config *mgcp_trunk_num(struct mgcp_config *cfg, int index);
struct mgcp_trunk_config *mgcp_trunk_domain(struct mgcp_config *cfg, const char *);
void mgcp_trunk_free(struct mgcp_trunk_config *cfg);
+void mgcp_state_calc_loss(struct mgcp_rtp_state *s, struct mgcp_rtp_end *,
+ uint32_t *expected, int *loss);
+uint32_t mgcp_state_calc_jitter(struct mgcp_rtp_state *);
#endif