论文部分内容阅读
随着嵌入式技术和多媒体技术的飞速发展,越来越多的嵌入式设备使用功能强大、价格低廉的嵌入式Linux作为操作系统并开始采用较为复杂的图形用户界面。GTK+以其稳定可靠的性能、良好的可移植性逐渐成为一种被广泛使用的GUI系统。正是由于嵌入式系统的图形用户界面不断发展,人们对于在嵌入式系统下的良好视听享受的要求也越来越高。因此多媒体组件也逐渐成为嵌入式系统中不可或缺的重要组成部分,设计和实现一种基于Linux的嵌入式媒体播放器具有深刻的现实意义和实用价值。本论文结合基于NC机开发媒体播放系统的项目需求为背景,设计出了一种基于嵌入式Linux操作系统和图形用户界面GTK+的媒体播放器,使其支持丰富的媒体文件格式和传输协议。论文的主要内容包括四个部分:①研究设计了播放器的系统结构,根据播放器播放的程序流程,完成了对四个主要功能模块的总体设计,重点阐述了各个模块的详细实现机制。②对主要模块进行详细设计。图形用户界面模块通过GTK+系统使用事件驱动和信号回调机制作为应用程序的创建构架,接收和处理用户对播放器的各种操作。数据访问模块主要完成对网络流媒体数据的读取以及对本地媒体数据的读取工作。系统管理主控模块主要负责协调管理其他模块的交互工作,以实现媒体播放的操作和控制的分离,使播放器的结构更加清晰。音视频解码模块采用可扩展的解码器接口,以提高播放器对媒体格式和传输协议的可扩展能力。③重点介绍了音频队列和音视频同步的实现。在实现音频回放过程中,采用音频队列来完成音频数据包的存放,以保护共享资源和提高播放效率。采用显示时间戳标明音视频数据流之间精确的相对时序来进行音视频的同步,使播放器能获得更好的声音和图像效果。④最后对设计实现的媒体播放器进行了功能测试,测试结果表明该播放器的实现完全满足NC机系统播放的需要。综上所述,本文从理论出发,对现有的理论和成果进行分析,详细论述了一个基于GTK+图形用户界面的嵌入式媒体播放器的原理、设计和实现机制。