public class Participant
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected long |
addedByApp
UNIX time this participant was added by application, to check whether we ever heard back
|
protected java.lang.String |
cname
SDES CNAME
|
protected java.lang.String |
email
SDES The participant's email
|
protected int |
firstSeqNumber
RR First sequence number
|
protected double |
interArrivalJitter
RR Interarrival jitter
|
protected long |
lastNtpTs1
Last NTP received in SR packet, MSB
|
protected long |
lastNtpTs2
Last NTP received in SR packet, LSB
|
protected long |
lastRtcpPkt
UNIX time of last RTCP packet, to check whether this participant has sent anything recently
|
protected long |
lastRtcpRRPkt
UNIX time of last time we sent an RR to this user
|
protected long |
lastRtpPkt
UNIX time of last RTP packet, to check whether this participant has sent anything recently
|
protected long |
lastRtpTimestamp
RR Last received RTP Timestamp
|
protected int |
lastSeqNumber
RR Last sequence number
|
protected int |
lastSRRseqNumber
RR Sequence number associated with last SR
|
protected long |
lastSRRtpTs
RTP Timestamp in last SR packet
|
protected java.lang.String |
loc
SDES The participant's location
|
protected java.lang.String |
name
SDES The participant's real name
|
protected java.lang.String |
note
SDES A note
|
protected double |
ntpGradient
Gradient where UNIX timestamp = ntpGradient*RTPTimestamp * ntpOffset
|
protected long |
ntpOffset
Offset where UNIX timestamp = ntpGradient*RTPTimestamp * ntpOffset
|
protected java.lang.String |
phone
SDES The participant's phone number
|
protected PktBuffer |
pktBuffer
Store the packets received from this participant
|
protected java.lang.String |
priv
SDES A priv string, loosely defined
|
protected long |
receivedOctets
RR Number of octets received
|
protected long |
receivedPkts
RR Number of packets received
|
protected int |
receivedSinceLastSR
RR Number of packets received since last SR
|
protected java.net.InetSocketAddress |
rtcpAddress
Where to send RTCP packets (unicast)
|
protected java.net.InetSocketAddress |
rtcpReceivedFromAddress
Where the first RTCP packet was received from
|
protected java.net.InetSocketAddress |
rtpAddress
Where to send RTP packets (unicast)
|
protected java.net.InetSocketAddress |
rtpReceivedFromAddress
Where the first RTP packet was received from
|
protected long |
secondLastRtcpRRPkt
Unix time of second to last time we sent and RR to this user
|
protected long |
seqRollOverCount
RR Number of times sequence number has rolled over
|
protected long |
ssrc
SSRC of participant
|
protected long |
timeReceivedLSR
RR The time when we actually got the last SR
|
protected long |
timestampBYE
UNIX time when a BYE was received from this participant, for pruning
|
protected long |
timeStampLSR
RR Middle 32 bits of the NTP timestamp in the last SR
|
protected java.lang.String |
tool
SDES The tool the participants is using
|
protected boolean |
unexpected
Whether the participant is unexpected, e.g.
|
Modifier | Constructor and Description |
---|---|
protected |
Participant() |
protected |
Participant(java.net.InetSocketAddress rtpAdr,
java.net.InetSocketAddress rtcpAdr,
long SSRC) |
|
Participant(java.lang.String networkAddress,
int rtpPort,
int rtcpPort)
Create a basic participant.
|
Modifier and Type | Method and Description |
---|---|
void |
debugPrint()
Only for debugging purposes
|
protected long |
delaySinceLastSR()
Calculate the delay between the last received sender report
and now.
|
java.lang.String |
getCNAME()
CNAME registered for this participant.
|
java.lang.String |
getEmail()
EMAIL registered for this participant.
|
protected long |
getExtHighSeqRecv()
Calculates the extended highest sequence received by adding
the last sequence number to 65536 times the number of times
the sequence counter has rolled over.
|
protected int |
getFractionLost()
Get the fraction of lost packets, calculated as described
in RFC 3550 as a fraction of 256.
|
protected double |
getInterArrivalJitter() |
java.lang.String |
getLocation()
LOCATION registered for this participant.
|
protected long |
getLostPktCount()
The total number of packets lost during the session.
|
java.lang.String |
getNAME()
NAME registered for this participant.
|
java.lang.String |
getNote()
NOTE registered for this participant.
|
java.lang.String |
getPhone()
PHONE registered for this participant.
|
java.lang.String |
getPriv()
PRIVATE something registered for this participant.
|
long |
getSSRC()
SSRC for participant, determined through RTCP SDES
|
java.lang.String |
getTool()
TOOL something registered for this participant.
|
protected void |
setTimeStampLSR(long ntp1,
long ntp2)
Set the timestamp for last sender report
|
protected void |
updateRRStats(int packetLength,
RtpPkt pkt)
Updates the participant with information for receiver reports.
|
protected boolean unexpected
protected java.net.InetSocketAddress rtpAddress
protected java.net.InetSocketAddress rtcpAddress
protected java.net.InetSocketAddress rtpReceivedFromAddress
protected java.net.InetSocketAddress rtcpReceivedFromAddress
protected long ssrc
protected java.lang.String cname
protected java.lang.String name
protected java.lang.String email
protected java.lang.String phone
protected java.lang.String loc
protected java.lang.String tool
protected java.lang.String note
protected java.lang.String priv
protected int firstSeqNumber
protected int lastSeqNumber
protected long seqRollOverCount
protected long receivedPkts
protected long receivedOctets
protected int receivedSinceLastSR
protected int lastSRRseqNumber
protected double interArrivalJitter
protected long lastRtpTimestamp
protected long timeStampLSR
protected long timeReceivedLSR
protected double ntpGradient
protected long ntpOffset
protected long lastNtpTs1
protected long lastNtpTs2
protected long lastSRRtpTs
protected long timestampBYE
protected PktBuffer pktBuffer
protected long lastRtpPkt
protected long lastRtcpPkt
protected long addedByApp
protected long lastRtcpRRPkt
protected long secondLastRtcpRRPkt
public Participant(java.lang.String networkAddress, int rtpPort, int rtcpPort)
networkAddress
- string representation of network address (ipv4 or ipv6). Use "127.0.0.1" for multicast session.rtpPort
- port on which peer expects RTP packets. Use 0 if this is a sender-only, or this is a multicast session.rtcpPort
- port on which peer expects RTCP packets. Use 0 if this is a sender-only, or this is a multicast session.protected Participant(java.net.InetSocketAddress rtpAdr, java.net.InetSocketAddress rtcpAdr, long SSRC)
protected Participant()
public java.lang.String getCNAME()
public java.lang.String getNAME()
public java.lang.String getEmail()
public java.lang.String getPhone()
public java.lang.String getLocation()
public java.lang.String getNote()
public java.lang.String getPriv()
public java.lang.String getTool()
public long getSSRC()
protected void updateRRStats(int packetLength, RtpPkt pkt)
packetLength
- to keep track of received octetspkt
- the most recently received packetprotected long getExtHighSeqRecv()
protected int getFractionLost()
protected long getLostPktCount()
protected double getInterArrivalJitter()
protected void setTimeStampLSR(long ntp1, long ntp2)
ntp1
- high order bitsntp2
- low order bitsprotected long delaySinceLastSR()
public void debugPrint()