《基于Android平台的音视频流媒体播放器》
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1. 绪论 (2)
1.1. 提出问题 (2)
1.2. 研究现状 (2)
1.3. 研究思路与方法 (4)
2. Android操作系统整体结构分析 (6)
2.1. Android系统简介 (6)
2.2. Android整体结构 (7)
2.2.1. Android 架构 (7)
2.2.2. 特征 (9)
2.3. Android 应用组件 (9)
2.3.1. 活动(Activity) (10)
2.3.2. 服务(Services) (11)
2.3.3. 广播接收者(Broadcast receivers) (12)
2.3.4. 内容提供者(Content providers) (12)
2.4. Android NDK工具 (13)
3. FFmpeg流媒体平台介绍与研究 (14)
3.1. FFmpeg简介 (14)
3.2. FFmpeg 的编译与运行 (14)
4. 流媒体播放器应用分析 (16)
4.1. 系统功能需求分析 (16)
4.2. 系统整体结构需求分析 (17)
4.3. 系统业务流程分析 (18)
4.3.1. 媒体播放模块业务流程 (18)
4.3.2. 媒体文件管理模块业务流程 (19)
4.3.3. 系统设置模块业务流程 (21)
5. 流媒体播放器应用设计 (22)
5.1. 系统设计模型 (22)
5.2. 系统UI设计 (23)
5.2.1. 媒体播放模块设计 (23)
5.2.2. 媒体文件管理模块设计 (25)
5.2.3. 系统设置模块设计 (29)
5.3. 系统数据库设计 (31)
5.3.1. SQLite简介 (31)
5.3.2. 播放器库表说明 (31)
6. Android平台的流媒体播放器应用实现 (33)
6.1. Android 应用程序开发 (33)
6.1.1. Android 开发环境 (33)
6.1.2. Android 应用开发特点 (34)
6.2. FFmpeg移植 (36)
6.3. FFmpeg音视频解码 (39)
6.4. 流媒体播放功能的开发与实现 (41)
总结 (46)
致谢 ..................................................... 错误!未定义书签。参考文献 .. (47)
基于Android平台的音视频流媒体播放器
摘要
伴随着多媒体技术与通信技术的不断崛起,结合网络、移动终端、多媒体技术三者为一体的视频监控技术有了迅猛发展,越来越多的多媒体客户端利用移动网络实现流媒体服务。在这一背景下,针对移动网络和移动终端的特点,提出移动流媒体客户端的解决方案很有现实意义。
本论文试从理论与实践两方面深入探讨基于Android操作系统的移动流媒体播放器的研究与设计。首先阐述了Android系统整体的框架结构,分析了Android主要四大应用组件的概念及其应用,剖析了Android NDK对C/C++的编译;其次对开源流媒体框架FFMPEG进行了深入的描述,阐述了其对于在windows下的编译和运行,剖析了FFMPEG对于android平台的移植,使得播放器在流媒体文件的解码上有了更大的扩展;最后根据已分析的需求开始进行播放器的设计、开发和实现。在播放器开发过程中利用Android多媒体框架OpenCore和移植到Android平台上的FFPMEG来实现对音视频流媒体文件的解码以及实现音视频同步机制。
关键词:安卓;FFMPEG;流媒体;媒体播放器;移动通信
1.绪论
1.1.提出问题
伴随着多媒体技术与通信技术的不断崛起,结合网络、移动终端、多媒体技术三者为一体的视频监控技术有了迅猛发展,越来越多的多媒体客户端利用移动网络实现流媒体服务。在这个拥有庞大用户群的时代,流媒体服务有着巨大的市场发展潜力。在这一背景下,基于移动终端与移动网络的特点,提出实现移动流媒体客户端的方案具有十分现实的意义。
在手机增值业务市场,彩信、彩e、短信等虽然有了交互、24小时不间断等不同于传统媒体的特点,但它们显示的内容主要以静态的文字、图像为主,相对影响其对于媒体作用的发挥。随着用户对需求的不断提升,在多媒体中需要更好地融合文字、声音和图像,以弥补短信中单调、缺乏色彩的不足,真正的让用户“振聋发聩”,感受一个逼真形象、有声有色的美丽世界。
正由于有着这种极大的用户需求,从而加快了流媒体技术的实现。它的最大特点之一就是可以在播放器中边下载边播放,无需下载整个媒体文件,实现了观看电视、电影或在网上点播的梦想。现在,人们在相对较好的网络环境下就能够在线观赏到高品质的、连续的音频和视频电视节目。在大互联网的时代下,流媒体的产生是必然性的,并且会给我们生活和工作带来巨大的影响。
本论文结合FFmpeg开源代码中解码流程,提出了移动终端流媒体播放器基于分层体系架构的设计方案。该设计的特点是在底层屏蔽不同类型文件解码时对媒体流处理的差异,最终在Android平台上实现该播放器。
1.2.研究现状
由于互联网的迅猛发展,流媒体技术在其基础上的进展也是日新月异。流媒体的边播放边下载的特点,不仅不再让用户烦恼在漫长下载的等待中,并且明显降低了多媒体系统中的存储。它多被应用在互联网的信息服务,并成功为各项应用进行多媒体的信息传输。
国内外学者与专家通过对流式传输技术、编解码技术和音视频网络传输协议等技术的不断研究和实践,在诸多方面上都取得了显著的成就。1996年,IETF制定了网络控制和网络传输协议,其中,包括实时控制协议、实时传输协议族和实时传输控制协议,