欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 毕业论文 > 计算机毕业论文

基于网络的语音视频多人聊天系统_毕业论文怎么写

时间:2013-04-03  作者:刘成群
(15) 用户动作表UserAction,用于保存用户登录系统的信息,如:上线、下线、退出等。其表结构如表15。

表15 UserAction

(16) 用户礼品表UserGift,用于保存用户得到的礼品信息。其表结构如表16。

表16 UserGift

5 系统实现

5.1 UDP通讯

采用TCP/IP协议进行通讯虽然稳定性好也不会发生丢包事件,但是对于同时会有大量用户进行连接的系统来说是不可取的,所以在该系统的通讯上采用的是无连接的UDP协议,不过由于UDP包的不可靠性,所以将WinSock的UDP套接字封装,以实现大数据包的传送,以及UDP包的超时重发,以减低丢包的可能性。

5.2 视频捕捉及发送

在进行视频捕捉之前必需要先创建一个捕捉窗口,并应以此为基础进行所有的捕捉及设置操作。捕捉窗体可用AVICap窗口类的“CapCreateCaptureWindow”函数来创建毕业论文怎么写,其窗口风格可设置为WSCHILD和WS_VISIBLE参数,然后将捕捉窗口与设备相关联取得视频信号,并调置视频设备的属性,最后使用捕捉窗回调函数来处理从设备捕捉到的视频数据,将视频数据通过MPEG4算法压缩后,然后再分解成小的UDP包发送出去论文下载。

5.3 视频接收

客户端收到来自中转服务器的视频数据后,必须将来自中转的小的视频数据包拼装成完整的图像数据包,然后再通过MPEG4算法解压缩后一帧一帧的画到面板上去,当每秒钟画的帧数多后就会形成活动的画面,并且在画的过程中可以将图片用一定的算法放大或缩小,以满足用户把视频窗体放大或缩小时的显示要求。

收到小的UDP包后,根据包里的序列号,将多个UDP包组装成一个大的UDP包,然后才能将数据解压缩成图像。

当数据被解压缩成一帧帧的图像后,先将帧图像移动到BITMAP中去,如果缩放比例为1:0,直接将源图复制到显示面板上,否则的话根据比例用算法将图进行缩放操作后复制到显示面板上。

5.4 非主窗体最小化显示在任务栏

程序打开时任务栏里一般的只会显示一个主窗体,而其它的非主窗体不会显示在任务栏里,但在即时通讯里经常会开很多单聊的窗体或者是打开多个房间,如果这些打开的窗体不显示在任务栏里将会带来很大的不便,为了实现非主窗体最小化后显示在任务栏里,必须添加窗体的扩展风格。

5.5好友列表框重绘

 
  基于网络的语音视频多人聊天系统

在好友列表框里我们需要友好的显示,包括选择按钮,用户处于上线、离线等不同的在线状态时头像的显示和用户被选择后的显示等,而好友列表我们用的是一个TreeView控件,但它无法达到我们要的效果,于是选择将它重绘毕业论文怎么写,这即是程序的重点也是难点,如图5:

图5 好友列表框

选择按钮的重绘。

当一个好友被选中时,友好的方式是把那一整栏全部选中,重绘时必须先得到整个结点的大小,然后设置边框颜色和背景颜色进行重绘。

好友的头像显示,因为一个好友的可能会有多种状态,如在线、不在线、离开和隐身,不同的在线状态肯定得有不同的头像显示,每种头像只有一张图片,离开和隐身分别有二张图片,当好友处于离开和隐身的状态时,除了绘出好友的头像外,还得在头像上面绘出离开和隐身的图片,当好友处于不在线状态时,则直接将头像转换为黑白图片然后再绘出来。

5.6 系统音量调节

6系统使用

6.1 用户登录

用户点击文件ChatTYQ.exe,将出现登陆界面如图6:

图 6 用户登陆

6.2 用户注册

图 7 用户注册

6.3 登陆成功

登陆成功后,显示的是客户端的主界面,主界面上有自己的基本信息和好友列表,并有若干面板,如图8:

图 8 即时通讯主程序

6.4 进入房间

进入房间后,首先显示的是一个大厅,在大厅里有房间分类以及每个分类下的房间,用户可以参考房间人数以及房间说明选择想要进入的房间,如图9:

图 9 房间大厅

左边是房间的分类,选择分类后,在左边的列表中显示该分类的所有房间。双击进入所选房间,房间界面如图10:

图 10 房间

6.5 上麦

在控制面板中点击“公麦”按钮会出现供选择的上麦类型的下拉菜单,上麦类型分为公麦和私麦,而私麦又分为所有人可连接、公好友可连接及需确认可连接三种,上公麦后房间内所有用户都可以看到视频图像毕业论文怎么写,而上私麦后并不显示在房间里,当用户请求连接后,系统会根据你的上麦类型而判断是否可以让他看到你的视频。不同的麦类型在用户管理列表里会有不同的麦颜色来区分,如图11:

图 11 上麦菜单

6.5 其他功能

房间界面的管理(如图12):点击控制面板中的“界面管理”,弹出窗口,根据自己的喜好设置各个组件的位置和大小,点“确认”即显示用户设置的样式。点“保存到本地”,用户每次再进入该房间都将显示刚保存的样式。“恢复”就是恢复到房间默认的设置样式。

 

图 12 界面管理

用户的管理功能(如图13):点击控制面板中的“用户管理”,弹出窗口。管理员可以对该房间的用户进行管理。添加和删除黑用户、黑IP、管理员。

图 13 用户管理

其它功能如图14,15:

图 14 用户列表菜单 图 15 控制面板

总结

经过二个月的开发,天语情多人语音视频聊天软件初见雏形,在这二个月中学到很多,像网络通讯方面的知识,学习了如何利用UDP发送大数据包以及在无连接的UDP通讯中采用超时重发机制减少丢包率;音视频方面完整的了解到图像和声音从最初的设备选择、连接设备、设置设备,到采集数据、压缩数据、发送数据、显示数据一系列过程;在软件中为了体现友好性,所以很多东西和操作系统联系的很紧,比如视频的调节、音量的调节等,这些都必须直接调用Win API函数来实现,使得我对系统函数的调用有了一定的了解。


参考文献
[1]Marco Cantu(美).Delphi从入门到精通.电子工作出版社,2002-4-1
[2]申旻.Delphi高手突破.清华大学出版社,2006-1-1
[3]Eric Harmon(美).Delphi COM深入编程.机械工业出版社,2004-8-1
 

 

查看相关论文专题
加入收藏  打印本文
上一篇论文:职业院校《数控编程技术》教学探讨_数控专业
下一篇论文:安阳钢铁公司ERP系统煤炭采购结算程序要点探讨
毕业论文分类
行政管理毕业论文 工商管理毕业论文
护理毕业论文 会计毕业论文
会计专业毕业论文 英语专业毕业论文
大学毕业论文 硕士毕业论文
计算机毕业论文 市场营销毕业论文
物流管理毕业论文 法学毕业论文
相关计算机毕业论文
最新计算机毕业论文
读者推荐的计算机毕业论文