




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计(论文)开题报告题 目:基于 Linux 的 mp3 播放器设计与实现学 院:专业名称:班级学号:学生姓名:指导教师:填 表 日 期 2013 年 12 月 03 日南昌航空大学软件学院东软班 开题报告 版本:V1.01一、 选题依据、目的和意义在这个科技日新月异的时代, Linux 操作系统以其开源的环境以及稳定性在社会和市场上越来越具有竞争力,因此,熟练地掌握 Linux 的相关操作,Linux 下的软件开发,是我们 IT 学子必须掌握的一门技术。而现代社会是一个物质相对丰富的时期,人们在追求物质享受的同时,越来越注重自己的精神享受,而音乐播放器,是一个大家日常生活中都能接触到的一个最为常用的软件,供人们茶余饭后消遣之用。音乐能够陶冶情操,也能够平静人们的心情,安抚受伤的心灵,给人以美好的享受,现在的音乐播放器大都是基于 Windows 操作系统的,因此做一个基于 Linux 系统的音乐播放器非常必要。随着计算机多媒体技术的高速发展,各类集计算机、通信、消费电子产品等特征于一体的电子产品得以广泛应用,而这类产品对当前播放器也提出了更高的要求,同时,随着 Linux 系统的广泛使用,Linux 系统上多媒体技术应用要求更为凸显。目前使用于桌面操作系统的媒体播放器发展较快,通常具有强大的音乐播放功能和友好的用户界面,而基于 Linux 下的 mp3 播放器,由于国内一般用户对 Linux 系统还不太熟悉,因此提前开发一个功能实用,运行速度快,占用空间小,操作和应用友好方便的播放器,在 Linux 操作系统普及以后将会非常具有使用价值,而本项目的音乐播放器就以此为出发点。目前我国的计算机应用、计算机软件和电子相关类专业的人才培养方面,取得了长足的发展,在看到美好前景的时候也存在着一些问题,比如说缺乏实际开发设计项目经验,不善于综合运用所学理论,对知识的把握缺乏,融会贯通的能力有所欠缺。为了顺应 Linux 时代的潮流,锻炼自己在 Linux 下进行软件开发的能力,也为了让人们能够更好的享受生活,提高音乐播放器的友好性和实用性,我这次选择基于 Linux 的 mp3 播放器设计与实现这个课题,考虑到GStreamer 是 GNOME 桌面环境下用来构建流媒体应用的多媒体框架(framework) ,其主要目的是要简化音/视频应用程序的开发,目前已经能够被用来处理MP3、Ogg、MPEG2、AVI、Quicktime 等多种格式的多媒体数据 【1】 。而 GTK+(本文中使用其另一个简要名称 GTK)最初是 GIMP 的专用开发库,后来发展为类 Unix 系统下开发图形界面的应用主流开发工具之一。GTK 是自由软件,并且是 GNU 计划的一部分,GTK 的许可协议是 LGPL【2】 。因此这次项目将使用 GTK 和 GStreamer 技术来实现一个简单 mp3 播放器,希望能够通过这次项目来提升自己,丰富自己的编程经验。南昌航空大学软件学院东软班 开题报告 版本:V1.02二、国内外研究现状及发展趋势随着现代科技的迅猛发展,先进的科学技术尤其是网络与计算机技术已经在人类的工作和生活中发挥着极其重要的作用,占据人们生活的很大部分,而作为一种供人们娱乐消遣的 mp3软件更是成为人们生活中不可或缺的一部分。作为发达国家,基于 Linux 下的播放器起步较早,到现在已经卓有成效,而像我们这种发展中国家,由于技术落后和起步较晚等问题,对 Linux下的软件开发还不是很熟练,不过随着经济的发展,科技的进步,其发展速度一定会非常快。2.1 国外现状及发展趋势由于国外电子信息技术起步较早且发展迅速,而且对 Linux 系统的重视程度非常高,因此各类 mp3 播放器软件种类繁多,让人眼花缭乱,其技术也已经基本成熟。在 Linux 上流行的播放器主要有以下几种:Freeamp,Xmms,RealPlayer,Winamp,Xmcd,Xmovie,QuickTime,Mplayer 等,下面对这些媒体播放器进行分析介绍 【3】 。 MplayerMplayer 是 Linux 下的电影播放器,他的功能十分强大,它能够播放众多格式的文件。Mplayer 能使用众多本地的 Xanim,RealPlayer 和 Win32DLL 编析码器,播放大多数MPEG、VOB、Ogg、ASF/WMV 文件,也能播放 VideoCD、SVCD、DVD 格式的电影。Mplayer 的另一个大特色是支持广泛的输出设备,可以在 X11、Xv、OpenGL 等下工作 【3】 。 XmmsXmms 是 X-Window 系统下最流行的多媒体播放器之一,大多数 Linux 版本都捆绑了该产品作为 Linux 下的标配音频播放器。其可以播放 MP3、Wav 等多媒体文件,而且只要提供相应的插件,他还可以支持更多的多媒体类型 【3】 。 XmovieXmovie 最早是作为电视节目的播放软件。它的界面非常简单。界面上除了播放、快进、快退、播放时间显示和播放进度这几个主要的功能外,没有其他的控制功能,界面上的菜单不含有任何播放控制功能,基本上都是对播放画面的调整和环境变量的控制。支持.mpg、.vob、.m2v 等视频格式,同时能够播放 mp3 音频格式的文件 【3】 。 RealPlayerRealPlayer 在低带宽下支持音频、视频多媒体的低损失传输,同时具有优秀的流媒体在线南昌航空大学软件学院东软班 开题报告 版本:V1.03播放能力。RealPlayer for Linux 版本的操作界面与 Windows 平台下的版本类似 【3】 。以上的 Linux 媒体播放器中所应用的技术已经到了相当成熟的水平,并且为人们所接受,满足了人们对音乐的需求,是人们选择播放器的最佳对象。2.2 国内现状及发展趋势目前国内的基于 Windows 平台下的 mp3 播放器类软件相当多,且已经达到了顶峰。这些软件基本上都能满足人们对音乐的各种需求,包括简单的播放、暂停、快进、上一曲、下一曲,以及复杂的一些操作,如:歌词的显示、字体的放大和缩小、播放器背景的切换、在线听音乐、跟唱等。但是随着 Linux 的开源以及其操作系统的稳定性等优点,其影响力也是日益凸显,而目前国内基于 Linux 操作系统的 mp3 播放器软件还是非常的少,但随着时代的发展,人们意识的进步, Linux 下的软件开发必然会越来越受重视,因此基于 Linux 操作系统的 mp3 播放器的设计与开发是具有前瞻性的。三、研究的主要内容及实验方案3.1 毕业设计的主要研究内容基于 Linux 系统上 mp3 播放器设计与实现,主要采用 GTK 和 GStreamer 分别作为图形界面设计和流媒体框架工具,纯 C 语言编写,用 vi 编辑器来书写程序代码,通过编写 Makefile 文件来定义编译规则,用 make 工具来生成可执行文件。GStreamer 的程序开发框架使得编写任意类型的流媒体应用程序成为可能。在编写处理音频、视频或者两者都有的应用程序时,GStreamer 可以简化编程者的工作。GStreamer 并不受限于音频和视频的处理,它能够处理任意类型的数据流,管道设计的方法对于实际应用的滤波器几乎没有负荷,它甚至可以用来设计对延时有很高要求的高端音频应用程序 【4】 。而 GTK 是 Linux 下开发图形用户界面程序的主要框架,通过回调函数,就可以实现 GTK 和 GStreamer 信号注册功能。其中,回调函数是一种非显式调用的函数,它是一种将自己的地址(函数指针)传给别的函数来间接调用自己的编程方式。在使用回调函数时必须首先定义函数指针,然后才能使用函数指针实现回调 【5】 。本次基于 Linux 系统下的 mp3 播放器设计与实现,功能主要有:播放、暂停、停止、上一曲、下一曲、播放时间显示、进度条显示和调节、歌词的显示、歌曲列表、模式的选择和设置、MV 以及动态加载音乐等。希望在能够通过这次项目不断的学习,提升自己。南昌航空大学软件学院东软班 开题报告 版本:V1.043.2 实验方案(1)UI 设计,主要是音乐播放界面的设计与实现。(2)音乐播放模块,从歌曲的树状列表中选中一首音乐或者是通过文件菜单动态地加载一首音乐,并能够正确播放该音乐。(3)音乐控制模块,主要实现音乐的暂停、播放、停止、上首、下首、模式的选择。(4)菜单模块,帮助菜单主要对本播放器做一个简要说明,文件菜单则是允许选择一个 mp3 文件然后进行播放。(5)附加模块,主要是歌词显示与匹配以及歌曲进度的显示与调节功能的设计与实现。(6)定义项目的编译链接规则,将其写到 Makefile 文件当中,通过 make 工具生成可执行文件。四、目标,主要特色及工作进度4.1 目标:结合 GTK 和 GStreamer 实现一个图形界面 mp3 播放器。具体目标如下:(1)了解基于 Linux 下应用程序的设计和开发过程。(2)了解并熟练掌握 Makefile 文件的编写。(3)了解 GTK 以及 GStreamer 流媒体应用程序框架的使用。(4)界面设计合理,用户界面友好。(5)能够方便的选择本机的一个 mp3 文件进行播放。(6)具有播放、暂停、停止、模式选择功能,并且可以用一个滚动条来显示当前的播放位置,拖动滚动条可以调节 mp3 文件的播放位置。(7)在面板上显示播放时间,时间和进度每 0.2s 刷新一次。(8)提供文件选择和关于菜单,并保证退出按钮能够正常的结束程序。4.2 主要特色:( 1) 基 于 Linux 操 作 系 统 下 的 应 用 程 序 , 顺 应 潮 流 。( 2) mp3 播 放 器 界 面 简 洁 , 便 于 操 作 。( 3) 在 Linux 下 的 mp3 播 放 器 功 能 强 大 , 能 够 满 足 各 类 人 群 对 音 乐 的 需 求 , 以 及 能 够 完南昌航空大学软件学院东软班 开题报告 版本:V1.05成 各 类 复 杂 的 操 作 , 包 括 歌 词 显 示 、 进 度 调 整 等 功 能 。( 4) 采 用 GTK 设 计 图 形 界 面 , GStreamer 来 设 计 流 媒 体 框 架 , 两 者 相 结 合 。( 5) 软 件 小 巧 灵 活 , 操 作 简 单 , 便 于 掌 握 。4.3 工作进度:第一阶段:2013.11.252013.12.03 论文开题,主要完成开题报告,确定毕业设计研究题目和方向。第二阶段:2013.12.042013.12.10 完成项目中需求分析阶段。第三阶段:2013.12.112013.12.18 完成项目概要设计阶段。第四阶段:2013.12.192013.12.29 完成项目详细设计阶段。第五阶段:2013.12.302014.01.05 完成中期检查报告。第六阶段:2014.01.062014.01.20 完成项目编码及测试阶段。第七阶段:完成项目,备齐相关文档,制作答辩 PPT 并做好答辩的准备。南昌航空大学软件学院东软班 开题报告 版本:V1.06五、主要参考文献1 多媒体开发框架 GStreamer 开源社区网2 Wim Taymans, Steve Baker, Andy Wingo, Ronald S. Bultje, and Stefan Kost. GStreamer Application Development Manual (0.10.21.3)M. Open Publication License. 2009.3 Linux 下的播放器 摘自百度文库4 Jon Masters, Richard Blum, Professinal Linux ProgrammingM. Wiley Publ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB4228T 75-2022 堇叶碎米荠生产技术规程
- DB4210T 60-2023 热防护材料综合隔热性能测试方法
- 江西环境工程职业学院《自然资源管理》2023-2024学年第一学期期末试卷
- 镇江市高等专科学校《纪录片解析》2023-2024学年第一学期期末试卷
- 山西师范大学现代文理学院《工笔花鸟》2023-2024学年第一学期期末试卷
- 2025至2030活性炭过滤器行业产业运行态势及投资规划深度研究报告
- 业主出行活动方案
- 业主相亲活动方案
- 业余钓鱼活动方案
- 士兵突击指挥部活动方案
- GB 29541-2013热泵热水机(器)能效限定值及能效等级
- 控规用地代码
- 2023年上杭县社区工作者招聘考试笔试题库及答案解析
- 2021年曹杨二中自招数学试卷
- 中国近现代史纲要超星尔雅答案贵州大学-
- 新能源汽车底盘检修全套课件
- 幼儿园大班数学口算练习题可打印
- 燃气入户安检培训PPT.ppt
- 江苏特种作业人员体检表
- 堡垒主机用户操作手册运维管理
- 国家开放大学《计算机绘图(本)》章节测试参考答案
评论
0/150
提交评论