课程设计(论文)-基于JAVA的视频会议系统设计与实现(含源程序).doc
《课程设计(论文)-基于JAVA的视频会议系统设计与实现(含源程序).doc》由会员分享,可在线阅读,更多相关《课程设计(论文)-基于JAVA的视频会议系统设计与实现(含源程序).doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录目 录I第一章 概述11.1 本课题的研究背景11.2 本课题的研究意义11.3 本报告的目的、内容及作者的主要奉献21.3.1 本报告的目的21.3.2 本报告的内容21.3.3 作者主要奉献21.4 国内外相近研究课题的特点及开展趋势21.5 现行研究存在的问题及解决方法31.5.1 需求分析问题31.5.2 系统设计问题31.5.4 代码实现问题31.5.5 界面设计问题31.6 本课题要到达的设计目标3第二章 系统分析4可行性分析42.1.1 技术可行性42.1.2 操作可行性42.2 采用的关键技术介绍42.2.1 JAVA多媒体技术42.2.2 JAVA 网络编程技术52.3
2、 系统需求分析6第三章 系统概要设计73.1 系统总体设计73.1.1 运行环境73.1.2 系统流程73.1.3 系统结构83.2 系统接口的概要设计93.2.1 效劳器端设计93.2.2 客户端设计93.3 系统出错处理设计103.3.1 出错信息及处理方法10.2系统维护设计10第四章 系统详细设计114.1 文本聊天模块的详细设计114.2 视频通信模块的详细设计124.2.1 网络视频会议系统结构的详细设计124.2.2 视音频传输的详细设计134.2.2 多播的详细设计144.3 系统界面的详细设计14第五章 系统实现155.1 系统开发环境155.2 系统实现155.2.1 效劳
3、器端套接字建立155.2.2 客户端套接字建立155.2.3 视音频发送165.2.4 视音频接收17第六章 性能测试与分析186.1 测试实例测试集的研究与选择186.2 性能分析18第七章 课程设计总结197.1 系统总结197.1.1 系统特点介绍197.1.2 系统存在的问题197.2 系统改良建议或设想197.3 课程设计心得体会19参考文献21第一章 概述1.1 本课题的研究背景随着人们对视频和音频信息的需求愈来愈强烈,追求远距离的视音频的同步交互成为新的时尚。近些年来,依托计算机技术、通信技术和网络条件的开展,集音频、视频、图像、文字、数据为一体的多媒体信息,使越来越多的人开始通
4、过互联网享受到网上生活、远程医疗、远程通讯的乐趣,缩短了时区和地域的距离。远程通信的各种优势给人们带来的方便也促使人们对这一领域进行更加深入的探索。基于不同平台以及不同开发工具的网络视频会议系统层出不穷。视频会议系统在我国开始开展的初期,政府部门的应用就占据了重要位置,覆盖中央到直辖市和各省会城市的国家公众视频会议骨干网已经完工。自1994年9月投入使用以来,国务院等机关先后利用该网召开了三百屡次全国范围的可视通讯会议。整个系统运行情况良好,得到了国家领导人和各部委领导的高度赞扬。近年来随着电子政务工程的逐步推进,政府部门更加关注视频会议系统建设。在经济兴旺地区例如浙江、山东、广东,视频会议网
5、已覆盖到地市级城市,有的甚至覆盖到县一级。除各级政府之外,其它诸如检察院、法院、公安和和水利等职能部门也是视频会议系统的重要用户。视频会议系统还更广泛的应用于现代企业中。信息技术的迅猛开展,改变了各行各业的传统工作模式。信息的无限量扩大,交通工具的便捷,互联网技术的充分应用等导致了行业间竞争的全球化,这就要求现代部门、企业要具备更加灵敏的神经,更扁平化的管理,更快速的反响和决策,更贴切的市场宣传和效劳。所有这一切是由于信息技术的开展带来的,同样也要求有先进的信息技术来提高部门、企业的竞争力。视频会议系统的可以跨越空间距离、灵活多样的面对面的交互,适应现代社会的方便、快捷、高效、快节奏,它为用户
6、带来的经济效益,使视频会议系统的使用正在向各行各业渗透,给这一市场注入了新的活力。1.2 本课题的研究意义从实用方面:视频会议系统是指通过现有的各种电气通讯传输媒体,将人物的静态/动态图像、语音、文字、图片等多种信息分送到各个用户的计算机上,使得在地理上分散的用户可以共聚一处,通过图形、声音等多种方式交流信息,增加双方对内容的理解能力。视频会议系统对于减少差旅费用等机构开支;提高机构运作效率;提高机构形象有利于加强对外交往;有利于政策方针的迅速准确传达;有利于广泛收集意见;有利于加强内部交流;员工培训等方面带来巨大的直接和间接效益。由于视频会议系统的这些优点,使得视频会议系统备受关注。并且已经
7、有越来越多的人利用这种方式进行交流沟通,不仅方便而且拉近了人与人之间的距离。现在的一些软件像QQ以及MSN等软件为人们的视频聊天提供了许多方便。从学习知识方面:通过做这样一个课题,对学习无疑是十分有益的。尤其在学习了JAVA编程之后更有欲望对其进行深层次的学习,并且可以结合各方面的知识进行多方面的学习,积累更多知识。1.3 本报告的目的、内容及作者的主要奉献 本报告的目的本报告对基于JAVA的点对点视频会议系统做出详细地需求分析,并对其设计与实现过程进行详细的论述。目的在于说明本视频会议系统如何能够实现多人在线举行会议。 本报告的内容本报告内容上从视频会议的开发背景开始论述,研究并确定了开发环
8、境,并对该视频会议系统的需求做出了详细的分析,根据其需求及开发工具的功能特性确立课题的设计方案及开发策略。并对课题的概要设计、详细设计以及代码实现过程和后期的测试过程,须改良的局部都进行了详细的说明。 作者主要奉献本报告中,作者的主要奉献:对该视频会议系统进行可行性分析、需求分析、功能模块设计、各个功能的代码实现、良好用户操作界面的设计与实现、对各功能实现结果的测试等。 国内外相近研究课题的特点及开展趋势视频会议是近几年才开展起来的多媒体通信技术。视频会议可实时传送声音、图象;使每位与会者都有身临其境的感觉。此外,它还提供文件 、静止图文传送、白板等一系列辅助效劳工程。视频会议最初是点对点的会
9、议传输point to point,现已开展到一点对多点(point to multi points)及多点到多点(multi points to multi points)阶段。 视频会议系统的关键技术 :1多媒体信息处理技术2宽带网络技术3分布式处理技术视频会议实现点对点、一点对多点、多点之间的实时同步交互通信。 视频会议的开展趋势:1. 系统功能多元化具有图文同传功能:除视音频外,可以方便地传送和显示电脑文档用于培训、汇报、交流;视频会议与 系统浑然一体:可方便接入会议 系统,通过 、 也可参加会议等。2. 系统组网多样化,有网络就能开会。3. 图像清晰化:视频会议需要更优异、更清晰、更
10、成熟的图像编解码技术。4. 使用、维护简捷化:易于使用,可自行组织、控制会议;进行远程管理、远程维护、升级,降低维护本钱;更新设计,大幅提高系统稳定性。 现行研究存在的问题及解决方法 需求分析问题开始对课题所研究的问题不是很明确,如其应用范围,具体功能等。通过老师的讲解及指导和查相关资料得以解决。 由于几乎没有使用过视频会议,对其的了解也不太深刻,老师给讲解了一些内容,在网上下载了一个视频会议系统的软件试用了一下,并查阅了许多相关资料,这才可以对该课题进行需求分析。 系统设计问题 在该视频会议系统的设计上遇到了很多问题:如何准确的定位网络上一台或多台主机,如何找到主机后如何可靠高效的进行数据传
11、输;建立网络之间会话;图像的采集、压缩及编码;网络视频的传输;系统的界面设计等问题。 代码实现问题 在具体的功能实现上,编码遇到了极大的困难。因为该课题需要用到很多以前从未接触到的知识,如需要用JMF,RTP协议传输视频,JAVA socket编程,如何采集图像等知识。在用JAVA语言编码过程中,因编程标准及其他各种语法问题出现了很多错误,通过老师指导和查阅资料得以解决。 界面设计问题本课题采用eclipse开发平台,装载ve插件后,用其进行图形界面的设计和实现。并且在试用所下载的视频会议系统后,有很大心得,根据其界面的合理性,模仿设计本课题中界面。1.6 本课题要到达的设计目标本课题致力于实
12、现实现点对点的视频传输并完成根本功能如动态视频传输、文本传输等,提供多人同时在线举行会议。包含以下内容:1.动态视频传输:视频双方可以看到对方的动态图像。2.声音传输:在视频或非视频状态下可以听到对方的声音,进行语音交流。:可以通过文本输入进行交流。第二章 系统分析本课题为实现多人在线同时举行会议的功能,对该视频会议系统做了详细的系统分析。包括系统的可行性分析、对开发用到的关键技术的介绍以及系统的需求分析。可行性分析.1 技术可行性网络视频会议是顺应市场的需求而设计的。采用JAVA 编程语言,用eclipse开发平台实现。用到多媒体技术JAVA 多媒体框架JMF,视频和音频用TRP协议传输,用
13、到Socket编程技术,多播技术。网络视频会议首先是基于网络传输的,那么就必然要依托于JAVA网络编程的相关知识。在这根底上,由于相关音频、视频,所以还要涉及到JAVA的多媒体技术的相关知识,即JMF (Java Media Framework)。利用JAVA的这个组件,我们可以方便的处理多媒体文件,并基于RTP协议进行实时传输。.2 操作可行性系统运行于Windows环境,其用户操作界面友好,便于操作,适合视频会议流程。系统的根本操作如下:1启动效劳器;2用户连接到效劳器;3进行视频连接;4举行会议;5会议完毕,退出系统。2.2 采用的关键技术介绍 JAVA多媒体技术JAVA多媒体技术的核心
14、是Java媒体框架 JMFJava Media Framework。JMF中包含了许多用于处理多媒体的API,它是一个很好的多媒体编程工具,同时也是一个相当复杂的系统。JMF的主要应用功能之一是多媒体数据流在网络中的实时传输,其RTP包中提供的RTP包中提供的RTPManagerRTP管理器、TrackContol轨道控制器、SendStream发送数据流、ReceiveStream接收数据流、InetAddressIP地址和SessionAddress会话地址等类使得编写网络实时数据传输变得容易,基于RTP协议的RTP应用程序框架为实现流媒体在网络中实时传输提供了Java程序框架,应用它可方
15、便的实现多媒体数据流在网络中的实时传输。实时传输协议RTP是在Internet网上针对多媒体数据流的一种传输协议,RTP被定义为在一对一获一对多的传输情况下工作的,其目的是提供时间信息和实现多媒体数据流的同步。RTP由RTP和RTCP实时控制协议两个局部组成。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,可不提供流量控制或拥塞控制,它依靠RTCP提供这些效劳。 JAVA 网络编程技术网络编程的目的就是指直接或间接地通过网络协议与其他计算机进行通讯。网络编程中有两个主要的问题,一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输。在TCP/IP协议中I
16、P层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机。而TCP层那么提供面向应用的可靠的或非可靠的数据传输机制,这是网络编程的主要对象,一般不需要关心IP层是如何处理数据的。目前较为流行的网络编程模型是客户机/效劳器C/S结构。即通信双方一方作为效劳器等待客户提出请求并予以响应。客户那么在需要效劳时向效劳器提出申请。效劳器一般作为守护进程始终运行,监听网络端口,一旦有客户请求,就会启动一个效劳进程来响应该客户,同时自己继续监听效劳端口,使后来的客户也能及时得到效劳。数据在Internet中是以有限大小的包形式传输的,这些包称为数据报datagram.
17、但是,由于数据报长度有限,通常必须将数据分解为多个包,在目的地再重新组合。有可能一包或多个包在传输中丧失或遭到破坏。由于网络视频会议的实时性要求,不可能让视频传输的每一贞都准确无误。而TCP协议正是为数据可靠传输而设计的。那么选择UDP协议,即用户数据报协议User Datagram Protocol,UDP,就成为一种必然。Socket是网络上运行的两个程序间双向通讯的一端,它既可以接受请求,也可以发送请求,利用它可以较为方便的编写网络上数据的传递。在Java中,有专门的Socket类来处理用户的请求和响应。利用Socket类的方法,就可以实现两台计算机之间的通讯。在Java中Socket可
18、以理解为客户端或者效劳器端的一个特殊的对象,这个对象有两个关键的方法,一个是getInputStream方法,另一个是getOutputStream方法。getInputStream方法可以得到一个输入流,客户端的Socket对象上的getInputStream方法得到的输入流其实就是从效劳器端发回的数据流。GetOutputStream方法得到一个输出流,客户端Socket对象上的getOutputStream方法返回的输出流就是将要发送到效劳器端的数据流,其实是一个缓冲区,暂时存储将要发送过去的数据。多播通信是一类特殊的IP地址D类IP地址这些IP地址239.255.255.255这间,其
19、中224.0.0.255是留作为多播路由信息使用的。此外,所有其它D类IP地址都可以随便进行通信。2.3 系统需求分析由于政府部门和企事业单位对视频会议系统有强烈需求,并且人们对视频和音频信息的需求愈来愈强烈,所以有必要开发一个网络视频会议系统。并且近些年来,依托计算机技术、通信技术和网络条件的开展,集音频、视频、图像、文字、数据为一体的多媒体信息,使越来越多的人开始通过互联网享受到网上生活的乐趣,缩短了时区和地域的距离。远程通信的各种优势给人们带来的方便也促使人们对这一领域进行更加深入的探索。现代社会中信息的无限量扩大,交通工具的便捷,互联网技术的充分应用等导致了行业间竞争的全球化,这就要求
20、现代部门、企业要具备更加灵敏的神经,更扁平化的管理,更快速的反响和决策,更贴切的市场宣传和效劳。所有这一切是由于信息技术的开展带来的,同样也要求有先进的信息技术来提高部门、企业的竞争力。视频会议系统的可以跨越空间距离、灵活多样的面对面的交互,适应现代社会的方便、快捷、高效、快节奏,它为用户带来的经济效益,使视频会议系统的使用正在向各行各业渗透。视频会议系统是支持人们远距离进行实时信息交流、开展协同工作的应用系统。视频会议系统实时传输视频与音频信息,使协作成员可以远距离进行直观、真实的视音频交流。另一方面,利用多媒体技术的支持,视频会议系统可以帮助使用者对工作中各种信息进行处理,如共享数据、共享
21、应用程序等,从而构造出一个多人共享的工作空间。所以,开发一个网络视频会议系统是很有必要的。第三章 系统概要设计3.1 系统总体设计 运行环境操作系统:Windows 2000/XP/2003 等安装JDK安装JMF安装eclipse安装摄像头 系统流程 效劳器端流程如图3.1所示: 处理会议过程开 始开启效劳器开启失败等待用户连接 关闭效劳器结 束连接成功图3.1 效劳器端流程图 客户端流程如图3.2 所示:结 束开 始登 录登录失败视频连接连接失败 举行会议 进入界面视频 聊天 退 出共享连接成功登录成功图3.2 客户端流程图 系统结构通过学习和研究,我们通过多播技术实现了多点对多点的视频会
22、议系统。整个系统包括这样几个模块:文本聊天模块:该功能是网络视频会议的最根本的功能。通过该模块实现了会议成员的聊天通信。首先,每个会议职员通过与效劳器连接参加到会议组,同时通过给自己取昵称将自己的昵称发送给效劳器,让会议组的每个成员了解自己的身份。会议成员在聊天的时候不是将文本发送给某个人,而是发送给整个会议组。视频通信模块:该功能利用JMF软件开发包,基于RTP协议实时发送和接受视频流。并且利用JMF多媒体组件构造播放器,进行实时播放。在实现了点对点的根本视频传输的根底上,我们应用了多播技术。当某个会议成员开始进行视频连接以后,他能通过视频会议系统看到所有其他已经建立视频连接会议成员。3.2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 论文 基于 JAVA 视频会议系统 设计 实现 源程序
限制150内