Universal Media Player 结题报告 项目组成员:曹汪洋 徐德权 许立剑 陈 静 贺文超 院 翔 11/6/2018
主要内容 项目简介 项目目标 完成状况 项目演示
项目简介
项目简介 UMP(统一媒体资源播放器) 旨在帮助用户建立一个高效的设备互联网络,形成逻辑上完全统一的媒体资源库。用户可以在任何可接入网络的设备上访问其它个人拥有权限的设备资源,此外实现了对于多种媒体资源的播放功能。
We can get everything whenever we want to! 项目简介 为了尽量透明地实现这一目的,Universal Media Player设计了合理的软件系统结构,提出了高效的设备发现协议,实现了基于JavaScriptMVC框架的友好用户图形界面。真正实现了对于多种资源的管理和浏览功能。 We can get everything whenever we want to!
项目目标
项目目标 帮助用户建立一个高效的设备互联网络,形成逻辑上完全统一的媒体资源库。用户可以在任何可接入网络的设备上访问其它个人已拥有权限的设备资源 多设备间媒体资源的相互管理
How does it work?
UMP 实 现 机 制 网络拓扑图
完成状况
完成状况 实现了Web实现跨设备资源共享功能 WebApp上图片、音频、视频播放功能 对于安装了WebApp软件的设备群,用户只需要通过其中一台设备打开实现跨设备资源共享功能的WebApp WebApp上图片、音频、视频播放功能
How can we do it?
Contents WebApp AccountServer DeviceDetector CGI
Web App WebApp Development部分的设计与实现。该模块主要包括网站的页面布局设计和实现以及部分功能的实现。该模块主要实现了多媒体资源,如图片、音频和视频的浏览、播放功能。并且为非鼠标式操作的设备提供了按键控制功能。本项目的主要目的是探索新技术在实际项目中的应用,故该部分采用比较新的JMVC框架进行开发。 应用到的技术除了基本的HTML,CSS,JavaScript外,还涉及到了Ajax,Json,并且较多的应用了Html5和CSS3的新特性。
Account Server 使用Java语言、MySql数据库 该模块主要内容: Server端部署在学校的一个公网服务器上,主要分成两个部分,分别叫做DeviceServer、WebServer。DeviceServer主要功能是发现电子设备上线和下线,并且通知其他的属于统一账户的在线电子设备,还要接收更新的设备信息并发送给其他设备。因为设备与设备之间是通过设备信息里的ip信息进行直接互连的,Server端只负责向它们提供设备的相关信息。WebServer是一个用户管理中心,主要负责账户管理、设备认证等功能。
WebCGI 该模块主要功能是接受WebApp对数据的请求,并向前端返回数据,其中包括对文件夹的扫描,文件类型的判断,对设备列表的扫描,各种请求都被透明地执行,并且返回JSON格式的响应信息。这部分模块采用C++语言编写而成,并配合libcgi,json-c等开源的代码,很好地对JSON格式数据封装和解析。
DeviceDetector 该模块主要功能是与账户服务器一起协作,完成同一账户下不同设备间的上线、离线,以及其他设备信息的实时共享,并将这些信息以JSON格式储存在本地文件中,以供CGI模块使用。这部分模块采用C语言编写而成,在网络通信方面,主要使用了Websocket协议,由libwebsockets库提供此功能;而JSON解析和构建方面,则由JSON-C库完成,程序对其进行了封装以满足通信协议的需要。
项目演示
浏览iphone4中资源时的运行截图
浏览iphone4中图片时的运行截图
浏览iphone4中音乐时的运行截图
浏览iphone4中视频时的运行截图
Let’s have a try!
特色与创新 我们发明了实时动态组网时的设备发现方法(已申请国家发明专利),实现自动设备发现协议ADDP 我们探索了服务器向客户端主动推送的业务模式,并仔细研究了WebSocket协议 我们使用JSONP方式的跨域访问技术 我们使用HTML5的新特性来实现多媒体资源的播放
UMP全体成员在共同期待中......
Thank you! UMP项目组