论文部分内容阅读
随着流媒体技术、移动通信技术和嵌入式技术的迅速发展,已经客观上改变了人们的生活和工作方式。传统的基于PC的流媒体交互方式已不能满足人们多元化的需求方式;基于IP流媒体技术的嵌入式流媒体智能终端因其实时性、可靠性和便携性而受到用户青睐,成为研究的热点,拥有巨大的市场前景。然而,当前市场上嵌入式流媒体播放器普遍存在以下三方面的问题:第一,由于流媒体播放时对带宽的高占有特性,使得传统的C/S方式很容易导致服务器负载过重,成为系统瓶颈,限制了系统的服务能力;第二,采用专用的编解码芯片虽然能保证流媒体播放时的实时性和流畅性,但系统整体灵活性较差,不利于算法升级,且价格昂贵、性价比不高;第三,采用纯软件方法虽然易于系统升级和移植,但系统实时性较差。本文在介绍了流媒体技术、基于PC的流媒体播放器发展过程和优缺点、当前嵌入式流媒体播放器国内外研究现状以及课题平台的选择后,概述了Android系统结构、Android应用程序框架和FFMPEG编解码库。概述了实时传输协议RTP、实时传输控制协议RTCP、实时流协议RTSP、P2P技术、MPEG-4编码原理和过程。接着针对当前嵌入式流媒体播放器中存在的性能、成本和算法易升级性等问题,本文提出了一种层次化、模块化的硬件加软件的设计方案,该方案以具有较强多媒体处理能力的S3C6410为微处理器,以基于Linux的、目前较为流行的Android系统为依托,根据Android OS系统特点对FFMPEG进行裁剪、优化并移植到Android平台下。同时,本文针对嵌入式硬件终端特性,将P2P思想引入到嵌入式流媒体终端中,对终端缓存空间重新设计,实现终端设备节点之间流媒体数据的直接传输,并详细阐述了缓存空间的管理机制及估算方法。最后,本文对系统进行了功能测试,测试结果表明该设计简单高效,并对下一步工作提出了建议。