public class RTCPExtendedReport
extends net.sf.fmj.media.rtp.RTCPPacket
Modifier and Type | Class and Description |
---|---|
static class |
RTCPExtendedReport.ReportBlock
Represents an abstract, base extended report block.
|
static class |
RTCPExtendedReport.VoIPMetricsReportBlock
Implements "VoIP Metrics Report Block" i.e.
|
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
SDP_ATTRIBUTE |
static int |
XR
The packet type (PT) constant 207 which identifies RTCP XR
packets.
|
Constructor and Description |
---|
RTCPExtendedReport()
Initializes a new RTCPExtendedReport instance.
|
RTCPExtendedReport(byte[] buf,
int off,
int len)
Initializes a new RTCPExtendedReport instance by
deserializing/reading a binary representation from a byte array.
|
RTCPExtendedReport(java.io.DataInputStream datainputstream)
Initializes a new RTCPExtendedReport instance by
deserializing/reading a binary representation from a
DataInputStream.
|
RTCPExtendedReport(int b0,
int pt,
int length,
java.io.DataInputStream datainputstream)
Initializes a new RTCPExtendedReport instance by
deserializing/reading a binary representation of part of the packet from
a DataInputStream, and taking the values found in the
first 4 bytes of the binary representation as arguments.
|
Modifier and Type | Method and Description |
---|---|
boolean |
addReportBlock(RTCPExtendedReport.ReportBlock reportBlock)
Adds an extended report block to this extended report.
|
void |
assemble(java.io.DataOutputStream dataoutputstream) |
int |
calcLength() |
int |
getReportBlockCount()
Gets the number of the extended report blocks carried by this
RTCPExtendedReport.
|
java.util.List<RTCPExtendedReport.ReportBlock> |
getReportBlocks()
Gets a list of the extended report blocks carried by this
RTCPExtendedReport.
|
int |
getSSRC()
Gets the synchronization source identifier (SSRC) of the originator of
this XR packet.
|
long |
getSystemTimeStamp()
Gets the System time in milliseconds at which this
RTCPExtendedReport has been received or sent by the local
endpoint.
|
boolean |
removeReportBlock(RTCPExtendedReport.ReportBlock reportBlock)
Removes an extended report block from this extended report.
|
void |
setSSRC(int ssrc)
Sets the synchronization source identifier (SSRC) of the originator of
this XR packet.
|
void |
setSystemTimeStamp(long systemTimeStamp)
Sets the System time in milliseconds at which this
RTCPExtendedReport has been received or sent by the local
endpoint.
|
java.lang.String |
toString() |
public static final java.lang.String SDP_ATTRIBUTE
public static final int XR
public RTCPExtendedReport()
public RTCPExtendedReport(byte[] buf, int off, int len) throws java.io.IOException
buf
- the binary representation from which the new instance is to be
initializedoff
- the offset in buf at which the binary representation
startslen
- the number of bytes in buf starting at
off which comprise the binary representationjava.io.IOException
- if an input/output error occurs while
deserializing/reading the new instance from buf or the binary
representation does not parse into an RTCPExtendedReport
instancepublic RTCPExtendedReport(java.io.DataInputStream datainputstream) throws java.io.IOException
datainputstream
- the binary representation from which the new
instance is to be initialized.java.io.IOException
- if an input/output error occurs while
deserializing/reading the new instance from datainputstream or
the binary representation does not parse into an
RTCPExtendedReport instance.public RTCPExtendedReport(int b0, int pt, int length, java.io.DataInputStream datainputstream) throws java.io.IOException
b0
- the first byte of the binary representation.pt
- the value of the packet type
field.length
- the value of the length
field.datainputstream
- the binary representation from which the new
instance is to be initialized, excluding the first 4 bytes.java.io.IOException
- if an input/output error occurs while
deserializing/reading the new instance from datainputstream or
the binary representation does not parse into an
RTCPExtendedReport instance.public boolean addReportBlock(RTCPExtendedReport.ReportBlock reportBlock)
reportBlock
- the extended report block to add to this extended
reportjava.lang.NullPointerException
- if reportBlock is nullpublic void assemble(java.io.DataOutputStream dataoutputstream) throws java.io.IOException
assemble
in class net.sf.fmj.media.rtp.RTCPPacket
java.io.IOException
public int calcLength()
calcLength
in class net.sf.fmj.media.rtp.RTCPPacket
public int getReportBlockCount()
public java.util.List<RTCPExtendedReport.ReportBlock> getReportBlocks()
public int getSSRC()
public long getSystemTimeStamp()
public boolean removeReportBlock(RTCPExtendedReport.ReportBlock reportBlock)
reportBlock
- the extended report block to remove from this extended
reportpublic void setSSRC(int ssrc)
ssrc
- the synchronization source identifier (SSRC) of the
originator of this XR packetpublic void setSystemTimeStamp(long systemTimeStamp)
systemTimeStamp
- the System time in milliseconds at which
this RTCPExtendedReport has been received or sent by the local
endpointpublic java.lang.String toString()
toString
in class net.sf.fmj.media.rtp.util.Packet
Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under Apache license.