论文部分内容阅读
20世纪90年代中后期,Internet迅速发展起来,它日益成为人们通信、娱乐、交流、工作的重要信息。随着Internet的普及,个人计算机处理能力的提高,以及视频压缩技术的发展,人们对网络视频服务,譬如视频电话,视频会议,远程教学等实时视频业务的需求不断增长。作为新一代的视频编码标准H.264/AVC,从理念上把视频编码和传输分开,形成两个层次:视频编码层(VCL,Video Coding Layer)和网络提取层(NAL,NetworkAbstraction Layer)。VCL提供高质量的视频压缩;NAL则对具体的网络传输环境把压缩好的数据进行传输封装,提供了良好的网络适应性。由IETF制定的RTP/RTCP实时传输和控制协议标准,引入了时间戳和QoS反馈控制机制,能很好的用来来传输实时视频。因此,基于H.264视频网络实时传输的研究无论是在应用领域还是在科研领域都具有非常重要的意义。本文首先对H.264视频编码标准以及新技术做了学习及研究,对RTP/RTCP协议进行了详细分析,并研究了RTP的打包规则以及RTCP的反馈控制机制。提出了基于H.264视频的实时传输方案以及适合于H.264视频传输的载荷格式和封装策略。在上面的理论学习研究以及实现的基础上,提出了完整的C/S架构的基于RTP/RTCP的H.264视频传输方案。此方案中,在服务器端和客户端分别进行了功能模块设计。服务器端:RTP封装模块主要是对H.264码流进行打包封装;RTCP分析模块负责产生和发送RTCP包并分析接收到的RTCP包;QoS反馈控制模块则根据RR报文反馈信息动态的对发送速率进行调整;发送缓冲模块则设置端口发送RTP、RTCP包。客户端:RTP模块对接收到的RTP包进行解析判断;RTCP模块根据SR报文统计关键信息,产生并发送RR包。然后,在VC++6.0下用Socket编程,完成基于RTP/UDP/IP的H.264视频传输,并在局域网内运行较好。最后,本文对目前常用的网络传输过程中的拥塞算法进行了研究,在此基础上提出一种新的拥塞控制算法。文中设定丢包率阈值λ1和λ2,根据λ1和λ2设置了三种网络状态,然后通过RR报文中丢包率信息对网络状态进行评估,及时反栏衿鞫?最后服务器端根据网络状况自适应调节发送速率。数据表明此算法在运行中能很好的适应网络带宽变化,减少了丢包率,提高视频质量。