JRTPLIB 3.5.2手册中文版---part6

 

3.2.8 RTPTransmissionInfo

-----------------------------------------------------------------------头文件:rtptransmitter.h

       类RTPTransmissionInfo是一个抽象基类,根据特定的传输组件有特定的(继承)实现。所有的具体实现都继承下面的函数,用来确定对这些参数来说哪个传输组件是有效的(【译注:就是说该函数是用来指出实际使用的传输组件类型的,原文: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

类RTPUDPv4TransmissionInfo给出了关于基于IPv4的UDP传输组件的更多信息,可用的成员函数如下:

std::list<uint32_t> GetLocalIPList() const

-----返回传输器可选择作为本机IP地址的IPv4地址列表。

int GetRTPSocket() const

-----返回用于收发RTP数据包的套接字描述子。

int GetRTCPSocket() const

-----返回用于收发RTCP数据包的套接字描述子。

关于基于IPv6的UDP传输器的信息

------------------------------------------------------------------------头文件:rtpudpv6transmitter.h

类RTPUDPv6TransmissionInfo给出了关于基于IPv6的UDP传输组件的更多信息,可用的成员函数如下:

std::list<in6_addr> GetLocalIPList() const

-----返回传输器可选择作为本机IP地址的IPv6地址列表。

int GetRTPSocket() const

-----返回用于收发RTP数据包的套接字描述子。

int GetRTCPSocket() const

-----返回用于收发RTCP数据包的套接字描述子。

 

3.2.9 RTPAddress

-------------------------------------------------------------------------头文件:rtpaddress.h

       类RTPAddress是一个用来指出单播目的地址或者组播组的抽象基类。该类定义了下面的参数用来确定具体实现所使用的(地址类型)。

enum AddressType {IPv4Address, IPv6Address, UserDefinedAddress};

       基于IPv4的UDP传输器使用类型RTPAddress::IPv4Address,基于IPv6的UDP传输器使用类型RTPAddress::IPv6Address。当使用用户自定义类型的传输组件时RTPAddress:: UserDefinedAddress会很有用。

       类定义了以下接口:

AddressType GetAddressType() const

-----返回具体实现所代表的地址类型。

RTPAddress *CreateCopy() const

-----创建一个RTPAddress对象的拷贝。

bool IsSameAddress(const RTPAddress *addr) const

-----检查对象使用的地址是否与地址addr相同,具体实现需要能够处理参数为NULL的情况。

bool IsFromSamHost(const RTPAddress *addr) const

-----检查地址addr所代表的主机是否与对象是同一个,具体实现需要能够处理参数为NULL的情况。

RTPIPv4Address

------------------------------------------------------------------------头文件:rtpipv4address.h

       该类在基于IPv4的UDP传输组件中使用,类定义了下面的函数。

RTPIPv4Address(uint32_t ip=0, uint16_t port=0)

-----创建一个IP地址为ip,端口号为port的对象,两个参数都是主机字节序表示。

RTPIPv4Address(const uint8_t ip[4], uint16_t port=0)

-----创建一个IP地址为ip,端口号为port的对象,两个参数都是主机字节序表示。

void SetIP(uint32_t ip)

-----将对象的IP地址设为ip,ip是用主机字节序表示。

void SetPort(uint16_t port)

-----将对象的端口号设为port,port是用主机字节序表示。

uint32_t GetIP() const

-----返回以主机字节序表示的对象IP地址。

Uint16_t GetPort() const

-----返回以主机字节序表示的对象端口号。

       当RTPIPv4Address地址用于传输器的组播函数的任意一个时,端口号将被忽略。当该类的对象用于传输器的接受或者拒绝函数中的一个时,0号端口将代表指定IP地址的所有端口。

 

RTPIPv6Address

------------------------------------------------------------------------头文件:rtpipv6address.h

       该类在基于IPv6的UDP传输组件中使用,类定义了下面的函数。

RTPIPv6Address()

-----创建一个IP地址和端口号都为0的对象。

RTPIPv6Address(const uint8_t ip[16], uint16_t port=0)

-----创建一个IP地址为ip,端口号为port的对象,两个参数都是主机字节序表示。

RTPIPv6Address(in6_addr ip, uint16_t port=0)

-----创建一个IP地址为ip,端口号为port的对象,两个参数都是主机字节序表示。

void SetIP(in6_addr ip)

-----将对象的IP地址设为ip。

void SetIP(const uint8_t ip[16])

-----将对象的IP地址设为ip。  

void SetPort(uint16_t port)

-----将对象的端口号设为port,port是用主机字节序表示。

void GetIP(uint8_t ip[16]) const

-----拷贝对象IP地址到ip。

in6_addr GetIP() const

-----返回对象IP地址。

Uint16_t GetPort() const

-----返回以主机字节序表示的对象端口号。

       当RTPIPv6Address地址用于传输器的组播函数的任意一个时,端口号将被忽略。当该类的对象用于传输器的接受或者拒绝函数中的一个时,0号端口将代表指定IP地址的所有端口。

【to be continued!】
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值