class RtcpTransmitter

Class to transmit RTCP packets

Public Methods

int addAPP(RtcpPacket* packet, int newpadbyeSize = 0)
future: not implemented
int addBYE(RtcpPacket* packet, char* reason = NULL, int npadSize = 0)
Adds BYE packet using transmitter's SRC numbers
int addBYE(RtcpPacket* packet, RtpSrc* list, int count, char* reason = NULL, int npadSize = 0)
Adds BYE packet using specified list of SRC numbers
int addSDES(RtcpPacket* packet, RtcpSDESType item, int npadSize = 0)
Adds specificed SDES item to compound packet
int addSDES(RtcpPacket* packet, RtcpSDESType* SDESlist, int npadSize = 0)
Adds specificed SDES items in SDESlist, which ends with RTCP_SDES_END
int addSDES(RtcpPacket* packet, int npadSize = 0)
Adds all known SDES items to compound packet
int addSR(RtcpPacket* packet, int npadSize = 0)
Adds SR packet into compound packet
u_int32_t calcLostCount(RtpTranInfo* source)
Used for calculating RR information
u_int32_t calcLostFrac(RtpTranInfo* source)
Used for calculating RR information
int checkInterval()
Check if time to send RTCP packet. Returns 1 then time up
void constructRtcpTransmitter()
consturctor init (don't call this function)
int getPort()
Port this tramsitter is sending it singal
NetworkAddress* getRemoteAddr()
char* getSdesCname()
char* getSdesEmail()
char* getSdesLoc()
char* getSdesName()
char* getSdesNote()
char* getSdesPhone()
char* getSdesTool()
int getSocketFD()
Socket File Descriptor used for select()
UdpStack* getUdpStack()
get the ptr of my UdpStack
RtcpTransmitter(const char* remoteHost, int remoteMinPort, int remoteMaxPort, RtcpReceiver* receiver)
Constructor creating outgoing RTCP stack using port ranges
RtcpTransmitter(const char* remoteHost, int remotePort, RtcpReceiver* receiver)
Constructor creating outgoing RTCP stack using specified port
void setRemoteAddr(const NetworkAddress& theAddr)
void setRTCPrecv(RtcpReceiver* rtcpRecv)
Sets RTCP receiver if one is used
void setRTPrecv(RtpReceiver* recv)
Sets RTCP transmitter if one is used
void setRTPtran(RtpTransmitter* tran)
Sets RTP transmitter if one is used
void setSdesCname()
void setSdesEmail(char* text)
void setSdesLoc(char* text)
void setSdesName(char* text)
void setSdesNote(char* text)
void setSdesPhone(char* text)
void setSdesTool(char* text)
int transmit(RtcpPacket* packet)
Transmits RTCP packet to remoteHost/port
void updateInterval()
set timer to next interval
~RtcpTransmitter()
Deconstructor

Private Fields

bool freeStack
UdpStack* myStack
my UDP stack
NtpTime nextInterval
Next time to submit RTCP packet
RtpReceiver* recv
static const int RTCP_INTERVAL
Transmission interval in ms
RtcpReceiver* rtcpRecv
SDESdata* SDESInfo
Transmitter SDES information data stored as null-term strings
RtpTransmitter* tran

Documentation

Class to transmit RTCP packets
RtcpTransmitter(const char* remoteHost, int remoteMinPort, int remoteMaxPort, RtcpReceiver* receiver)
Constructor creating outgoing RTCP stack using port ranges
Parameters:
remoteHost - DNS name receiving the packets
port - associated port

RtcpTransmitter(const char* remoteHost, int remotePort, RtcpReceiver* receiver)
Constructor creating outgoing RTCP stack using specified port
Parameters:
remoteHost - DNS name receiving the packets
port - associated port

void constructRtcpTransmitter()
consturctor init (don't call this function)

~RtcpTransmitter()
Deconstructor

int transmit(RtcpPacket* packet)
Transmits RTCP packet to remoteHost/port. Doesn't remove packet from memory. Returns -1 failure or number of bytes sent on success

void updateInterval()
set timer to next interval

int checkInterval()
Check if time to send RTCP packet. Returns 1 then time up

int addSR(RtcpPacket* packet, int npadSize = 0)
Adds SR packet into compound packet

int addSDES(RtcpPacket* packet, RtcpSDESType item, int npadSize = 0)
Adds specificed SDES item to compound packet

int addSDES(RtcpPacket* packet, int npadSize = 0)
Adds all known SDES items to compound packet

int addSDES(RtcpPacket* packet, RtcpSDESType* SDESlist, int npadSize = 0)
Adds specificed SDES items in SDESlist, which ends with RTCP_SDES_END

int addBYE(RtcpPacket* packet, char* reason = NULL, int npadSize = 0)
Adds BYE packet using transmitter's SRC numbers
Parameters:
reason - optional text, null-term

int addBYE(RtcpPacket* packet, RtpSrc* list, int count, char* reason = NULL, int npadSize = 0)
Adds BYE packet using specified list of SRC numbers
Parameters:
reason - optional text, null-term
count - number of items in list

int addAPP(RtcpPacket* packet, int newpadbyeSize = 0)
future: not implemented

u_int32_t calcLostFrac(RtpTranInfo* source)
Used for calculating RR information

u_int32_t calcLostCount(RtpTranInfo* source)
Used for calculating RR information

void setSdesCname()

void setSdesName(char* text)

void setSdesEmail(char* text)

void setSdesPhone(char* text)

void setSdesLoc(char* text)

void setSdesTool(char* text)

void setSdesNote(char* text)

char* getSdesCname()

char* getSdesName()

char* getSdesEmail()

char* getSdesPhone()

char* getSdesLoc()

char* getSdesTool()

char* getSdesNote()

void setRTPtran(RtpTransmitter* tran)
Sets RTP transmitter if one is used

void setRTPrecv(RtpReceiver* recv)
Sets RTCP transmitter if one is used

void setRTCPrecv(RtcpReceiver* rtcpRecv)
Sets RTCP receiver if one is used

int getPort()
Port this tramsitter is sending it singal

int getSocketFD()
Socket File Descriptor used for select()

UdpStack* getUdpStack()
get the ptr of my UdpStack

NetworkAddress* getRemoteAddr()

void setRemoteAddr(const NetworkAddress& theAddr)

NtpTime nextInterval
Next time to submit RTCP packet

static const int RTCP_INTERVAL
Transmission interval in ms

SDESdata* SDESInfo
Transmitter SDES information data stored as null-term strings

RtpTransmitter* tran

RtpReceiver* recv

RtcpReceiver* rtcpRecv

UdpStack* myStack
my UDP stack

bool freeStack


This class has no child classes.

alphabetic index hierarchy of classes


generated by doc++