论文部分内容阅读
随着Linux系统在各种嵌入式设备中的广泛使用,Linux系统上多媒体技术的应用也日趋显著,如何利用嵌入式技术更好的实现媒体文件的播放越来越成为本领域所关注的焦点。因而研制一种基于Linux能支持各种媒体文件格式和传输协议的嵌入式媒体播放器,成为当前媒体播放器的重要研究方向。 本文以MPlayer媒体播放器为原型,在SDL(Simple DirectMedia Layer)简单直接媒体层的基础上设计出一种基于Linux的多媒体播放器,在支持丰富的媒体文件格式的同时占用较小的系统资源,使其更能适应多媒体播放的需求。 本文的主要研究内容有: (1)研究设计了一种嵌入式多媒体播放器的体系结构,根据体系结构的要求对播放器进行了功能模块的划分,对系统的关键模块—系统管理与控制模块、音视频回放和音视频同步模块进行了总体设计,给出了播放器工作的流程图。 (2)针对Linux操作系统下依赖于X系统的问题,设计实现了基于SDL的显示框架,以适应嵌入式设备对体积性能的要求。 (3)研究系统管理与控制、音视频回放、同步模块的具体实现技术。系统管理与控制模块通过各种事件和事件处理函数来实现与用户的交互以及对媒体播放的控制。音视频回放模块通过SDL的线程机制来实现音频的回放,并通过时间戳机制实现音视频的同步。 (4)对多媒体播放器进行了整体测试,实验结果表明该播放器能对常见的媒体文件格式进行播放,能正确地响应用户的播放控制,支持全屏播放等,能满足嵌入式设备的媒体播放需要。 综上所述,本文从基本技术理论出发,以现有开源媒体播放器MPlayer为参考原型,设计并研制了一款基于SDL和FFMpeg的多媒体播放器,经实验测试结果表明该播放器能满足嵌入式设备的媒体播放需要,具有一定的理论和实际应用价值。