节点文献

嵌入式流媒体播放器的设计与实现

【作者】 徐鹏

【导师】 林水生;

【作者基本信息】 电子科技大学 , 信号与信息处理, 2008, 硕士

【摘要】 流媒体技术是应用于互联网上,支持音视频文件边下载边播放的网络传输技术,为用户提供播放网络文件与播放本地文件相同的感受。因为音视频文件数据量非常庞大,同时又要求具有很好的实时性,有限的网络带宽如何负担如此巨大的传输任务是流媒体技术应用中需要解决的问题。这个问题的解决需要从多个角度出发来相互配合、协调。从媒体的采集,压缩编码,到网络传输,客户端的接收,解码,播放,最终的目的都是提供一定的码率下终端的最优播放质量。随着流媒体业务的普及,对支持流媒体技术的嵌入式终端设备产生了巨大的市场需求。本文在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解码回放功能。该部分内容包括了需求分析,总体框架设计,各功能模块的详细设计,以及系统测试与改进方案。

【Abstract】 Streaming media is a network transmisson technique which ensures that the processes of transmitting and playing audio or vedio on Internet can proceed concurrently. It can give user the experience of playing the remote media which is the same as the experience of playing the local media. Because the size of audio or vedio is very large and the requirement of real-time is necessary, streaming media has an important problem needed to be solved that is how the limited bandwidth of Internet can load so huge task of transmission. For this problem we must think about it from many points, such as sampling, coding, transmitting, decoding and playing. The ultimate intention is that user can get the best playing experience under some fixed performance of network. As streaming media gets more and more universal, the embedded device supporting streaming media is becoming popular in the market.This paper discusses that the streaming client player system which has a graphic interface is realized on MCF5329EVB board which is developed by Freescale company. This system is build onμClinux and designed by the way of partitioning the whole system to many modules. These modules include streaming media protocol stack module, graphic library module, mp3 decoding library module and application module. The main work consists of three parts:The first is designing and realizing streaming media protocol stack. Livemedia which is a library of open source is chosen to be a base for developing streaming media protocol stack. RTSP, RTP/RTCP and SDP protocols are integrated by Livemedia, and the streaming transmission of many types of media is supported by it. According to our system’s demand, Livemedia is needed to be cut down and ported to the target board. Meanwhile, the APIs of Livemedia are tested.The second is designing and realizing graphic interface. Microwindows is chosen to be graphic library and FLNX is chosen to be GUI toolkit. This part discusses the principle and structure of Microwindows, and the method of adding the device drivers into the driver level of Microwindows. At the same time, This part also discusses the toolkits and event model of FLNX, and describes how to design graphic interface by FLUID. In the end, Microwindows and FLNX are ported to the target board, and an excutable program which has a graphic interface of player is compiled.The last is designing and realizing application module. Application module includes RTSP remote requesting function, VCR controlling function, mp3 decoding and playing back function. The main content of this part includes requirement analysis, architecture design, detailed design, system test and improvement.

节点文献中: 

本文链接的文献网络图示:

本文的引文网络