|
| | TRTPSessionBase (const InetHostAddress &ia, tpport_t dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication &app) |
| | Builds a session waiting for packets in a host address.
|
| | TRTPSessionBase (uint32 ssrc, const InetHostAddress &ia, tpport_t dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication &app) |
| | Builds a session with the specified ssrc identifier for the local source.
|
| | TRTPSessionBase (const InetMcastAddress &ia, tpport_t dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication &app, uint32 iface) |
| | Builds a session waiting for packets in a multicast address.
|
| | TRTPSessionBase (uint32 ssrc, const InetMcastAddress &ia, tpport_t dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication &app, uint32 iface) |
| | Builds a session waiting for packets in a multicast address, with the specified ssrc identifier for the local source.
|
| virtual size_t | dispatchBYE (const std::string &str) |
| Socket::Error | setMcastTTL (uint8 ttl) |
| | Set the value of the TTL field in the sent packets.
|
| virtual | ~TRTPSessionBase () |
| RTPDataChannel * | getDSO (void) |
| void | setControlBandwidth (float fraction) |
| | Specify the bandwith available for control (RTCP) packets.
|
| float | getControlBandwidth () const |
| RTCPSenderInfo * | getMRSenderInfo (SyncSource &src) |
| | Get the most recent sender report received from a synchronization source.
|
| RTCPReceiverInfo * | getMRReceiverInfo (SyncSource &srcFrom) |
| | Ask for the info in the most recent receiver report about the local source received from the source given as parameter.
|
| void | setLeavingDelay (microtimeout_t delay) |
| | Set how much time the stack will wait before deleting a synchronization source that has sent an RTCP BYE packet.
|
| void | setEnd2EndDelay (microtimeout_t t) |
| | This method sets the maximum end to end delay allowed.
|
| microtimeout_t | getDefaultEnd2EndDelay () const |
| microtimeout_t | getEnd2EndDelay () const |
| void | setSendersControlFraction (float fraction) |
| | Specify the fraction of the total control bandwith to be dedicated to senders reports.
|
| void | setMinRTCPInterval (microtimeout_t interval) |
| | Manually set the minimum interval for sending RTP compound packets.
|
| uint32 | getSendRTCPPacketCount () const |
| | Get the total number of RTCP packets sent until now.
|
| void | setOutQueueCryptoContextCtrl (CryptoContextCtrl *cc) |
| | Set output queue CryptoContext.
|
| void | removeOutQueueCryptoContextCtrl (CryptoContextCtrl *cc) |
| | Remove output queue CryptoContext.
|
| CryptoContextCtrl * | getOutQueueCryptoContextCtrl (uint32 ssrc) |
| | Get an output queue CryptoContext identified by SSRC.
|
| void | setInQueueCryptoContextCtrl (CryptoContextCtrl *cc) |
| | Set input queue CryptoContext.
|
| void | removeInQueueCryptoContextCtrl (CryptoContextCtrl *cc) |
| | Remove input queue CryptoContext.
|
| CryptoContextCtrl * | getInQueueCryptoContextCtrl (uint32 ssrc) |
| | Get an input queue CryptoContext identified by SSRC.
|
| void | setTypeOfService (Tos tos) |
| | Specify the kind of service the application expects to use.
|
| void | enableStack () |
| | Enable packet queue processing in the stack.
|
| void | disableStack () |
| | Disable packet queue processing in the stack.
|
| bool | isActive () const |
| | Get active connection state flag.
|
| uint32 | getCurrentTimestamp () const |
| | Get the timestamp that should be given for a packet whose payload sampling instant corresponds to the current system time.
|
| void | setSessionBandwidth (uint32 bw) |
| | Specify the bandwidth of the current session.
|
| uint32 | getDefaultSessionBandwidth () const |
| uint32 | getSessionBandwidth () const |
| void | setTimeclock () |
| | Set the packet timeclock for synchronizing timestamps.
|
| timeout_t | getTimeclock () const |
| | Get the packet timeclock for synchronizing timestamps.
|
| SyncSourcesIterator | begin () |
| SyncSourcesIterator | end () |
| const AppDataUnit * | getData (uint32 stamp, const SyncSource *src=NULL) |
| | Retreive data from a specific timestamped packet if such a packet is currently available in the receive buffer.
|
| bool | isWaiting (const SyncSource *src=NULL) const |
| | Determine if packets are waiting in the reception queue.
|
| uint32 | getFirstTimestamp (const SyncSource *src=NULL) const |
| | Get timestamp of first packet waiting in the queue.
|
| void | setMinValidPacketSequence (uint8 packets) |
| | When receiving packets from a new source, it may be convenient to reject a first few packets before we are really sure the source is valid.
|
| uint8 | getDefaultMinValidPacketSequence () const |
| uint8 | getMinValidPacketSequence () const |
| | Get the minimun number of consecutive packets that must be received from a source before accepting its data packets.
|
| void | setMaxPacketMisorder (uint16 packets) |
| uint16 | getDefaultMaxPacketMisorder () const |
| uint16 | getMaxPacketMisorder () const |
| void | setMaxPacketDropout (uint16 packets) |
| | It also prevents packets sent after a restart of the source being immediately accepted.
|
| uint16 | getDefaultMaxPacketDropout () const |
| uint16 | getMaxPacketDropout () const |
| void | setInQueueCryptoContext (CryptoContext *cc) |
| | Set input queue CryptoContext.
|
| void | removeInQueueCryptoContext (CryptoContext *cc) |
| | Remove input queue CryptoContext.
|
| CryptoContext * | getInQueueCryptoContext (uint32 ssrc) |
| | Get an input queue CryptoContext identified by SSRC.
|
| size_t | getDefaultMaxRecvPacketSize () const |
| size_t | getMaxRecvPacketSize () const |
| void | setMaxRecvPacketSize (size_t maxsize) |
| bool | setPayloadFormat (const PayloadFormat &pf) |
| | Set the payload format in use, for timing and payload type identification purposes.
|
| uint32 | getLocalSSRC () const |
| uint32 | getCurrentRTPClockRate () const |
| | Get the clock rate in RTP clock units (for instance, 8000 units per second for PCMU, or 90000 units per second for MP2T).
|
| PayloadType | getCurrentPayloadType () const |
| timeval | getInitialTime () const |
| bool | addDestination (const InetHostAddress &ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0) |
| bool | addDestination (const InetMcastAddress &ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0) |
| bool | forgetDestination (const InetHostAddress &ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0) |
| bool | forgetDestination (const InetMcastAddress &ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0) |
| void | addContributor (uint32 csrc) |
| | Add csrc as the CSRC identifier of a new contributor.
|
| bool | removeContributor (uint32 csrc) |
| | Remove CSRC from the list of contributors.
|
| bool | isSending () const |
| | Determine if outgoing packets are waiting to send.
|
| void | putData (uint32 stamp, const unsigned char *data=NULL, size_t len=0) |
| | This is used to create a data packet in the send queue.
|
| void | sendImmediate (uint32 stamp, const unsigned char *data=NULL, size_t len=0) |
| | This is used to create a data packet and send it immediately.
|
| void | setPadding (uint8 paddinglen) |
| | Set padding.
|
| void | setMark (bool mark) |
| | Set marker bit for the packet in which the next data provided will be send.
|
| bool | getMark () const |
| | Get whether the mark bit will be set in the next packet.
|
| size_t | setPartial (uint32 timestamp, unsigned char *data, size_t offset, size_t max) |
| | Set partial data for an already queued packet.
|
| microtimeout_t | getDefaultSchedulingTimeout () const |
| void | setSchedulingTimeout (microtimeout_t to) |
| | Set the default scheduling timeout to use when no data packets are waiting to be sent.
|
| microtimeout_t | getDefaultExpireTimeout () const |
| void | setExpireTimeout (microtimeout_t to) |
| | Set the "expired" timer for expiring packets pending in the send queue which have gone unsent and are already "too late" to be sent now.
|
| microtimeout_t | getExpireTimeout () const |
| uint32 | getSendPacketCount () const |
| | Get the total number of packets sent so far.
|
| uint32 | getSendOctetCount () const |
| | Get the total number of octets (payload only) sent so far.
|
| uint16 | getSequenceNumber () const |
| | Get the sequence number of the next outgoing packet.
|
| void | setOutQueueCryptoContext (CryptoContext *cc) |
| | Set output queue CryptoContext.
|
| void | removeOutQueueCryptoContext (CryptoContext *cc) |
| | Remove output queue CryptoContext.
|
| CryptoContext * | getOutQueueCryptoContext (uint32 ssrc) |
| | Get an output queue CryptoContext identified by SSRC.
|
| size_t | getDefaultMaxSendSegmentSize () |
| void | setMaxSendSegmentSize (size_t size) |
| | Set maximum payload segment size before fragmenting sends.
|
| size_t | getMaxSendSegmentSize () |
|
| bool | isPendingData (microtimeout_t timeout) |
| InetHostAddress | getDataSender (tpport_t *port=NULL) const |
| size_t | getNextDataPacketSize () const |
| size_t | recvData (unsigned char *buffer, size_t len, InetHostAddress &na, tpport_t &tp) |
| | Receive data from the data channel/socket.
|
| void | setDataPeer (const InetAddress &host, tpport_t port) |
| size_t | sendData (const unsigned char *const buffer, size_t len) |
| SOCKET | getDataRecvSocket () const |
| bool | isPendingControl (microtimeout_t timeout) |
| InetHostAddress | getControlSender (tpport_t *port=NULL) const |
| size_t | recvControl (unsigned char *buffer, size_t len, InetHostAddress &na, tpport_t &tp) |
| | Receive data from the control channel/socket.
|
| void | setControlPeer (const InetAddress &host, tpport_t port) |
| size_t | sendControl (const unsigned char *const buffer, size_t len) |
| SOCKET | getControlRecvSocket () const |
| Socket::Error | joinGroup (const InetMcastAddress &ia, uint32 iface) |
| | Join a multicast group.
|
| Socket::Error | leaveGroup (const InetMcastAddress &ia) |
| | Leave a multicast group.
|
| void | endSocket () |
| | AVPQueue (uint32 size=RTPDataQueue::defaultMembersHashSize, RTPApplication &app=defaultApplication()) |
| | AVPQueue (uint32 ssrc, uint32 size=RTPDataQueue::defaultMembersHashSize, RTPApplication &app=defaultApplication()) |
| | Local SSRC is given instead of computed by the queue.
|
| virtual | ~AVPQueue () |
| | QueueRTCPManager (uint32 size=RTPDataQueue::defaultMembersHashSize, RTPApplication &app=defaultApplication()) |
| | QueueRTCPManager (uint32 ssrc, uint32 size=RTPDataQueue::defaultMembersHashSize, RTPApplication &app=defaultApplication()) |
| virtual | ~QueueRTCPManager () |
| const RTPApplication & | getApplication () |
| void | setControlBandwidth (float fraction) |
| float | getControlBandwidth () const |
| void | controlTransmissionService () |
| | Build and send RTCP packets following timing rules (including the "timer reconsideration" algorithm).
|
| void | controlReceptionService () |
| | Process incoming RTCP packets pending in the control reception socket.
|
| bool | checkSSRCInRTCPPkt (SyncSourceLink &sourceLink, bool is_new, InetAddress &na, tpport_t tp) |
| | Appy collision and loop detection and correction algorithm when receiving RTCP packets.
|
| void | endQueueRTCPManager () |
| virtual void | onGotSR (SyncSource &source, SendReport &SR, uint8 blocks) |
| | Plug-in for processing (acquire information carried in) an incoming RTCP Sender Report.
|
| virtual void | onGotRR (SyncSource &source, RecvReport &RR, uint8 blocks) |
| | Plug-in for processing (acquire information carried in) an incoming RTCP Receiver Report.
|
| bool | onGotSDES (SyncSource &source, RTCPPacket &pkt) |
| virtual bool | onGotSDESChunk (SyncSource &source, SDESChunk &chunk, size_t len) |
| | Plug-in for handling of SDES chunks.
|
| virtual void | onGotAPP (SyncSource &, RTCPCompoundHandler::APPPacket &, size_t) |
| | Plug-in for handling of APP (application specific) RTCP packets.
|
| timeval | getRTCPCheckInterval () |
| uint32 | getLastSendPacketCount () const |
| | Get the number of data packets sent at the time the last SR was generated.
|
| void | setPrevMembersNum (uint32 n) |
| uint32 | getPrevMembersCount () const |
| size_t | sendControlToDestinations (unsigned char *buffer, size_t len) |
| | RTPDataQueue (uint32 size=defaultMembersHashSize) |
| | Constructor.
|
| | RTPDataQueue (uint32 *ssrc, uint32 size=defaultMembersHashSize) |
| | Using this constructor you can start a session with the given ssrc, instead of the usual randomly generated one.
|
| virtual | ~RTPDataQueue () |
| | The queue destructor flushes the queue and stops all services.
|
| virtual void | timerTick () |
| | A plugin point for timer tick driven events.
|
| void | renewLocalSSRC () |
| void | endQueue () |
| | This method ends the queue.
|
| | IncomingDataQueue (uint32 size) |
| virtual | ~IncomingDataQueue () |
| bool | checkSSRCInIncomingRTPPkt (SyncSourceLink &sourceLink, bool is_new, InetAddress &na, tpport_t tp) |
| | Apply collision and loop detection and correction algorithm when receiving RTP data packets.
|
| void | setSourceExpirationPeriod (uint8 intervals) |
| | Set the number of RTCP intervals that the stack will wait to change the state of a source from stateActive to stateInactive, or to delete the source after being in stateInactive.
|
| virtual size_t | takeInDataPacket () |
| | This function is used by the service thread to process the next incoming packet and place it in the receive list.
|
| IncomingDataQueue::IncomingRTPPktLink * | getWaiting (uint32 timestamp, const SyncSource *src=NULL) |
| | This is used to fetch a packet in the receive queue and to expire packets older than the current timestamp.
|
| bool | recordReception (SyncSourceLink &srcLink, const IncomingRTPPkt &pkt, const timeval recvtime) |
| | Log reception of a new RTP packet from this source.
|
| void | recordExtraction (const IncomingRTPPkt &pkt) |
| | Log extraction of a packet from this source from the scheduled reception queue.
|
| void | purgeIncomingQueue () |
| virtual void | onNewSyncSource (const SyncSource &) |
| | Virtual called when a new synchronization source has joined the session.
|
| virtual bool | onRTPPacketRecv (IncomingRTPPkt &) |
| | A virtual function to support parsing of arriving packets to determine if they should be kept in the queue and to dispatch events.
|
| virtual void | onExpireRecv (IncomingRTPPkt &) |
| | A hook to filter packets in the receive queue that are being expired.
|
| virtual bool | onSRTPPacketError (IncomingRTPPkt &pkt, int32 errorCode) |
| | A hook that gets called if the decoding of an incoming SRTP was erroneous.
|
| bool | insertRecvPacket (IncomingRTPPktLink *packetLink) |
| | Insert a just received packet in the queue (both general and source specific queues).
|
| | IncomingDataQueueBase () |
| virtual | ~IncomingDataQueueBase () |
| | RTPQueueBase (uint32 *ssrc=NULL) |
| void | setLocalSSRC (uint32 ssrc) |
| uint32 | getLocalSSRCNetwork () const |
| virtual | ~RTPQueueBase () |
| | MembershipBookkeeping (uint32 initialSize=defaultMembersHashSize) |
| | The initial size is a hint to allocate the resources needed in order to keep the members' identifiers and associated information.
|
| virtual | ~MembershipBookkeeping () |
| | Purges all RTPSource structures created during the session, as well as the hash table and the list of sources.
|
| SyncSourceLink * | getLink (const SyncSource &source) const |
| bool | isMine (const SyncSource &source) const |
| | Get whether a synchronization source is recorded in this membership controller.
|
| bool | isRegistered (uint32 ssrc) |
| | Returns whether there is already a synchronizacion source with "ssrc" SSRC identifier.
|
| SyncSourceLink * | getSourceBySSRC (uint32 ssrc, bool &created) |
| | Get the description of a source by its ssrc identifier.
|
| bool | BYESource (uint32 ssrc) |
| | Mark the source identified by ssrc as having sent a BYE packet.
|
| bool | removeSource (uint32 ssrc) |
| | Remove the description of the source identified by ssrc.
|
| SyncSourceLink * | getFirst () |
| SyncSourceLink * | getLast () |
| uint32 | getMembersCount () |
| void | setMembersCount (uint32 n) |
| uint32 | getSendersCount () |
| size_t | getDefaultMembersHashSize () |
| Protected Member Functions inherited from SyncSourceHandler |
| | SyncSourceHandler () |
| virtual | ~SyncSourceHandler () |
| void * | getLink (const SyncSource &source) const |
| | This requires SyncSource - SyncSourceHandler friendship.
|
| void | setLink (SyncSource &source, void *link) |
| void | setParticipant (SyncSource &source, Participant &p) |
| void | setState (SyncSource &source, SyncSource::State ns) |
| void | setSender (SyncSource &source, bool active) |
| void | setDataTransportPort (SyncSource &source, tpport_t p) |
| void | setControlTransportPort (SyncSource &source, tpport_t p) |
| void | setNetworkAddress (SyncSource &source, InetAddress addr) |
| Protected Member Functions inherited from ParticipantHandler |
| | ParticipantHandler () |
| virtual | ~ParticipantHandler () |
| void | setSDESItem (Participant *part, SDESItemType item, const std::string &val) |
| void | setPRIVPrefix (Participant *part, const std::string val) |
| Protected Member Functions inherited from ApplicationHandler |
| | ApplicationHandler () |
| virtual | ~ApplicationHandler () |
| void | addParticipant (RTPApplication &app, Participant &part) |
| void | removeParticipant (RTPApplication &app, RTPApplication::ParticipantLink *pl) |
| Protected Member Functions inherited from ConflictHandler |
| | ConflictHandler () |
| virtual | ~ConflictHandler () |
| ConflictingTransportAddress * | searchDataConflict (InetAddress na, tpport_t dtp) |
| ConflictingTransportAddress * | searchControlConflict (InetAddress na, tpport_t ctp) |
| void | updateConflict (ConflictingTransportAddress &ca) |
| void | addConflict (const InetAddress &na, tpport_t dtp, tpport_t ctp) |
| | OutgoingDataQueue () |
| virtual | ~OutgoingDataQueue () |
| void | dispatchImmediate (OutgoingRTPPkt *packet) |
| | This is used to write the RTP data packet to one or more destinations.
|
| microtimeout_t | getSchedulingTimeout () |
| | This computes the timeout period for scheduling transmission of the next packet at the "head" of the send buffer.
|
| size_t | dispatchDataPacket () |
| | This function is used by the service thread to process the next outgoing packet pending in the sending queue.
|
| void | setNextSeqNum (uint32 seqNum) |
| | For thoses cases in which the application requires a method to set the sequence number for the outgoing stream (such as for implementing the RTSP PLAY command).
|
| uint32 | getCurrentSeqNum (void) |
| void | setInitialTimestamp (uint32 ts) |
| uint32 | getInitialTimestamp () |
| void | purgeOutgoingQueue () |
| | OutgoingDataQueueBase () |
| virtual | ~OutgoingDataQueueBase () |
| Protected Member Functions inherited from DestinationListHandler |
| void | writeLockDestinationList () const |
| bool | addDestinationToList (const InetAddress &ia, tpport_t data, tpport_t control) |
| | Locks the object before modifying it.
|
| bool | removeDestinationFromList (const InetAddress &ia, tpport_t dataPort, tpport_t controlPort) |
| | Locks the object before modifying it.
|
| | DestinationListHandler () |
| | ~DestinationListHandler () |
| bool | isSingleDestination () const |
| | Get whether there is only a destination in the list.
|
| TransportAddress * | getFirstDestination () const |
| void | lockDestinationList () const |
| void | unlockDestinationList () const |
| Protected Member Functions inherited from RTCPCompoundHandler |
| | RTCPCompoundHandler (uint16 mtu=defaultPathMTU) |
| | ~RTCPCompoundHandler () |
| bool | checkCompoundRTCPHeader (size_t len) |
| | Perform RTCP compound packet header validity check as specified in draft-ietv-avt-rtp-new.
|
| void | setPathMTU (uint16 mtu) |
| uint16 | getPathMTU () |