嵌入式Linux流媒体传输的设计与实现

嵌入式Linux流媒体传输的设计与实现

论文摘要

随着嵌入式视频监控系统的蓬勃发展,本文主要针对其关键技术即流媒体技术与视频压缩技术进行了研究,并参考视频监控系统在WindowsPC机上系统模型,设计出应用于嵌入式Linux系统的解决方案并以嵌入式设备(达芬奇技术)作为其硬件平台。文中详细分析了RTP协议的细节和几种重要的RTP/RTCP分组格式,深入研究了适合于RTP传输的H.264 NALU结构,提出了一种在应用层对NAL单元进行载荷处理,并具有码流控制的H.264视频实时传输系统方案。此外,本文还完成了基于该方案的软件系统功能的总体设计,给出了具体模块的详细实现,其中NALU提取模块、H.264实时传输模块、码流控制模块的设计是本文的重点部分。首先,NALU提取模块是在达芬奇平台下从其视频压缩后的码流中搜索NAL单元的起始码标志从而提取出NAL单元,并通过高性能的共享内存机制把大量的视频数据从H.264压缩进程传到RTP发送进程作为RTP的负载。这样使得系统代码功能更清晰,调试更方便,而且H.264压缩进程的性能不会受到RTP进程的任何影响。同时,本文还针对德州仪器(TI)的H.264 Encode程序进行改进,使之与本应用相结合。其次,在H.264实时传输模块上对实时传输协议(RTP)、实时传输控制协议RTCP及适合于H.264视频传输的载荷类型进行了深入的分析,并提出了基于RTP协议的H.264视频流式传输框架的封包策略,还给出了各个重点环节的代码实现。此外,本系统还增加了码率控制模块,根据RTCP的统计信息包SR和RR求得丢包率、时延等情况估计网络拥塞状况来调整编码码率与发送端的发送速率,以获得在解码视频质量和带宽利用上的最佳平衡。最后,还进行了整体测试,并可以从测试图象中直观地反映出编码码率与图像失真程度之间的关系。本文所开发的系统具有较高的可扩展性、灵活性以及可重用性,适用于嵌入式LINXU环境。测试结果表明,该系统能够达到预期的功能效果,符合嵌入式网络视频监控系统视频数字化、系统的网络化、管理的智能化的发展趋势。

论文目录

  • 摘要
  • ABSTRACT
  • 目录
  • 第一章 绪论
  • 1.1 引言
  • 1.1.1 嵌入式Linux
  • 1.1.2 流媒体技术
  • 1.2 国内外发展概况
  • 1.3 选题背景和意义
  • 1.4 论文研究内容与组织结构
  • 第二章 系统总体设计
  • 2.1 系统方案
  • 2.1.1 视频压缩算法
  • 2.1.2 网络传输协议
  • 2.2 系统架构设计
  • 2.3 本章小结
  • 第三章 NALU提取模块实现
  • 3.1 达芬奇技术概述
  • 3.1.1 Davinci(DM6446)芯片内部结构
  • 3.1.2 Davinci软件系统架构
  • 3.1.3 双核(ARM、DSP)通信机制
  • 3.1.4 达芬奇CE框架应用程序主流程
  • 3.2 达芬奇平台的H.264视频压缩模块改进
  • 3.3 H.264的NAL层技术
  • 3.3.1 NAL单元(NALU)的概念
  • 3.3.2 NAL单元的结构
  • 3.3.3 NAL单元的传输和存储
  • 3.4 在嵌入式LINUX系统下的代码实现
  • 3.4.1 进程间通信的实现
  • 3.4.2 NALU提取的实现
  • 3.5 本章小结
  • 第四章 H.264实时传输模块实现
  • 4.1 RTP概述
  • 4.2 RTP/RTCP协议工作原理
  • 4.3 RTP/RTCP报文格式
  • 4.3.1 RTP报文格式
  • 4.3.2 RTCP报文格式
  • 4.3 H.264的RTP载荷格式
  • 4.3.1 单一NALU分组
  • 4.3.2 聚合分组
  • 4.3.3 分割单元
  • 4.4 RTP传输模块在嵌入式LINUX下的代码实现
  • 4.4.1 RTP/RTCP类及相关数据结构设计
  • 4.4.2 RTP会话初始化
  • 4.4.3 媒体数据发送
  • 4.4.4 RTP组播
  • 4.4.4 NALU分割
  • 4.4.5 媒体数据接收
  • 4.5 本章小结
  • 第五章 码流控制模块设计
  • 5.1 码流控制概述
  • 5.2 RTP发送速率控制
  • 5.3 调整编码码率
  • 5.4 码流控制模块在嵌入式LINUX下的代码实现
  • 5.4.1 调整RTP发送速率实现
  • 5.4.2 编码器输出比特率控制实现
  • 5.5 本章小结
  • 第六章 系统测试
  • 6.1 测试环境
  • 6.2 系统测试
  • 6.3 本章小结
  • 总结与展望
  • 参考文献
  • 致谢
  • 相关论文文献

    标签:;  ;  

    嵌入式Linux流媒体传输的设计与实现
    下载Doc文档

    猜你喜欢