public static class RTCPExtendedReport.VoIPMetricsReportBlock extends RTCPExtendedReport.ReportBlock
Modifier and Type | Field and Description |
---|---|
static byte |
ADAPTIVE_JITTER_BUFFER_ADAPTIVE
The jitter buffer size is being dynamically adjusted to deal with
varying levels of jitter.
|
static byte |
DISABLED_PACKET_LOSS_CONCEALMENT
Silence is being inserted in place of lost packets.
|
static byte |
ENHANCED_PACKET_LOSS_CONCEALMENT
An enhanced interpolation algorithm is being used; algorithms of this
type are able to conceal high packet loss rates effectively.
|
static byte |
NON_ADAPTIVE_JITTER_BUFFER_ADAPTIVE
The jitter buffer size is maintained at a fixed level.
|
static byte |
RESERVED_JITTER_BUFFER_ADAPTIVE |
static java.lang.String |
SDP_PARAMETER |
static byte |
STANDARD_PACKET_LOSS_CONCEALMENT
A simple replay or interpolation algorithm is being used to fill-in
the missing packet; this approach is typically able to conceal
isolated lost packets at low packet loss rates.
|
static byte |
UNKNOWN_JITTER_BUFFER_ADAPTIVE |
static byte |
UNSPECIFIED_PACKET_LOSS_CONCEALMENT
No information is available concerning the use of packet loss
concealment (PLC); however, for some codecs this may be inferred.
|
static short |
VOIP_METRICS_REPORT_BLOCK_TYPE |
blockType
Constructor and Description |
---|
VoIPMetricsReportBlock()
Initializes a new VoIPMetricsReportBlock instance.
|
VoIPMetricsReportBlock(int blockLength,
java.io.DataInputStream datainputstream)
Initializes a new VoIPMetricsReportBlock instance by
deserializing/reading a binary representation from a
DataInputStream.
|
Modifier and Type | Method and Description |
---|---|
protected void |
assemble(java.io.DataOutputStream dataoutputstream)
Serializes/writes the binary representation of this
ReportBlock into a specific DataOutputStream.
|
int |
calcLength()
Computes the length in bytes of this ReportBlock,
including the header and any padding.
|
short |
getBurstDensity()
Gets the fraction of RTP data packets within burst periods since the
beginning of reception that were either lost or discarded.
|
int |
getBurstDuration() |
short |
getDiscardRate()
Gets the fraction of RTP data packets from the source that have been
discarded since the beginning of reception, due to late or early
arrival, under-run or overflow at the receiving jitter buffer.
|
int |
getEndSystemDelay() |
byte |
getExtRFactor() |
short |
getGapDensity()
Get the fraction of RTP data packets within inter-burst gaps since
the beginning of reception that were either lost or discarded.
|
int |
getGapDuration() |
short |
getGMin() |
int |
getJitterBufferAbsoluteMaximumDelay() |
byte |
getJitterBufferAdaptive()
Gets whether the jitter buffer is adaptive.
|
int |
getJitterBufferMaximumDelay() |
int |
getJitterBufferNominalDelay() |
byte |
getJitterBufferRate()
Gets the implementation specific adjustment rate of a jitter buffer
in adaptive mode.
|
short |
getLossRate()
Gets the fraction of RTP data packets from the source lost since the
beginning of reception.
|
byte |
getMosCq() |
byte |
getMosLq() |
byte |
getNoiseLevel() |
byte |
getPacketLossConcealment()
Gets the type of packet loss concealment (PLC).
|
byte |
getResidualEchoReturnLoss() |
byte |
getRFactor() |
int |
getRoundTripDelay() |
byte |
getSignalLevel() |
int |
getSourceSSRC()
Gets the synchronization source identifier (SSRC) of the RTP data
packet source being reported upon by this report block.
|
void |
setBurstDensity(short burstDensity)
Sets the fraction of RTP data packets within burst periods since the
beginning of reception that were either lost or discarded.
|
void |
setBurstDuration(int burstDuration) |
void |
setDiscardRate(short discardRate)
Sets the fraction of RTP data packets from the source that have been
discarded since the beginning of reception, due to late or early
arrival, under-run or overflow at the receiving jitter buffer.
|
void |
setEndSystemDelay(int endSystemDelay) |
void |
setExtRFactor(byte extRFactor) |
void |
setGapDensity(short gapDensity)
Sets the fraction of RTP data packets within inter-burst gaps since
the beginning of reception that were either lost or discarded.
|
void |
setGapDuration(int gapDuration) |
void |
setGMin(short gMin) |
void |
setJitterBufferAbsoluteMaximumDelay(int jitterBufferAbsoluteMaximumDelay) |
void |
setJitterBufferAdaptive(byte jitterBufferAdaptive)
Sets whether the jitter buffer is adaptive.
|
void |
setJitterBufferMaximumDelay(int jitterBufferMaximumDelay) |
void |
setJitterBufferNominalDelay(int jitterBufferNominalDelay) |
void |
setJitterBufferRate(byte jitterBufferRate)
Sets the implementation specific adjustment rate of a jitter buffer
in adaptive mode.
|
void |
setLossRate(short lossRate)
Sets the fraction of RTP data packets from the source lost since the
beginning of reception.
|
void |
setMosCq(byte mosCq) |
void |
setMosLq(byte mosLq) |
void |
setNoiseLevel(byte noiseLevel) |
void |
setPacketLossConcealment(byte packetLossConcealment)
Sets the type of packet loss concealment (PLC).
|
void |
setResidualEchoReturnLoss(byte residualEchoReturnLoss) |
void |
setRFactor(byte rFactor) |
void |
setRoundTripDelay(int roundTripDelay) |
void |
setSignalLevel(byte signalLevel) |
void |
setSourceSSRC(int sourceSSRC)
Sets the synchronization source identifier (SSRC) of the RTP data
packet source being reported upon by this report block.
|
java.lang.String |
toString() |
public static final byte ADAPTIVE_JITTER_BUFFER_ADAPTIVE
public static final byte DISABLED_PACKET_LOSS_CONCEALMENT
public static final byte ENHANCED_PACKET_LOSS_CONCEALMENT
public static final byte NON_ADAPTIVE_JITTER_BUFFER_ADAPTIVE
public static final byte RESERVED_JITTER_BUFFER_ADAPTIVE
public static final java.lang.String SDP_PARAMETER
public static final byte STANDARD_PACKET_LOSS_CONCEALMENT
public static final byte UNKNOWN_JITTER_BUFFER_ADAPTIVE
public static final byte UNSPECIFIED_PACKET_LOSS_CONCEALMENT
public static final short VOIP_METRICS_REPORT_BLOCK_TYPE
public VoIPMetricsReportBlock()
public VoIPMetricsReportBlock(int blockLength, java.io.DataInputStream datainputstream) throws java.io.IOException
blockLength
- the length of the extended report block to read,
not including the header, in bytes.datainputstream
- the binary representation from which the new
instance is to be initialized. The datainputstream is asumed
to contain type-specific block contents without extended report block
header i.e. no block type (BT), type-specific, and block length
fields will be read from datainputstream.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
VoIPMetricsReportBlock instanceprotected void assemble(java.io.DataOutputStream dataoutputstream) throws java.io.IOException
assemble
in class RTCPExtendedReport.ReportBlock
dataoutputstream
- the DataOutputStream into which the
binary representation of this ReportBlock is to be
serialized/written.java.io.IOException
- if an input/output error occurs during the
serialization/writing of the binary representation of this
ReportBlockpublic int calcLength()
The implementation of ReportBlock returns the length in bytes of the header of an extended report block i.e. 4. The implementation is provided as a convenience because RFC 3611 defines that the type-specific block contents of an extended report block may be zero bits long if the block type definition permits.
As defined by RFC 3611, a VoIP Metrics Report Block has a length in bytes equal to 36, including the extended report block header.calcLength
in class RTCPExtendedReport.ReportBlock
public short getBurstDensity()
public int getBurstDuration()
public short getDiscardRate()
discardRate
public int getEndSystemDelay()
public byte getExtRFactor()
public short getGapDensity()
public int getGapDuration()
public short getGMin()
public int getJitterBufferAbsoluteMaximumDelay()
public byte getJitterBufferAdaptive()
public int getJitterBufferMaximumDelay()
public int getJitterBufferNominalDelay()
public byte getJitterBufferRate()
public short getLossRate()
lossRate
public byte getMosCq()
public byte getMosLq()
public byte getNoiseLevel()
public byte getPacketLossConcealment()
public byte getResidualEchoReturnLoss()
public byte getRFactor()
public int getRoundTripDelay()
public byte getSignalLevel()
public int getSourceSSRC()
public void setBurstDensity(short burstDensity)
burstDensity
- the fraction of RTP data packets within burst
periods since the beginning of reception that were either lost or
discardedpublic void setBurstDuration(int burstDuration)
public void setDiscardRate(short discardRate)
discardRate
- the fraction of RTP data packets from the source
that have been discarded since the beginning of reception, due to
late or early arrival, under-run or overflow at the receiving jitter
bufferdiscardRate
public void setEndSystemDelay(int endSystemDelay)
public void setExtRFactor(byte extRFactor)
public void setGapDensity(short gapDensity)
gapDensity
- the fraction of RTP data packets within inter-burst
gaps since the beginning of reception that were either lost or
discardedpublic void setGapDuration(int gapDuration)
public void setGMin(short gMin)
public void setJitterBufferAbsoluteMaximumDelay(int jitterBufferAbsoluteMaximumDelay)
public void setJitterBufferAdaptive(byte jitterBufferAdaptive)
jitterBufferAdaptive
- ADAPTIVE_JITTER_BUFFER_ADAPTIVE
,
NON_ADAPTIVE_JITTER_BUFFER_ADAPTIVE
,
RESERVED_JITTER_BUFFER_ADAPTIVE
, or
UNKNOWN_JITTER_BUFFER_ADAPTIVE
java.lang.IllegalArgumentException
- if the specified
jitterBufferAdapter is not one of the constants
ADAPTIVE_JITTER_BUFFER_ADAPTIVE,
NON_ADAPTIVE_JITTER_BUFFER_ADAPTIVE,
RESERVED_JITTER_BUFFER_ADAPTIVE, and
UNKNOWN_JITTER_BUFFER_ADAPTIVEpublic void setJitterBufferMaximumDelay(int jitterBufferMaximumDelay)
public void setJitterBufferNominalDelay(int jitterBufferNominalDelay)
public void setJitterBufferRate(byte jitterBufferRate)
jitterBufferRate
- the implementation specific adjustment rate
of a jitter buffer in adaptive modepublic void setLossRate(short lossRate)
lossRate
- the fraction of RTP data packets from the source lost
since the beginning of receptionlossRate
public void setMosCq(byte mosCq)
public void setMosLq(byte mosLq)
public void setNoiseLevel(byte noiseLevel)
public void setPacketLossConcealment(byte packetLossConcealment)
packetLossConcealment
- STANDARD_PACKET_LOSS_CONCEALMENT
,
ENHANCED_PACKET_LOSS_CONCEALMENT
,
DISABLED_PACKET_LOSS_CONCEALMENT
, or
UNSPECIFIED_PACKET_LOSS_CONCEALMENT
java.lang.IllegalArgumentException
- if the specified
packetLossConcealment is not one of the constants
STANDARD_PACKET_LOSS_CONCEALMENT,
ENHANCED_PACKET_LOSS_CONCEALMENT,
DISABLED_PACKET_LOSS_CONCEALMENT, and
UNSPECIFIED_PACKET_LOSS_CONCEALMENTpublic void setResidualEchoReturnLoss(byte residualEchoReturnLoss)
public void setRFactor(byte rFactor)
public void setRoundTripDelay(int roundTripDelay)
public void setSignalLevel(byte signalLevel)
public void setSourceSSRC(int sourceSSRC)
sourceSSRC
- the synchronization source identifier (SSRC) of the
RTP data packet source being reported upon by this report blockpublic java.lang.String toString()
toString
in class java.lang.Object
Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under Apache license.