[Pkg-voip-commits] [janus] 74/163: Don't offer medium to VideoRoom subscribers if recvonly/inactive (fixes #985)

Jonas Smedegaard dr at jones.dk
Sat Oct 28 01:22:11 UTC 2017


This is an automated email from the git hooks/post-receive script.

js pushed a commit to annotated tag debian/0.2.5-1
in repository janus.

commit abbe56ac52e141c2c7b12749af8a3dc02c5daa4b
Author: Lorenzo Miniero <lminiero at gmail.com>
Date:   Thu Aug 31 16:53:53 2017 +0200

    Don't offer medium to VideoRoom subscribers if recvonly/inactive (fixes #985)
---
 plugins/janus_videoroom.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/plugins/janus_videoroom.c b/plugins/janus_videoroom.c
index ac4a27f..7a2f3c8 100644
--- a/plugins/janus_videoroom.c
+++ b/plugins/janus_videoroom.c
@@ -1209,9 +1209,9 @@ json_t *janus_videoroom_query_session(janus_plugin_session *handle) {
 				if(participant->listeners)
 					json_object_set_new(info, "viewers", json_integer(g_slist_length(participant->listeners)));
 				json_t *media = json_object();
-				json_object_set_new(media, "audio", json_integer(participant->audio));
-				json_object_set_new(media, "video", json_integer(participant->video));
-				json_object_set_new(media, "data", json_integer(participant->data));
+				json_object_set_new(media, "audio", participant->audio ? json_true() : json_false());
+				json_object_set_new(media, "video", participant->video ? json_true() : json_false());
+				json_object_set_new(media, "data", participant->data ? json_true() : json_false());
 				json_object_set_new(info, "media", media);
 				json_object_set_new(info, "bitrate", json_integer(participant->bitrate));
 				if(participant->ssrc[0] != 0)
@@ -4080,9 +4080,11 @@ static void *janus_videoroom_handler(void *data) {
 				while(temp) {
 					/* Which media are available? */
 					janus_sdp_mline *m = (janus_sdp_mline *)temp->data;
-					if(m->type == JANUS_SDP_AUDIO && m->port > 0) {
+					if(m->type == JANUS_SDP_AUDIO && m->port > 0 &&
+							m->direction != JANUS_SDP_RECVONLY && m->direction != JANUS_SDP_INACTIVE) {
 						participant->audio = TRUE;
-					} else if(m->type == JANUS_SDP_VIDEO && m->port > 0) {
+					} else if(m->type == JANUS_SDP_VIDEO && m->port > 0 &&
+							m->direction != JANUS_SDP_RECVONLY && m->direction != JANUS_SDP_INACTIVE) {
 						participant->video = TRUE;
 					} else if(m->type == JANUS_SDP_APPLICATION && m->port > 0) {
 						participant->data = TRUE;
@@ -4135,9 +4137,9 @@ static void *janus_videoroom_handler(void *data) {
 				temp = answer->m_lines;
 				while(temp) {
 					janus_sdp_mline *m = (janus_sdp_mline *)temp->data;
-					if(m->type == JANUS_SDP_AUDIO && m->port > 0) {
+					if(m->type == JANUS_SDP_AUDIO && m->port > 0 && m->direction != JANUS_SDP_INACTIVE) {
 						participant->audio = TRUE;
-					} else if(m->type == JANUS_SDP_VIDEO && m->port > 0) {
+					} else if(m->type == JANUS_SDP_VIDEO && m->port > 0 && m->direction != JANUS_SDP_INACTIVE) {
 						participant->video = TRUE;
 					} else if(m->type == JANUS_SDP_APPLICATION && m->port > 0) {
 						participant->data = TRUE;

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-voip/janus.git



More information about the Pkg-voip-commits mailing list