jrtplib重要类的含义

转载 2013年12月03日 11:06:12

重要类的含义:

class RTPSession

该类属于RTP使用的高级层。客户最终通过该类或派生类使用RTP。该类完全把RTCP的实现细节封装内部,并提供读取和发送数据的接口,使用者只需关心实际数据的收发。

 

class RTPSessionParams是对其参数控制类。

 

class RTPPollThread

RTP线程类。

线程功能:接收 RTP和RTCP数据包,然后自动发送RTCP包。

 

class RTPUDPv4Transmitter

UDP OVER IPV4的传输模块。 此类继承了RTPTransmitter 类,并实现了在UDP over IPv4 上的 RTP和RTCP数据的收发。该模块的参数由RTPUDPv4TransmissionParams 类设置。该模块用RTPRawPacket 类来存储到达的RTCP和RTP数据。收到的数据包都放到rawpacketlist对列中。

 

class RTPSources

该类维护一个哈希散列表,列表里包含参加者的源信息。该类提供函数 用来轮询处理每个参与者的RTCP和RTCP 数据包。每次收到包 都会根据该包的SSRC 把该包塞入到哈希表中,而进一步的数据处理则交给更下层的RTPInternalSourceData类。该类的设计是为了更好的管理来自不同SSRC的数据。

 

class RTPSessionSources : public RTPSources

该类继承了RTPSources,重载了RTPSources中的一些纯虚函数。为RTPSession会话类提供数据服务。即类RTPSession通过 类RTPSessionSources 操作内部数据。

 

RTPInternalSourceData  RTPSourceData   RTPSourceStats

这些类管理 数据包的存储以及 参数信息:包括RTP数据包和包的参数、RTCP 的发送者报告信息、接收者报告信息、源描述符信息,数据源发送的地址,时间等。

RTPSourceStats管理接收到包的状态参数。对它的操作被封装在RTPSourceData的接口函数中。

 RTPSourceData是管理接收到的源数据包的具体实现类。

 

RTPInternalSourceData 继承了RTPSourceData,上层是他通过它来配置参数的以及读取数据的。

 

class RTPRawPacket

传输模块此类用来存储管理到达的RTP和RTCP数据。其实只是存储了指向实际数据的在指针,因此数据实体还是在传输模块里面。该类在传输模块中用std::list<RTPRawPacket*> rawpacketlist 容器队列的方式使用。

 

class RTPPacket

该类是RTP包的完整描述类,该类完全对应RFC3550协议里的RTP包格式。RTP包的生成有两种方式:

1 从原始的RTPRawPacket实例中粘贴。

int ParseRawPacket(RTPRawPacket &rawpack);

2根据RTP格式所需的所有参数生成。

int BuildPacket(所有参数)

 

class RTCPCompoundPacket(复合包)

 一个实例代表一个RTCP复合包。

 

class    RTCPCompoundPacketBuilder(创建RTCP复合包)

此类用于构建RTCP复合包,从基类RTCPCompoundPacket继承。该类维维系了RTCP复合包所需的全部信息,如各种包信息队列:报告包(发送、接收)、源描述包、离开包、应用包。等需要创建的时候组合成完整的RTCPCompoundPacket。

 

class RTCPPacketBuilder

该类是RTCPCompoundPacketBuilder的更高层封装。该类根据RTPPacketBuilder实例 和RTPSources实例 来自动生成下一个要发送的复合包;另外,也提供函数 决定什么时候该发送 SDES选项 ,而不是 规范名。

利用Jrtplib库发送h264文件-vlc播放

  • 2017年07月14日 09:44
  • 3.37MB
  • 下载

Jrtplib发送视频文件 + FFMPEG解码+VFW播放视频 (回调方式)

在上篇文章《Jrtplib收发H264文件 + FFMPEG解码+VFW播放视频》 里,我们采用的模式是发送端读取本地H264文件, 把完整的Naul(包含起始码) 逐个发送给接收端,接收端收到后,对...
  • heker2010
  • heker2010
  • 2017年07月25日 16:53
  • 369

jrtplib发送数据包时默认RTP参数设置讲解

在看jrtplib手册的时候法相发送数据包有多个函数
  • zhangjikuan
  • zhangjikuan
  • 2014年07月05日 18:48
  • 1251

RTP发送h264文件,用vlc播放

本文是在  《使用jrtplib打包发送h264数据,关使用vlc|mplayer播放》 这篇文章的基础上整理出来的,具体内容我就不转载了,大家可以去看原文,我只是把原作者的代码整理了一下,改成win...
  • heker2010
  • heker2010
  • 2017年07月14日 09:52
  • 673

jrtplib指南

1.开始 1.1 创建一个session为了使用这个库,你首先需要构建一个session,类型为RTPSession,然后调用create()成员函数创建,它带有一个参数,是端口号,例子:#i ncl...
  • wtxidian
  • wtxidian
  • 2007年06月23日 19:21
  • 2714

使用jrtplib打包发送h264数据,关使用vlc|mplayer播放

http://blog.csdn.net/xyyangkun/article/details/20453051?utm_source=tuicool&utm_medium=referral ...
  • zdf511391565
  • zdf511391565
  • 2016年04月01日 16:40
  • 1201

Spring框架的两个重要概念IOC 和 AOP

背景:Spring框架,是项目管理框架,它主要是为javaEE开发提供更好的解决方案; 定义:Spring ,是IOC容器. Spring两大重量级概念:控制反转 IOC  Inverse Of ...
  • u012581573
  • u012581573
  • 2016年11月14日 23:14
  • 755

JRTPLIB的几个重要类说明

虽然JRTPLIB提供文档,但是对于我这种英语实在不咋滴人来说,看着还是有点吃力的。偶尔看到网上这篇文章,赶紧转载下。这是JRTPLIB@Conference系列的第三编《JRTPLIB的几个重要类说...
  • shen8686
  • shen8686
  • 2011年06月20日 13:57
  • 3105

java中重要的几个常用类

一、String a). 创建String类型的数据     String  变量名 = new  String();  String  变量名 = new String(“字符串”); ...
  • fxhwjj
  • fxhwjj
  • 2017年11月20日 19:13
  • 62

junit的核心类

junit的成员组成角色:TestCase + TestSuite + BaseTestRunner = TestResult这里的TestCase是测试用例,但默认下,它会把一个或多个TestCas...
  • penghuasheng
  • penghuasheng
  • 2007年09月11日 15:08
  • 456
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jrtplib重要类的含义
举报原因:
原因补充:

(最多只允许输入30个字)