论文部分内容阅读
流媒体技术是应用于互联网上,支持音视频文件边下载边播放的网络传输技术,为用户提供播放网络文件与播放本地文件相同的感受。因为音视频文件数据量非常庞大,同时又要求具有很好的实时性,有限的网络带宽如何负担如此巨大的传输任务是流媒体技术应用中需要解决的问题。这个问题的解决需要从多个角度出发来相互配合、协调。从媒体的采集,压缩编码,到网络传输,客户端的接收,解码,播放,最终的目的都是提供一定的码率下终端的最优播放质量。随着流媒体业务的普及,对支持流媒体技术的嵌入式终端设备产生了巨大的市场需求。本文在Freescale的MCF5329EVB平台上实现了带图形界面的流媒体客户端程序。该应用程序建立在μClinux操作系统之上,采用模块化的方法进行设计。包括流媒体协议栈模块,图形库模块,MP3解码库模块和应用模块。论文的主要内容包括三个部分:一是设计与实现流媒体协议栈。本文选择了Livemedia开源库作为开发流媒体协议栈的基础。Livemedia开源库集成了RTSP,RTP/RTCP和SDP协议,支持多种媒体格式文件的流式传输。根据需要对Livemedia开源库进行裁剪并移植到目标平台上,同时对Livemedia开源库提供的重要API进行了测试。二是设计与实现图形界面。本文选择了Microwindows作为图形库,FLNX作为GUI工具集。该部分分析了Microwindows的工作机制与分层结构,将用户定制设备整合到Microwindows的驱动层中;同时介绍了FLNX的控件集与事件处理模型,用FLUID工具设计图形界面。最后,将Microwindows与FLNX移植到目标平台上,编译出可运行的播放器图形界面。三是设计与实现应用模块。应用模块包括RTSP远程点播功能,VCR播放控制功能和MP3解码回放功能。该部分内容包括了需求分析,总体框架设计,各功能模块的详细设计,以及系统测试与改进方案。