Initial implementation of simulcast routing in the bridge.

fix-message-formatting
George Politis 11 years ago
parent a12207caeb
commit 8f63f26ae3

@ -799,6 +799,17 @@ public static class Channel
*/
public static final String LAST_N_ATTR_NAME = "last-n";
/**
* The XML name of the <tt>receive-simulcast-layer</tt> attribute of a
* video <tt>Channel</tt> which specifies the target quality of the
* simulcast substreams to be sent from Jitsi Videobridge to the
* endpoint associated with the video <tt>Channel</tt>. The value of the
* <tt>receive-simulcast-layer</tt> attribute is an unsigned integer.
* Typically used for debugging purposes.
*/
public static final String RECEIVING_SIMULCAST_LAYER
= "receive-simulcast-layer";
/**
* The XML name of the <tt>rtcpport</tt> attribute of a <tt>channel</tt>
* of a <tt>content</tt> of a <tt>conference</tt> IQ which represents
@ -859,6 +870,13 @@ public static class Channel
*/
private Integer lastN;
/**
* The target quality of the simulcast substreams to be sent from Jitsi
* Videobridge to the endpoint associated with this video
* <tt>Channel</tt>.
*/
private Integer receivingSimulcastLayer;
/**
* The <tt>payload-type</tt> elements defined by XEP-0167: Jingle RTP
* Sessions associated with this <tt>channel</tt>.
@ -1062,6 +1080,20 @@ public Integer getLastN()
return lastN;
}
/**
* Gets the target quality of the simulcast substreams to be sent from
* Jitsi Videobridge to the endpoint associated with this video
* <tt>Channel</tt>.
*
* @return the target quality of the simulcast substreams to be sent
* from Jitsi Videobridge to the endpoint associated with this video
* <tt>Channel</tt>.
*/
public Integer getReceivingSimulcastLayer()
{
return receivingSimulcastLayer;
}
/**
* Gets a list of <tt>payload-type</tt> elements defined by XEP-0167:
* Jingle RTP Sessions added to this <tt>channel</tt>.
@ -1286,6 +1318,20 @@ public void setLastN(Integer lastN)
this.lastN = lastN;
}
/**
* Sets the target quality of the simulcast substreams to be sent from
* Jitsi Videobridge to the endpoint associated with this video
* <tt>Channel</tt>.
*
* @param simulcastLayer the target quality of the simulcast substreams
* to be sent from Jitsi Videobridge to the endpoint associated with
* this video <tt>Channel</tt>.
*/
public void setReceivingSimulcastLayer(Integer simulcastLayer)
{
this.receivingSimulcastLayer = simulcastLayer;
}
/**
* Sets the port which has been allocated to this <tt>channel</tt> for
* the purposes of transmitting RTCP packets.

@ -339,6 +339,18 @@ else if (ColibriConferenceIQ.Recording.ELEMENT_NAME.equals(
if ((lastN != null) && (lastN.length() != 0))
channel.setLastN(Integer.parseInt(lastN));
// receiving simulcast layer
String receivingSimulcastLayer
= parser.getAttributeValue(
"",
ColibriConferenceIQ.Channel
.RECEIVING_SIMULCAST_LAYER);
if ((receivingSimulcastLayer != null)
&& (receivingSimulcastLayer.length() != 0))
channel.setReceivingSimulcastLayer(
Integer.parseInt(receivingSimulcastLayer));
// rtcpPort
String rtcpPort
= parser.getAttributeValue(

Loading…
Cancel
Save