int SetReceiveMode(RTPTransmitter::ReceiveMode m)
-----将接收模式设置为m,m的取值可以是下列之一:RTPTransmitter::AcceptAll, RTPTransmitter::AcceptSome, RTPTransmitter::IgnoreSome。注意!如果模式改变了,则所有关于接收或者忽略地址的信息将全部丢失。
int AddToIgnoreList(const RTPAddress &addr)
-----将地址addr加入到忽略地址列表中。
int DeleteFromIgnoreList(const RTPAddress &addr)
-----将地址addr从忽略地址列表中删除。
void ClearIgnoreList()
-----清除忽略地址列表。
int AddToAcceptList(const RTPAddress &addr)
-----将地址addr加入到接收地址列表中。
int DeleteFromAcceptList(const RTPAddress &addr)
-----将地址addr从接收地址列表中删除。
void ClearAcceptList()
-----清除接收地址列表。
int SetMaximumPacketSize(sizt_t s)
-----将传输器允许的最大数据包大小设置为s。
基于IPv4的UDP传输器
-------------------------------------------------------------------------头文件:rtpudpv4transmitter.h
-------------------------------------------------------------------------继承自:RTPTransmitter类
类RTPUDPv4Transmitter继承了类RTPTransmitter的接口,成为一个传输组件,使用基于IPv4的UDP协议来传输RTP和RTCP数据。
该组件的参数由类RTPUDPv4TransmissionParams来描述,关于该参数类的详细参见3.2.7节。形参为RTPAddress的函数需要传递一个类型为RTPIPv4Address的参数,关于RTPIPv4Address由3.2.9节详细描述。RTPUDPv4Transmitter类的成员函数GetTransmissionInfo返回一个RTPUDPv4TransmissionInfo对象,该类详细参见3.2.8节。
基于IPv6的UDP传输器
-------------------------------------------------------------------------头文件:rtpudpv6transmitter.h
-------------------------------------------------------------------------继承自:RTPTransmitter类
类RTPUDPv6Transmitter继承了类RTPTransmitter的接口,成为一个传输组件,使用基于IPv6的UDP协议来传输RTP和RTCP数据。
该组件的参数由类RTPUDPv6TransmissionParams来描述,关于该参数类的详细参见3.2.7节。形参为RTPAddress的函数需要传递一个类型为RTPIPv6Address的参数,关于RTPIPv6Address由3.2.9节详细描述。RTPUDPv6Transmitter类的成员函数GetTransmissionInfo返回一个RTPUDPv6TransmissionInfo对象,该类详细参见3.2.8节。
3.2.7 RTPTransmissionParams类
-------------------------------------------------------------------------头文件:rtptransmitter.h
RTPTransmissionParams类是一个抽象基类,特定的传输组件需要特定的继承实现。所有的实现都继承下面的函数,用来确定对这些参数来说哪个传输组件是有效的(【译注:就是说该函数是用来指出实际使用的传输组件类型的,原文:All actual implementations inherit the following function which identify the component type for which these parameters are valid】):
RTPTransmitter::TransmissionProtocol GetTransmissionProtocol()
基于IPv4的UDP传输器的参数
------------------------------------------------------------------------头文件:rtpudpv4transmitter.h
------------------------------------------------------------------------继承自:RTPTransmissionParams
RTPUDPv4TransmissionParams类代表基于IPv4的UDP传输组件使用的参数。默认的TTL设置为1,端口号设为5000,类的接口如下:
void SetBindIP(uint32_t ip)
-----将与套接字绑定的IP设置为ip。
void SetPortbase(uint16_t pbase)
-----将RTP的端口号设为pbase,该数值必须是偶数!
void SetMulticastTTL(uint8_t mcastTTL)
-----设置组播的TTL为mcastTTL。
void SetLocalIPList(std::list<uint32_t> &iplist)
-----传递一组将要作为本地IP地址的IP地址列表。
void ClearLocalIPList()
-----清除本地IP地址列表,一个空的表将使得传输组件自己决定使用的本地IP地址。
uint32_t GetBindIP() const
-----返回套接字将绑定的IP地址。
uint16_t GetPortbase() const
-----返回RTP将要使用的端口号。
uint8_t GetMulticastTTL() const
-----返回要使用的组播TTL。
const std::list<uint32_t> &GetLocalIPList() const
-----返回本地IP地址列表。
基于IPv6的UDP传输器的参数
------------------------------------------------------------------------头文件:rtpudpv6transmitter.h
------------------------------------------------------------------------继承自:RTPTransmissionParams
RTPUDPv6TransmissionParams类代表基于IP64的UDP传输组件使用的参数。默认的TTL设置为1,端口号设为5000,类的接口如下:
void SetBindIP(in6_addr ip)
-----将与套接字绑定的IP设置为ip。
void SetPortbase(uint16_t pbase)
-----将RTP的端口号设为pbase,该数值必须是偶数!
void SetMulticastTTL(uint8_t mcastTTL)
-----设置组播的TTL为mcastTTL。
void SetLocalIPList(std::list<in6_addr> &iplist)
-----传递一组将要作为本地IP地址的IP地址列表。
void ClearLocalIPList()
-----清除本地IP地址列表,一个空的表将使得传输组件自己决定使用的本地IP地址。
in6_addr GetBindIP() const
-----返回套接字将绑定的IP地址。
uint16_t GetPortbase() const
-----返回RTP将要使用的端口号。
uint8_t GetMulticastTTL() const
-----返回要使用的组播TTL。
const std::list<in6_addr> &GetLocalIPList() const
-----返回本地IP地址列表。