基于Apple-Darwin的Android客户端播放器的设计与实现-毕业论文.doc

上传人:龙*** 文档编号:146187 上传时间:2018-07-11 格式:DOC 页数:30 大小:2.40MB
下载 相关 举报
基于Apple-Darwin的Android客户端播放器的设计与实现-毕业论文.doc_第1页
第1页 / 共30页
基于Apple-Darwin的Android客户端播放器的设计与实现-毕业论文.doc_第2页
第2页 / 共30页
基于Apple-Darwin的Android客户端播放器的设计与实现-毕业论文.doc_第3页
第3页 / 共30页
基于Apple-Darwin的Android客户端播放器的设计与实现-毕业论文.doc_第4页
第4页 / 共30页
基于Apple-Darwin的Android客户端播放器的设计与实现-毕业论文.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、 本科毕业论文 题 目 基于 Apple Darwin的 Android客户端播放器的设计与实现 Design and Implementation of Android Client Player Based on Apple Darwin 姓 名 学 号 专 业 计算机科学与技术 指导教师 职称 /学位 讲师 /硕士 中国 武汉 二一七年五月 分类号 密级 华中农业大学楚天学院本科毕业论文 基于 Apple Darwin的 Android客户端播放器的 设计与 实现 Design and Implementation of Android Client Player Based on Ap

2、ple Darwin 学生姓名: 学生学号: 学生专业:计算机科学与技术 指导教师: 华中农业大学楚天学院 二 一七年五月 华中农业大学楚天学院毕业论文(设计) 原创性声明 本人郑重声明:所呈交 的毕业论文(设计),是本人在导师的指导下,独立进行研究所取得的成果。除文中已经注明引用的内容外,本论文(设计)不包含任何其他个人或集体已经发表或撰写过的作品成果。本人完全意识到本声明的法律结果由本人承担。 作者签名: 日 期: 年 月 日 华中农业大学楚天学院本科毕业论文(设计) 目 录 摘要 . I 关键词 . I Abstract . I Key words . I 1 系统概述和可行性分析 .1

3、 1.1 系统概述 .1 1.2 可行性分析 .1 2 开发环境及主要技术分析 .2 2.1 开发工具 Android Studio .2 2.2 开发环境 Android 平台 .2 2.3 开发语言 JAVA .2 2.4 RTSP 协议 .2 2.5 H.264 编解码规范 .3 2.6 HLS 协议 .4 2.7 SDP 协议 .4 2.8 G711A 音频 .4 2.9 TS 流简介 .4 2.10 流媒体技术 .5 3 系统分析与设计 .5 3.1 系统总体结构设计 .5 3.1.1 客户端与 Darwin 服务器关系 .5 3.1.2 Darwin 流媒体服务器核心流程 .5 3

4、.2 Android 客户端结构分析 .7 3.3 软件设计 .8 3.3.1 客户端软件总体设计 .8 3.3.2 功能时序图 .9 3.4 客户端 解码设计 . 11 3.4.1 直播 . 11 3.4.2 获取直播列表 . 12 3.4.3 DirectShow 采集库中的回调 . 12 3.4.4 LibEasyPlayer 库中的回调 . 13 3.4.5 网络 RTSP 流回调 . 13 3.4.6 云台方向 . 15 3.5 异常分析 . 16 4 系统测试 . 17 华中农业大学楚天学院本科毕业论文(设计) 4.1 测试方法 . 17 4.2 测试过程 . 17 4.2.1 登

5、录注册及忘记密码测试 . 17 4.2.2 设置 . 19 4.2.3 Camera 及移动设备列表 . 20 4.2.4 云台控制功能测试 . 21 4.2.5 云台远程语音功能测试 . 22 4.2.6 测试总结 . 22 5 总结 . 22 参考文献 . 22 致谢 . 23 华中农业大学楚天学院本科毕业论文(设计) 摘 要 本课题是基于 Apple Darwin 流媒体服务器整体方案中的 Android 客户端播放器部分,该客户端主要功能是可以查看在线 Camera 设备、移动设备、 NVR 所推送的实时流媒体视频,以及远程控制在线 Camera 设备的方向和发送实时语音。其主要过程是

6、,客户端向流媒体 消息管理服务器获取在线设备列表,选中某个在线设备后,客户端会发送播放请求给消息管理服务器,消息管理服务器将相应的请求发送给相对应的 Camera 设备,在收到消息后, Camera 设备推送视频流到流媒体服务器,再由流媒体服务器将视频流分发到该客户端,客户端解码后可播放对应的视频。经测试,设备的视频流进行显示、播放,非常稳定、易用 。 对云台得控制非常准确,点击相应得方向后,云台得反应速度很快,远程语音播放清晰没有杂音。 关键词 流媒体 ; 安卓 客户端 ; Apple Darwin; 远程 ; Abstract With the rapid development of m

7、obile Internet and the improvement of living standards, people require more and more safety in , as a result the system is produced. This system is mainly used to meet the safety requirement, such as checking real-time videos, controlling camera, remote telephone, recording video and so on. In this

8、paper, AHP(analytic hierarchy process) is adopted to divide the whole project into five hierarchies. Starting from the basic explanation of the project to the meaning, requirement and the significations of realizing it, the paper demonstrates the algorithmic logic and the prospect and feasibility of

9、 it. Also, the paper is divided into different parts. Is also studies the platform formation of the streaming media server based on Apple Darwin. This paper mainly focuses on the framework development system of Apple Darwin steaming media. The system is mainly adopted in Android System, and the func

10、tion is the real-time control of Camera to record video and audio andget access to mobile devices list. Key words Stream Media;Android Client;Apple Darwin;Remote;华中农业大学楚天学院本科毕业论文(设计) 1 1 系统概述和可行性分析 1.1 系统概述 随着手机的普及很多新兴行业崛地而起,发展十分迅速也引发了很多互联网的操作。发展安全性、实时性成了互联网需要调整的目标 , 在信息和通讯技术上不断开拓,构筑开放共享、敏捷高效、安全可信的信

11、息化架构系统。通过系统集成,硬件数据共享接口实现人们的要求。 在移动互联网的飞速成长下,移动客户端的使用数据量正在的逐步的逼近 PC端,而这一现象主要 的推力应归公于手机 APP应用的迅速发展。不仅如此, WIFI的覆盖范围不断拓宽,这也使得移动端 APP应用的发展空间有了更大的平台,而这点一直是 PC端比较难超越的限制。手机客户端丰富的应用程序从各方面影响着日常生活。随着智能手机的快速发展,移动应用程序铺天盖地的发展起来,日常生活已经离不开手机 APP。 智能家居伴随着移动互联网的发展,实现了用户对互联网的粘连特性。智能家居以住宅为平台,利用 综合布线 技术、网络通信技术、 安全防范技术 、

12、 自动控制技术 、音视频技术将家居生活有关的设施集成,构建高效的住宅设施与家庭日程事务的管理系统,提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境。 在快速发展的互联网前提下,衍生了安卓与智能家居的诞生。现在市面上广泛推出的萤石、小米、 Wulian等都已经在实现智能家居的发展。在互联网的支撑下,智能家居可以实现随时随地实现将 信息、数据等通过智能家居实现主动调用信息,主动向家居发出请求从而达到智能家居的移动化效果。 在该课题中,基于 Apple Darwin开发的安卓播放器主要用于智能家居对摄像头以及对移动设备的控制,用户可以根据开发的 APP进行对摄像头的控制、录音、操控等

13、功能。目前广泛应用于幼儿园监控、学校监控、家庭查看等。 伴随移动互联网的快速发展,移动客户端的使用数据量正在的逐步的逼近 PC端,而这一现象主要的推力应归公于手机 APP应用的迅速发展。不仅如此, WIFI的覆盖范围不断拓宽,这也使得移动端 APP应用的发展空间有了更大 的平台,而这点一直是 PC端比较难超越的限制。手机客户端丰富的应用程序从各方面影响着日常生活。随着智能手机的快速发展,移动应用程序铺天盖地的发展起来,日常生活已经离不开手机 APP。 本系统采用当下最为流行的 Android操作系统作为客户端端的操作系统平台,开发工具使用 Android Studio, 采用开源的 Clien

14、t开源流媒体播放器提供的 SDK接口进行开发。 1.2 可行性分析 ( 1)经济可行性分析: 本系统主要用于安卓端,做为智能家居生活所需的基础组件开发,根据网络 ping通设备后进行连接操作,并对连接的 设备、摄像头等可以进行基本的操作和处理。在经济上,做为智能家居的基本组件,价格低廉,可以依靠网络为第二发展路径,保证了操作的完整性,且可移动,可行性发展良好。 ( 2)用户使用可行性分析: 本系统研发成功之后 安装 APP在手机端展示使用,在用户拥有 APP以及网络连接成功的许可下,对智能家居组件可以实现基本的操作,本系统主要用于对安卓播放器的使用,对播放器进行配置、录音、移动摄像头方向等,可

15、以进行一个基本的操作。用户只要在手机上安装 APP客户端就可以使用本系统,方便而实用。 华中农业大学楚天学院本科毕业论文(设计) 2 2 开发环境及 主要技术分析 2.1 开 发工具 Android Studio Android Studio是 Google官方基于 Intelli JIDEA开发的一款 Android应用开发工具, Android Studio提供了集成的 Android开发工具用于开发和调试。在 IDEA的基础上, Android Studio提供:基于 Gradle的构建支持; Android 专属的重构和快速修复;提示工具以捕获性能、可用性、版本兼容性等问题;支持 Pr

16、oGuard和应用签名;基于模板的向导来生成常用的 Android应用设计和组件;功能强大的布局编辑器,可以让你 拖拉 UI控件并进行效果预览。 2.2 开发环境 Android平台 Android是一组面向移动设备的软件包,它包含一个操作系统、中间件和关键应用程序、 Android SDK的预览版提供必需的开发工具和应用程序接口,基于这些,我们就可以使用编程语言在 Android平台上开发应用程序了。 Android系统架构基本分为应用( Application)、应用框架( Application Framework)、库函数( Libraries)、运行时环境( Android Runt

17、ime)、 Linux内核( Linux Kernel)。 Android平台提供了一个自由开发的环境,不会受到各种规则的阻扰。在这种环境下开发人员在此基础上会开发出各种别致的应用程序,但同时也带来一个大的难题,如何控制血腥、暴力、情色方面的程序和游戏。 2.3 开发语言 JAVA Java是一门 面向对象 编程语言,不仅吸收了 C+语言的各种优点,还摒弃了 C+里难以理解的 多继承 、 指针 等概念,因此 Java语言具有功能强大和简单易用两个特征。 Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 Java具有简单性、面向对象

18、、 分布式 、 健壮性 、 安全性 、平台独立与可移植性、 多线程 、动 态性等特点 Java可以编写 桌面应用程序 、 Web应用程序 、 分布式系统 和 嵌入式系统 应用程序等。 2.4 RTSP协议 RTSP( Real Time Streaming Protocol) 实时流媒体协议是用于 在协议客户端和协议服务器端之间创建实时流回话的一个协商过程,该协议是 TCP/IP协议栈体系里面的一种应用层的传输协议。协议客户端能够利用实时流媒体协议来对协议客户端以及协议服务器之间存在的多条流媒体串流进行控制,这样就能够实现对于音视频流数据信息的点播以及传输控制等操作。 当我们需要创建并且对一个

19、或多个时间的同步且连续的音视频的媒体数据流控制的时候,我们需要用到 RTSP协议,实际上就是实时流协议。为了能够实现实时音视频数据的按需分配流和受控(快进,暂停),这套协议之中给我们提供了能够进行实现的框架。这样的实 时流控制协议可以用在对多个数据发送的会话,通过 UDP或者 TCP方式,以及基于 RTP发送方式来实现。 RTSP协议在交互过程中的步骤如下:请求服务端将相关的服务请求发给服务提供端,当服务提供端受到了相关的清求之后对其进行处理,然后把回复消息发送到请求服务端,请求服务端对回复进行接收然后对其进行处理。请求服务端既能是客户端又能为服务器,同样的,服务提供端既可以是客户端又能为服务

20、器。在进行交互的过程中,发送的请求信息中主要包括请求的执行方法和所需操作的参数。 RTSP协议方法的详细说明如表 2-1所示。 华中农业大学楚天学院本科毕业论文(设计) 3 表 2-1 RTSP协议的方法 交互方法 交互方向 方法作用 OPTIONS 客户端、服务器端 均可发送 方法请求端查询方法响应端所支持的方法列表 DESCRIBE 客户端发送服务器 方法请求端请求方法中 URL参数所指定的媒体描述信息内容 ANNOUNCE 客户端、服务器端 均可发送 当从 RTSP客户端发往 RTSP服务器端,方法请求端将 URL参数所指定的媒体描述信息发送到方法响应器端。当 RTSP服务器端将媒体描述

21、信息发送到 RTSP客户端,方法请求端将会更新会话的描述信息。 GET_PARAMETER 客 户端、服务器端 均可发送 方法请求端请求检查 URL参数指定媒体的参数值 SER_PARAMETER 客户端、服务器端 均可发送 方法请求端声明设置 URL指定流的参数值 PAUSE 客户端发送服务器 方法请求端请求临时终端 URL指定媒体的传输 REDIRECT 服务器发送客户端 重定向请求,方法请求端通知方法响应端连接到 另一服务器地址 SETUP 客户端发送服务器 方法请求端指定方法中 URL参数所标志的媒体的传输机制 PLAY 客户端发送服务器 方法请求端请求方法响应端将媒体以 SETUP所

22、指定的传输机制 进行发送 TEARDOWN 客户端发送服务器 方法请求端请求停止 URL指定的流发送,释放相关资源 2.5 H.264编解码规范 标准化的视频压缩技术的出现使得图像技术得到了更为广泛的应用 , 例如 DVD视频和数字电视彻底改变了家庭娱乐以及广播电视的传统模式。图像视频在互联网中的应用与 MPEG标准中的 MPEG4有密不可分的联系 , ITU-T H.263标准是当前大多数视频会议使用的视频压缩标准。 MPEG4视觉标准和 H.263标准是在 1995年开始制定的 , 视频编码以及视频压缩技术是这两种标准建立的技术基础 , 对此 类标准进行负责的是电影专家集团以及视频编码专家

23、组。在这两种标准的开发进行到后期的时候 , 出现了一套比和更加优秀的新的标准 , 也就是高级视频编码标准 , 这套标准所提供的图像视频压缩效果更加优秀 , 同时其在保证比特率非常低的同时还保证了高品质。 在 2001年 , 国际标准化组织中的运动图像专家组 ( MPEG) 逐步认知到 H.26L标准潜在的优点 ,于是联合了视频编码专家组以及动态图像专家组共同成立了一个联合视频组 , 并对的优化以及未来的发展进行深入的研究。实现了把 模型 发展成一个更加完善和健全的国际标准协议规范草案 , 高级视频编码 就是这套新标准的官方名称。是这套新标准之前的拟定工作名称 , 是其国际电联证件号码 , 这两

24、个早已经先入为主 , 家喻户晓。 H.264编解码协议规范可以用四个方面概括其技术特点 , 第一个方面是关注实用性问题 , 摒弃了原本这类编解码技术里面的一些存在着缺陷的编码方案 , 如机遇内容的编码等 , 以更加简洁的格式 ,以提升编码效率为目的 , 从而运用合适的技术。第二方面则是使用了多种的新算法和新技术 , 在混合编码的基础上 ,新增 了 4*4整数变换技术、基于内容的变长编码技术及多帧预测和帧内预测技术等。第三方面 , 对于算法而言 , 突出了信道的特点。从 分层的角度来看 , 信道编码和信源编码在形式上采取了分离。第四方面则是使用了针对 IP以及无线网络的相关策略 , 为了方便那些

25、经过压缩之后的视频在丢包率较高和误码率较高的网络环境之中进行传输 , 使用了一些用来对差错进行消除的工具。 华中农业大学楚天学院本科毕业论文(设计) 4 所具有的主要优点如下:图像质量非常高。 H.264标准想要实现的是在对图像进行还原的过程之中能够保持较高质量,同时还为此采用了一系列的算法,其目的为实现图像的高质量;为了能够和不同的信道相适应,以及各种应用形式,区分各种图像层次从而采用相应的算法;在熵编码等步骤中,为达到较低比特率的目标从而采 用节约码流的算法;系统的健壮性增加, H.264提供了掩盖错误的组件并应用了环路滤波结构。 2.6 HLS协议 HLS协议即 HTTP Live St

26、reaming。一个可实现流媒体的直播和点播的基于 HTTP的流媒体传输协议。 HLS点播与分段 HTTP点播十分相似,其差异就在于 HLS点播的分段很小。 HLS协议与其他流媒体协议差异最大的地方就是在流媒体数据传输时,客户端获取到的,并非完整的数据流。 HLS协议实现直播的原理是服务器将流媒体数据进行切片,一段流媒体数据被分为多个连续,短时长的 TS文件,客户端连续下载播 放 TS文件,服务器无时无刻都在进行 TS切片操作,新生成的流媒体数据马上就被服务器切片,客户端只需要按顺序播放 TS文件即可实现直播。综上所述,我们可以理解为 HLS实现直播的方式是通过点播的形式。而 HLS的不足在于

27、采用了切片技术不可避免直播时的延迟会比其他流媒体直播协议高。 2.7 SDP协议 会话描述协议 SDP( Session Deseription Protocol) , SDP协议本身属于一种文本性质的协议,该协议比较简单,且其语法能够进行扩展。 SDP文件就是 SDP协议的文件形态,服务器在提供音视频流数据的同 时还会产生对音视频媒体属性进行描述的 SDP文件,这些音视频媒体的属性包含了音视频在对数据进行传输的时候所采用的编码协议规范,音视频媒体流的数量,协议版本号信息,流式数据服务器的具体地址等。客户端请求到了音视频流数据之后,能够通过对 SDP协议描述的媒体属性信息进行解析,从而实现配置

28、客户端播放器软件。 2.8 G711A音频 G.711是国际电信联盟 ITU-T定制出来的一套语音压缩标准, 它代表了对数 PCM抽样标准,主要用于电话。它主要用脉冲编码调制对音频采样,采样率为 8k每秒。它利用一个 64Kbps未压缩通道传输语音讯号。 起 压缩率 为 1: 2,即把 16位 数据压缩 成 8位。 G.711是主流的 波形声音 编解码器。 G.711标准下主要有两种压缩算法。一种是 Microlaw Algorithm,主要运用于北美和日本;另一种是 A-law algorithm,主要运用于欧洲和世界其他地区。其中,后者是特别设计用来方便计算机处理的。 2.9 TS流简介

29、TS一般我们认为是 MPEG-2TS标准,它是一种非常成熟的数据传输技术,它是对音视频数据复用的一种说明,音视频数据经过 TS封装之后,再通过网络 IP协议栈进 行二次封装,然后就 可以传输了。但如果需要进行一些互动性的内容,就需要对它进行扩展。 TS over IP的传输过程如图 2-2TS的传输过程所示。 图 2-2 TS over IP的传输过程 这种传输方式同样采用了 C/S的方式,另外由于应用在 IPTV领域,控制层可以使用 RTSP协议或者 HTTP协议。在 DSS服务器中,为了减少网络抖动更好地控制传输流量,我们对 UDP协议数据包又增加了关于 RTP协议数据封装。这样系统就能够有效的减少网络丢包,视频卡顿等影响客户体验的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。