基于Qt的音频管理系统的设计与实现(任务书,外文翻译,毕业论文22000字,程序代码,答辩PPT)
摘要
随着互联网的的发展,PC机已经不能满足终端用户对音频的需要。虽然目前有各种各样的计算机操作系统,如WINDOWS,LINUX,UNIX,MAC OS等以及各种移动开发平台,如Android,BlackBerry OS,IOS,Windows Mobile,Windows Phone,Palm等,不同的操作系统需要不同的系统软件来开发对应的应用程序。同样的功能,却要开发多次,这给程序员带来了冗余的工作量。
本文以Qt为基础,对音频管理系统的实际设计情况进行了需求分析,利用软件工程的开发流程及面向对象的思想,构建了音频管理系统的总体框架,为最终音频管理系统的实现提供了理论依据。
测试结果表明,基于Qt的音频管理系统可以在Win7的Qt5.2中运行,也可以在ubuntu的Qt5.2中运行,代码只需做微小的调整,减轻程序员的代码量,节省开发成本,为未来的开发提供一个重要的参考。
关键词 Qt;音频管理系统;设计;实现
Design and implementation of audio management system based on Qt
Abstract
With the development of the Internet,the PC has been unable to meet the needs of the audio terminal user.Despite various of computer operating system,such as WINDOWS,LINUX,UNIX,MACOS etc,and various of mobile development platform,such as Android,BlackBerry,OS,IOS,WindowsMobile,Windows Phone,Palm etc,different operating systems require different software systems to develop the corresponding application .The same function needs to develop several times,which brings redundant work for the programmer.
This paper,based on the Qt,carrying on the demand analysis of the actual design of the audio management system,using the development process of software engineering and object-oriented idea,constructing the general framework of audio management system,and provides a theoretical basis for the implementation of the final audio management system finally.
The test results show that Qt audio management system can run in Win7 based on the Qt5.2 and it can also run on ubuntu Qt5.2,the code only minor adjustments,reducing the amount of code programmers,saving development costs,providing an important reference for future development.
Key words Qt;audio management system;design; implementation
系统介绍
用Qt设计实现音频管理系统在我所接触到的资料中并不多见。本系统中实现了以演唱者分类管理歌曲名,以专辑名称分类管理歌曲名,音乐文件的播放,暂停,停止,上一首,下一首,静音,音量控制,播放进度。本系统是运用可视化编程工具Qt开发的,界面美观大方,系统运行稳定。本系统可以运行于各种装有Qt5.2版本的系统中。
主要功能
本系统的功能划分如下:
以演唱者分类管理音乐文件:系统可以根据打开的文件自动按照演唱者分类加入该演唱者对应的歌曲名。
以专辑名称分类管理音乐文件:系统可以根据打开的文件自动按照专辑名称分类加入该专辑对应的歌曲名。
播放/暂停功能。双击播放列表,可以播放文件。选中播放列表中显示的歌曲名,单机播放按钮,也可以播放音频文件。
停止功能。点击停止播放按钮,可以停止播放。
上一首。点击上一首按钮,可以播放上一首歌曲。
下一首。点击下一首按钮,可以播放下一首歌曲。
静音。点击音量图标,实现静音功能。
音量控制。拖动音量滑动条,实现音量控制。
播放进度条功能。拖动播放进度条,实现快进。
目 录
摘要 i
Abstract ii
1 绪论 1
1.1 开发背景 1
1.2 系统目标 1
1.3 基于Qt程序的音频管理系统的设计的必要性 1
2 关键技术介绍 3
2.1 音频编码的简单概念 3
2.1.1 采样率和采样大小 3
2.1.2 有损和无损 3
2.1.3 音频压缩技术 3
2.1.4 频率和采样率 3
2.1.5 流特征 4
2.2 音频编码 4
2.2.1 PCM编码 4
2.2.2 WAV 4
2.2.3 MP3 4
2.2.4 OGG编码 5
2.2.5 MP3PRO编码 5
2.2.6 ACC格式 5
2.3 音频解析 5
2.3.1 MP3文件解析 5
2.3.2 WMA文件解析 7
2.3.3 OGG文件的解析 8
2.4 Qt的事件模型 8
2.4.1 事件的概念 9
2.4.2 事件的创建 9
2.4.3 事件的交付 9
2.4.4 事件循环模型 9
2.4.5 自定义事件 10
2.5 Qt核心机制信号与槽 10
2.5.1 信号 10
2.5.2 槽 11
2.5.3 信号与槽的关联 11
3 需求分析 12
3.1 需求概述 12
3.2 系统用例图 12
3.3 系统关键领域类 13
4 系统设计 14
4.1 系统介绍 14
4.2 主要功能 14
4.3 系统总体模块 14
4.3.1 系统总体模块介绍 14
4.3.2 系统层次图 15
4.4 系统界面模块介绍 15
4.4.1 主页面 15
4.4.2 以演唱者分类,显示演唱者所对应的歌曲名 16
4.4.3 以专辑名称分类,显示该专辑所对应的歌曲名 16
4.4.4 播放列表 17
4.4.5 播放控制相关按钮 17
4.4.6 播放进度条 17
4.4.7 打开按钮 17
4.5 系统功能模块划分 17
4.5.1 音频文件管理 18
4.5.2 播放控制 18
4.5.3 播放列表 19
4.6 系统开发环境 19
5 系统实现 20
5.1 树形结构显示 20
5.1.1 主要相关代码及说明 20
5.1.2 关键技术应用中问题的解决 22
5.2 播放列表 22
5.2.1 主要相关代码及说明 22
5.2.2 功能实现 26
5.3 读取MP3音频文件 26
5.3.1 主要相关代码 26
5.3.2 写代码时的思路依据 29
5.4 播放控制 29
5.4.1 主要相关功能的部分代码 29
5.4.2 媒体对象状态的简单介绍 34
5.5 播放进度条 34
5.5.1 主要相关功能的部分代码 34
6 系统测试 37
6.1 测试的意义 37
6.2 测试方法 37
6.3 测试过程 37
6.4 单元测试 38
6.5 测试总结 38
参考文献 40
致谢 41
外文原文 42
外文翻译 55
|