JRTPLIB 3.5.2手册中文版---part8

 

RTCPRRPacket

-----------------------------------------------------------------------头文件:rtcprrpacket.h

----------------------------------------------------------------------继承自:RTCPPacket

       类描述了一个RTCP接收方报告数据包,接口如下:

RTCPRRPacket(uint8_t *data, size_t datalen)

-----基于长度为datalen的数据data创建一个RTCPRRPacket数据包对象。因为data指向的数据在类内部被引用(即不复制数据),所以必须确保在该对象存在期间data指针指向的内存是有效合法的。

uint32_t GetSenderSSRC() const

-----返回发送该数据包的(会话)参与者的SSRC。

int GetReceptionReportCount() const

-----返回数据包中的接收报告块的个数。(译注:not sure。原文:Return the number of report blocks present in this packet.)

uint32_t GetSSRC(int index) const

-----返回由index指定的接收报告块的SSRC,index的取值范围从0到GetReceptionReportCount()-1。注意:(函数)并不检查index范围的合法性。

uint8_t GetFractionLost(int index) const

-----返回index指定的接收报告中的丢包率属性。index的取值范围与上面一样,同样不检查index的范围的合法性。

int32_t GetLostPacketCount(int index) const

-----返回由index指出的接受报告中的丢失的数据包的个数。关于index的描述与上面相同。

uint32_t GetExtendedHighestSequenceNumber(int index) const

-----返回由index指出的接收报告中的扩展的最高序列号(??),index同上。

uint32_t GetJitter(int index) const

-----返回index指出的接收报告中的抖动属性,index同上。

uint32_t GetLSR(int index) const

-----返回index指出的接受报告中的LSR属性,index同上。

uint32_t GetDLSR(int index) const

-----返回index指出的接受报告中的DLSR属性,index同上。

 

RTCPSDESPacket

-----------------------------------------------------------------------头文件:rtcpsdespacket.h

-----------------------------------------------------------------------继承自:RTCPPacket

       该类描述了RTCP 的SDES数据包,类中定义了如下的类型:

enum ItemType{ None, CNAME, NAME, EMAIL, PHONE, LOC, TOOL, NOTE, PRIV, Unknown};

       这些类型用来确定SDES每一个项的类型,None用来指出遍历所有项的结束,Unknown用来指出确实有一项存在,但是该项不是标准类型。

类的接口如下:

RTCPSDESPacket(uint8_t *data, size_t datalen)

-----基于长度为datalen的数据data创建一个RTCPSDESPacket数据包对象。因为data指向的数据在类内部被引用(即不复制数据),所以必须确保在该对象存在期间data指针指向的内存是有效合法的。

int GetChunkCount() const

-----返回SDES数据包中SDES数据块的个数,每个数据块都有自己的标识符。

bool GotoFirstChunk()

-----开始遍历,如果没有SDES数据块存在,函数返回false,否则返回true并将当前数据块设置为第一个数据块。

bool GotoNextChunk()

-----将当前数据块设置为下一个有效的数据块,如果没有数据块可用了,则返回false,否则返回true。

uint32_t GetChunkSSRC() const

-----返回当前数据块的SSRC标识符。

bool GotoFirstItem()

-----在当前数据块上开始遍历SDES的各项,如果没有SDES项存在,则返回false,否则返回true并将第一项设为当前项。

bool GotoNextItem()

-----如果当前数据块中还存在项(条目?),将当前项设置为下一项,并返回true,否则返回false。

ItemType GetItemType() const

-----返回当前数据块的当前数据项的类型。

size_t GetItemLength() const

-----返回当前数据块的当前数据项的长度。

uint8_t *GetItemData()

-----返回当前数据块的当前数据项的数据。

       如果在编译库的时候选择了支持SDES私有项,那么在当前项SDES是私有项时下列函数也可用。

size_t GetPRIVPrifixLength()

-----返回私有项的前缀字符串长度。

uint8_t *GetPRIVPrefixData()

-----返回私有项中前缀字符串的实际数据。

size_t GetPRIVValueLength()

-----返回私有项的值字符串的长度。

uint8_t *GetPRIVValueData()

-----返回私有项中值字符串的实际数据。

 

RTCPAPPPacket

------------------------------------------------------------------------头文件:rtcpapppacket.h

------------------------------------------------------------------------继承自:RTCPPacket

       类RTCPAPPPacket描述了RTCP 的APP包,接口如下:

RTCPAPPPacket(uint8_t *data, size_t datalen)

-----基于长度为datalen的数据data创建一个RTCPAPPPacket数据包对象。因为data指向的数据在类内部被引用(即不复制数据),所以必须确保在该对象存在期间data指针指向的内存是有效合法的。

uint8_t GetSubType() const

-----返回APP数据包的子类型。

uint32_t GetSSRC() const

-----返回发送数据包的源的SSRC。

uint8_t *GetName()

-----返回在APP包中包含的名字,由四个不是以null结尾的字节组成。

uint8_t *GetAPPData()

-----返回指向实际数据的指针。

size_t GetAPPDataLength() const

-----返回实际数据的长度。

 

RTCPBYEPacket

------------------------------------------------------------------------头文件:rtcpbyepacket.h

------------------------------------------------------------------------继承自:RTCPPacket

       类RTCPBYEPacket描述了RTCP 的BYE包,接口如下:

RTCPBYEPacket(uint8_t *data, size_t datalen)

-----基于长度为datalen的数据data创建一个RTCPBYEPacket数据包对象。因为data指向的数据在类内部被引用(即不复制数据),所以必须确保在该对象存在期间data指针指向的内存是有效合法的。

int GetSSRCCount() const

-----返回BYE数据包中存在的SSRC标识符的个数。

uint32_t GetSSRC(int index) const

-----返回由index指出的SSRC,index的范围可以是0到GetSSRCCount()-1,注意index没有范围的有效性检查。

bool HasReasonLength() const

------如果BYE包中包含离开原因则返回true。

size_t GetReasonLent() const

-----返回源离开的原因字符串长度。

uint8_t *GetReasonData()

-----返回实际的原因数据。

 

RTCPUnknownPacket

------------------------------------------------------------------------头文件:rtcpunknownpacket.h

------------------------------------------------------------------------继承自:RTCPPacket  

       这个类除了继承的函数外,没有其他的成员函数,注意:因为未知的数据包格式没有什么可检查的,所以IsKnownFormat函数只是单纯的返回一个true。只有构造函数是可用的。

RTCPUnKnownPacket(uint8_t *data, size_t datalen)

-----基于长度为datalen的数据data创建一个RTCPBYEPacket数据包对象。因为data指向的数据在类内部被引用(即不复制数据),所以必须确保在该对象存在期间data指针指向的内存是有效合法的。

【to be continued!】

你可能感兴趣的:(JRTPLIB 3.5.2手册中文版---part8)