summaryrefslogtreecommitdiff
path: root/pjmedia/include/pjmedia
diff options
context:
space:
mode:
Diffstat (limited to 'pjmedia/include/pjmedia')
-rw-r--r--pjmedia/include/pjmedia/codec.h15
-rw-r--r--pjmedia/include/pjmedia/config.h34
-rw-r--r--pjmedia/include/pjmedia/sdp.h19
-rw-r--r--pjmedia/include/pjmedia/transport.h27
-rw-r--r--pjmedia/include/pjmedia/transport_ice.h8
5 files changed, 96 insertions, 7 deletions
diff --git a/pjmedia/include/pjmedia/codec.h b/pjmedia/include/pjmedia/codec.h
index 62c79e0..58fa7a1 100644
--- a/pjmedia/include/pjmedia/codec.h
+++ b/pjmedia/include/pjmedia/codec.h
@@ -1,4 +1,4 @@
-/* $Id: codec.h 3664 2011-07-19 03:42:28Z nanang $ */
+/* $Id: codec.h 4278 2012-10-05 10:04:54Z ming $ */
/*
* Copyright (C) 2008-2011 Teluu Inc. (http://www.teluu.com)
* Copyright (C) 2003-2008 Benny Prijono <benny@prijono.org>
@@ -276,6 +276,7 @@ typedef struct pjmedia_codec_param
unsigned channel_cnt; /**< Channel count. */
pj_uint32_t avg_bps; /**< Average bandwidth in bits/sec */
pj_uint32_t max_bps; /**< Maximum bandwidth in bits/sec */
+ unsigned max_rx_frame_size; /**< Maximum frame size */
pj_uint16_t frm_ptime; /**< Decoder frame ptime in msec. */
pj_uint16_t enc_ptime; /**< Encoder ptime, or zero if it's
equal to decoder ptime. */
@@ -308,6 +309,18 @@ typedef struct pjmedia_codec_param
} pjmedia_codec_param;
+/**
+ * Duplicate codec parameter.
+ *
+ * @param pool The pool.
+ * @param src The codec parameter to be duplicated.
+ *
+ * @return Duplicated codec parameter.
+ */
+PJ_DECL(pjmedia_codec_param*) pjmedia_codec_param_clone(
+ pj_pool_t *pool,
+ const pjmedia_codec_param *src);
+
/*
* Forward declaration for pjmedia_codec.
diff --git a/pjmedia/include/pjmedia/config.h b/pjmedia/include/pjmedia/config.h
index d5a598f..b229eca 100644
--- a/pjmedia/include/pjmedia/config.h
+++ b/pjmedia/include/pjmedia/config.h
@@ -1,4 +1,4 @@
-/* $Id: config.h 4130 2012-05-17 08:35:51Z nanang $ */
+/* $Id: config.h 4240 2012-08-31 09:03:36Z ming $ */
/*
* Copyright (C) 2008-2011 Teluu Inc. (http://www.teluu.com)
* Copyright (C) 2003-2008 Benny Prijono <benny@prijono.org>
@@ -371,7 +371,7 @@
/**
- * Max packet size to support.
+ * Max packet size for transmitting direction.
*/
#ifndef PJMEDIA_MAX_MTU
# define PJMEDIA_MAX_MTU 1500
@@ -379,6 +379,14 @@
/**
+ * Max packet size for receiving direction.
+ */
+#ifndef PJMEDIA_MAX_MRU
+# define PJMEDIA_MAX_MRU 2000
+#endif
+
+
+/**
* DTMF/telephone-event duration, in timestamp.
*/
#ifndef PJMEDIA_DTMF_DURATION
@@ -677,6 +685,28 @@
/**
+ * This macro controls whether pjmedia should include SDP
+ * bandwidth modifier "TIAS" (RFC3890).
+ *
+ * Note that there is also a run-time variable to turn this setting
+ * on or off, defined in endpoint.c. To access this variable, use
+ * the following construct
+ *
+ \verbatim
+ extern pj_bool_t pjmedia_add_bandwidth_tias_in_sdp;
+
+ // Do not enable bandwidth information inclusion in sdp
+ pjmedia_add_bandwidth_tias_in_sdp = PJ_FALSE;
+ \endverbatim
+ *
+ * Default: 1 (yes)
+ */
+#ifndef PJMEDIA_ADD_BANDWIDTH_TIAS_IN_SDP
+# define PJMEDIA_ADD_BANDWIDTH_TIAS_IN_SDP 1
+#endif
+
+
+/**
* This macro controls whether pjmedia should include SDP rtpmap
* attribute for static payload types. SDP rtpmap for static
* payload types are optional, although they are normally included
diff --git a/pjmedia/include/pjmedia/sdp.h b/pjmedia/include/pjmedia/sdp.h
index 2dc58d6..bababef 100644
--- a/pjmedia/include/pjmedia/sdp.h
+++ b/pjmedia/include/pjmedia/sdp.h
@@ -1,4 +1,4 @@
-/* $Id: sdp.h 3945 2012-01-27 09:12:59Z nanang $ */
+/* $Id: sdp.h 4367 2013-02-21 20:49:19Z nanang $ */
/*
* Copyright (C) 2008-2011 Teluu Inc. (http://www.teluu.com)
* Copyright (C) 2003-2008 Benny Prijono <benny@prijono.org>
@@ -686,6 +686,23 @@ PJ_DECL(pj_status_t) pjmedia_sdp_validate(const pjmedia_sdp_session *sdp);
/**
+ * Perform semantic validation for the specified SDP session descriptor.
+ * This function perform validation beyond just syntactic verification,
+ * such as to verify the value of network type and address type, check
+ * the connection line, and verify that \a rtpmap attribute is present
+ * when dynamic payload type is used.
+ *
+ * @param sdp The SDP session descriptor to validate.
+ * @param strict Flag whether the check should be strict, i.e: allow
+ * media without connection line when port is zero.
+ *
+ * @return PJ_SUCCESS on success.
+ */
+PJ_DECL(pj_status_t) pjmedia_sdp_validate2(const pjmedia_sdp_session *sdp,
+ pj_bool_t strict);
+
+
+/**
* Clone SDP session descriptor.
*
* @param pool The pool used to clone the session.
diff --git a/pjmedia/include/pjmedia/transport.h b/pjmedia/include/pjmedia/transport.h
index dca9f29..e86c974 100644
--- a/pjmedia/include/pjmedia/transport.h
+++ b/pjmedia/include/pjmedia/transport.h
@@ -1,4 +1,4 @@
-/* $Id: transport.h 3664 2011-07-19 03:42:28Z nanang $ */
+/* $Id: transport.h 4345 2013-02-13 07:43:32Z nanang $ */
/*
* Copyright (C) 2008-2011 Teluu Inc. (http://www.teluu.com)
* Copyright (C) 2003-2008 Benny Prijono <benny@prijono.org>
@@ -566,7 +566,7 @@ PJ_INLINE(void) pjmedia_transport_info_init(pjmedia_transport_info *info)
* for example to fill in the "c=" and "m=" line of local SDP.
*
* @param tp The transport.
- * @param info Media socket info to be initialized.
+ * @param info Media transport info to be initialized.
*
* @return PJ_SUCCESS on success.
*/
@@ -581,6 +581,29 @@ PJ_INLINE(pj_status_t) pjmedia_transport_get_info(pjmedia_transport *tp,
/**
+ * Utility API to get transport type specific info from the specified media
+ * transport info.
+ *
+ * @param info Media transport info.
+ * @param type Media transport type.
+ *
+ * @return Pointer to media transport specific info, or NULL if
+ * specific info for the transport type is not found.
+ */
+PJ_INLINE(void*) pjmedia_transport_info_get_spc_info(
+ pjmedia_transport_info *info,
+ pjmedia_transport_type type)
+{
+ unsigned i;
+ for (i = 0; i < info->specific_info_cnt; ++i) {
+ if (info->spc_info[i].type == type)
+ return (void*)info->spc_info[i].buffer;
+ }
+ return NULL;
+}
+
+
+/**
* Attach callbacks to be called on receipt of incoming RTP/RTCP packets.
* This is just a simple wrapper which calls <tt>attach()</tt> member of
* the transport.
diff --git a/pjmedia/include/pjmedia/transport_ice.h b/pjmedia/include/pjmedia/transport_ice.h
index 4500fae..417ee6d 100644
--- a/pjmedia/include/pjmedia/transport_ice.h
+++ b/pjmedia/include/pjmedia/transport_ice.h
@@ -1,4 +1,4 @@
-/* $Id: transport_ice.h 3872 2011-10-28 04:27:41Z bennylp $ */
+/* $Id: transport_ice.h 4350 2013-02-15 03:57:31Z nanang $ */
/*
* Copyright (C) 2008-2011 Teluu Inc. (http://www.teluu.com)
* Copyright (C) 2003-2008 Benny Prijono <benny@prijono.org>
@@ -69,6 +69,12 @@ typedef struct pjmedia_ice_cb
typedef struct pjmedia_ice_transport_info
{
/**
+ * Specifies whether ICE is used, i.e. SDP offer and answer indicates
+ * that both parties support ICE and ICE should be used for the session.
+ */
+ pj_bool_t active;
+
+ /**
* ICE sesion state.
*/
pj_ice_strans_state sess_state;