#include <MNRTPbase.h>
Inheritance diagram for MNRTPbase:


Public Member Functions | |
| MNRTPbase (MNSelector &sel, int port, int remote_port, int recv_buf_size, u_int32 ssrc, OS::GCPtr< MNShared_RTP_RTCP > shared_data) | |
| MNRTPbase (MNSelector &sel, MNSocket &sock, int remote_port, int recv_buf_size, u_int32 ssrc, OS::GCPtr< MNShared_RTP_RTCP > shared_data) | |
| virtual | ~MNRTPbase () |
| RTP_RC | rt_start (bool sender=false) |
| RTP_RC | rt_connect () |
| joins a mc , called by rtp_start() and rtp_run() | |
| RTP_RC | rt_bind () |
| binds to rtp and rtcp ports ,called by rtp_connect() | |
| const char * | rtp_str_err (int err) |
| returns a string containing an errormsg | |
| virtual int | reader (MNRope *&rope, struct sockaddr_in *&dest) |
| minimum handling and calls the specific function process_data() | |
| virtual void | writer () |
| Called by socket to notify that data can be written to the socket. | |
| virtual RTP_RC | process_data (MNRope *rope, struct sockaddr_in *dest)=0 |
| virtual void | notify_write_enabled ()=0 |
| virtual void | set_mc_ttl (int val) |
| int | get_mc_ttl () |
| const char * | rt_get_targetaddr () const |
| get the targetaddr | |
| u_int32 | rt_get_octet_count () |
| get the number of octets sent | |
| u_int64 | rt_get_packets_received () |
| u_int64 | rt_get_bytes_received () |
| MNRTPbase * | rt_get_MNRTPbasep () |
| retun the pointer to ourself | |
| virtual MNRTCP * | rt_get_rtcp_ptr () |
| int | get_remote_port () |
| get the send port | |
| int | rt_get_payload_type () |
| void | rt_change_pt (int payload_t) |
| virtual void | rt_set_ssrc (u_int32) |
| set ssrc to a defined value | |
| u_int32 | rt_get_ssrc () |
| returns the current ssrc | |
| void | disable_headercheck () |
| header validity check is disabled | |
| void | enable_headercheck () |
| header validity check is enabled | |
| bool | is_header_check_active () |
| is the header check active ? | |
| virtual void | enable_rtcp () |
| enables rtcp | |
| virtual void | disable_rtcp () |
| disables rtcp | |
| virtual u_int64 | GetBytesSent () |
| virtual u_int64 | GetBytesRecv () |
| timeval | GetSentTime () |
| timeval | GetRecvTime () |
| u_int64 | GetSendBandwidth () |
| u_int64 | GetRecvBandwidth () |
| timeval | GetRecvMaxDelta () |
| timeval | GetRecvMinDelta () |
| timeval | GetRecvAverDelta () |
| bool | is_running () const |
| MNRTPcallback & | cb () |
Protected Member Functions | |
| void | lock () |
| void | unlock () |
| bool | is_multicast () const |
| bool | is_rtcp_allowed () const |
Protected Attributes | |
| OS::GCPtr< MNShared_RTP_RTCP > | _shared |
| MNRTPcallback | _cb |
| AlloverStats | allover |
| RTPSendStats | sstats |
| RTPRecvStats | rstats |
| ProtectedU_int32 | rt_ssrc |
| MNDebugMutex | var_mutex |
| MNDebugMutex | initialized |
| bool | _running |
| bool | _connected |
| ProtectedBool | _shutting_down |
| ProtectedBool | _force_no_header_check |
| RTP_RC | _use_mc |
| u_int32 | _recv_port |
| u_int32 | _remote_port |
|
||||||||||||||||||||||||||||
|
Constructor.
|
|
||||||||||||||||||||||||||||
|
|
|
|
|
|
|
Returns a reference to the RTP/RTCP callback registration object. |
|
|
header validity check is disabled
|
|
|
disables rtcp
Reimplemented in MNRTP.
|
|
|
header validity check is enabled
|
|
|
enables rtcp
Reimplemented in MNRTP.
|
|
|
|
|
|
get the send port
|
|
|
Reimplemented in MNRTP.
|
|
|
Reimplemented in MNRTP.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
is the header check active ?
|
|
|
True if use_mc indicates that a multicast address is used.
|
|
|
True if RTCP processing is allowed.
|
|
|
True if the RTPbase object is currently running. The boolean state is shared by RTPbase masters and slaves but not by RTP and RTCP objects.
|
|
|
|
|
|
Implemented in MNRTCP.
|
|
||||||||||||
|
Dummy implementation of the future replacement for the iovec approach. Implemented in MNRTCP.
|
|
||||||||||||
|
minimum handling and calls the specific function process_data()
Implements RefCountingSocket.
|
|
|
binds to rtp and rtcp ports ,called by rtp_connect()
|
|
|
Set a new payload type.
|
|
|
joins a mc , called by rtp_start() and rtp_run()
|
|
|
get the number of Bytes received (for all ssrc together and for all time) |
|
|
retun the pointer to ourself
|
|
|
get the number of octets sent
|
|
|
get the number of packets received (for all ssrc together and for all time) |
|
|
Get the current payload type.
|
|
|
Reimplemented in MNRTCP, and MNRTP.
|
|
|
returns the current ssrc
|
|
|
get the targetaddr
|
|
|
set ssrc to a defined value
Reimplemented in MNRTCP, and MNRTP.
|
|
|
Start the RTPbase processing in a new thread. Does nothing if this object is a slave object. If it is a master object and it is not running yet, call the method rt_connect() and then start a new thread via UDPServerSocket/TCPServerSocket::start(). UDPServerSocket/TCPServerSocket::run() will call select() and wait for data.
|
|
|
returns a string containing an errormsg
|
|
|
Reimplemented in MNRTP.
|
|
|
|
|
|
Called by socket to notify that data can be written to the socket.
Implements RefCountingSocket.
|
|
|
A place to register callback functions for RTP/RTCP events. RTP callback were registered at the class itself previously. I have to find out where this actually is required. |
|
|
True is a connection was "established". A connection is considered estabished when the address and port are correct and the bind was successful. |
|
|
Indicate whether RTP and RTCP headers should be checked. Default is false, ie. headers should be checked. |
|
|
The local port to which this RTP receiver tries to bind respectively is bound. |
|
|
The remote port to which the data is sent. |
|
|
Indicate whether the RTPbase thread is running. (either start or run was called). |
|
|
Pointer to a data structure that is shared between RTP and RTCP objects. |
|
|
A DEBUG variable that indicates that the destructor is currently executed. |
|
|
Indicates whether multicast is used or not. |
|
|
Holds data for custom statistics collection. |
|
|
|
|
|
Holds data for mandatory RTP receive statistics collection. |
|
|
|
|
|
Holds data for mandatory RTP send statistics collection. |
|
|
|
1.3.8