音频流媒体技术在嵌入式系统中的跨平台实现研究

音频流媒体技术在嵌入式系统中的跨平台实现研究

论文摘要

网络技术,多媒体技术,微电子技术的迅猛发展,为网络流媒体应用提供了越来越广阔的空间。人们在生产和生活中,也早已不满足单一的媒体形式。流媒体以其快捷、直观等优点正被广泛运用到各个部门、公司,以及人们的日常生活当中。同时,越来越多的嵌入式设备具备了Internet接入能力,通过这些便携式设备及资费低廉的Inernet来随时随地的获取多媒体信息,成为越来越多的人的需求。本文研究了音频流媒体的三大关键技术:数字音频编解码技术,实时传输协议实现技术和缓存技术。在此基础之上,本文设计了一个基于流媒体技术和IP多播技术的数字广播系统,由一个流服务器和多个流播放终端组成。论文通过对数字音频的深入研究,确定具有低失真和高压缩率的MP3文件作为系统处理和传输的音频文件格式。在传输层协议的使用上,适应流媒体传输要求低时延和允许一定的丢包率的特点,系统选用了UDP协议。在实时传输协议的使用上,论文搜集了多种主流的流媒体传输协议标准,仔细研究比较后确定了本文所要实现的传输协议为RTP/RTCP。然后在详细研究RTP/RTCP标准的基础上,根据本文的应用环境提出简化设计。在系统的拥塞控制机制上,本文使用接收端反馈回来的RTCP报文进行网络拥塞估计,借鉴AIMD(Addictive Increase Multiplicative Decrease)算法实现发送速率的调节。同时由于速率骤减会严重影响流应有的接收效果,实时流媒体多播系统的速率调节需更为平滑,要实现速率的平滑调节,采用了慢增慢减的措施。流服务器的和流播放器软件实现时使用JAVA语言,并基于J2ME架构。由于流服务器的和流播放器均需具备稳定的网络连接能力,本文在详细对比CDC和CLDC两大架构的基础上,选用了CDC架构(Configuration)。代码实现时选用Foundation Profile提供的CDC核心类。为了提高播放端的实时性,接收端使用硬件解码,并使用JNI(JAVA Native Interface)技术实现JAVA程序与本地代码的无缝连接。文章的最后对本系统的主要功能进行了测试,并描述了测试结果。提出了进一步工作的重点。

论文目录

  • 摘要
  • Abstract
  • 第一章 绪论
  • 1.1 课题提出的背景
  • 1.2 国内外发展现状
  • 1.2.1 流媒体的发展现状
  • 1.2.2 多媒体编码领域
  • 1.2.3 网络传输领域
  • 1.2.4 嵌入式系统的现状
  • 1.3 课题研究的必要性
  • 1.4 论文的主要内容及组织结构
  • 第二章 流媒体技术概要
  • 2.1 流媒体的概念
  • 2.2 流媒体传输的特点
  • 2.3 流媒体发布方式
  • 第三章 系统设计概要
  • 3.1 系统功能和结构
  • 3.2 开发平台设定
  • 3.2.1 J2ME简介
  • 3.2.2 J2ME的架构
  • 3.2.3 J2ME虚拟机简介
  • 3.2.4 Configuration和 Profile选择
  • 3.2.5 CDC类库
  • 3.3 数字音频编码及其选择
  • 3.3.1 PCM编码技术
  • 3.3.2 数字媒体压缩及压缩的必要性
  • 3.3.3 音频压缩的标准化
  • 3.3.4 音频编解码实现方式选择
  • 3.4 传输层协议选择
  • 3.5 流媒体实时传输协议及其选择
  • 3.5.1 RTP/RTCP协议
  • 3.5.2 RTSP协议
  • 3.5.3 RSVP协议
  • 3.5.4 实时传输协议的选择
  • 3.6 IP多播技术
  • 3.6.1 多播的概念
  • 3.6.2 多播地址和多播组
  • 3.6.3 多播技术在多点媒体传输中的优势
  • 第四章 关键模块的设计和软件实现
  • 4.1 实时传输协议(RTP/RTCP)的简化设计和实现
  • 4.1.1 对 RTP帧的简化设计
  • 4.1.2 对 RTCP帧的简化设计
  • 4.1.3 RTCP报文发送间隔计算的简化
  • 4.1.4 简化的RTP协议的JAVA实现
  • 4.2 mp3文件读取和及其净荷封装格式
  • 4.2.1 mp3文件格式
  • 4.2.2 mp3文件的读取实现
  • 4.2.3 mp3流的RTP净荷封装格式
  • 4.3 抖动缓存及失序处理策略及实现
  • 4.3.1 缓存处理策略
  • 4.3.2 失序处理策略
  • 4.3.3 类的实现
  • 4.4 拥塞控制的实现
  • 4.4.1 拥塞控制系统框图
  • 4.4.2 网络拥塞程度估计
  • 4.4.3 控制策略
  • 4.4.4 代码实现
  • 4.5 解码播放模块的实现
  • 4.5.1 JNI技术的实现简介
  • 4.5.2 解码播放模块的设计与实现
  • 4.6 通道信息浏览机制的设计和实现
  • 4.6.1 通道信息浏览机制
  • 4.6.2 TFTP协议的工作原理
  • 4.6.3 浏览机制的实现
  • 第五章 流服务器和流播放器的实现
  • 5.1 流服务器端的实现
  • 5.1.1 功能说明
  • 5.1.2 服务器结构框图
  • 5.1.3 代码实现
  • 5.2 流播放器的实现
  • 5.2.1 功能说明
  • 5.2.2 流播放器结构框图
  • 5.2.3 代码实现
  • 第六章 测试设计
  • 6.1 测试环境
  • 6.2 测试方法
  • 6.3 主要的测试项目及测试结果
  • 6.4 测试中发现的问题
  • 第七章 总结
  • 参考文献
  • 致谢
  • 攻读学位期间发表的学术论文目录
  • 相关论文文献

    标签:;  ;  ;  

    音频流媒体技术在嵌入式系统中的跨平台实现研究
    下载Doc文档

    猜你喜欢