summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/src/pjsua-lib')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_call.c7
-rw-r--r--pjsip/src/pjsua-lib/pjsua_media.c6
2 files changed, 12 insertions, 1 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_call.c b/pjsip/src/pjsua-lib/pjsua_call.c
index f3ca5cba..8cd8ce56 100644
--- a/pjsip/src/pjsua-lib/pjsua_call.c
+++ b/pjsip/src/pjsua-lib/pjsua_call.c
@@ -2184,7 +2184,12 @@ static void dump_media_session(const char *indent,
rem_addr = rem_addr_buf;
}
- if (info.stream_info[i].dir == PJMEDIA_DIR_ENCODING)
+ if (call->media_dir == PJMEDIA_DIR_NONE) {
+ /* To handle when the stream that is currently being paused
+ * (http://trac.pjsip.org/repos/ticket/1079)
+ */
+ dir = "inactive";
+ } else if (info.stream_info[i].dir == PJMEDIA_DIR_ENCODING)
dir = "sendonly";
else if (info.stream_info[i].dir == PJMEDIA_DIR_DECODING)
dir = "recvonly";
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c
index fd8163a0..2eb08944 100644
--- a/pjsip/src/pjsua-lib/pjsua_media.c
+++ b/pjsip/src/pjsua-lib/pjsua_media.c
@@ -1557,6 +1557,11 @@ pj_status_t pjsua_media_channel_update(pjsua_call_id call_id,
/* Call media direction */
call->media_dir = PJMEDIA_DIR_NONE;
+ /* Don't stop transport because we need to transmit keep-alives, and
+ * also to prevent restarting ICE negotiation. See
+ * http://trac.pjsip.org/repos/ticket/1094
+ */
+#if 0
/* Shutdown transport's session */
pjmedia_transport_media_stop(call->med_tp);
call->med_tp_st = PJSUA_MED_TP_IDLE;
@@ -1568,6 +1573,7 @@ pj_status_t pjsua_media_channel_update(pjsua_call_id call_id,
pjmedia_transport_close(call->med_tp);
call->med_tp = call->med_orig;
}
+#endif
} else {
pjmedia_transport_info tp_info;