基于RTP的linux实时语音通信系统的设计与实现毕业论文.doc
《基于RTP的linux实时语音通信系统的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《基于RTP的linux实时语音通信系统的设计与实现毕业论文.doc(66页珍藏版)》请在三一办公上搜索。
1、嘉 应 学 院毕业论文(设计)题目:基于RTP的linux实时语音通信系统的设计与实现申请学位 工学学士 学 院 计算机学院 专 业 计算机软件工程(师范)2014 年 6 月 18 日摘 要随着信息社会的高速发展,Internet已经成为很多人生活不可缺少的一部分。当前Internet中流动的“比特”所代表的内容已从原来的数据逐渐向实时多媒体数据演变,它们的特点是对实时性要求非常高。但是,Internet是建立在TCP/IP之上的计算机网络,最初设计时的定位决定了它不适合实时数据的传输。因此,1996年1月IETF音视频传输工作颁布了针对实时应用的实时传输协议RTP/RTCP。RTP/RTC
2、P 使Internet从理论上具备了处理实时业务的能力,解决了媒体同步问题和满足了多媒体通信业务的要求,现在在IP电话、网络多媒体会议、远程网络教学和远程网络诊断等领域都有着重大的应用。 本文结合RTP/RTCP高实时性的特点,主要针对局域网,提出了音频数据采用G729a压缩,传输数据采用ortp库,在linux平台下开发的实时语音通信系统。本文首先介绍了实时传输协议的简单应用后,详细分析了RTP/RTCP协议;接着介绍系统的具体实现,主要分三个部分:音频数据的采集和播放,音频数据的解码和编码以及音频数据包的发送和接收。最后简单阐述了本系统在其他领域的可扩展性及前景。【关键词】实时性,音频传输
3、,RTP/RTCP,音频压缩AbstractWith the rapid development of information society, the Internet has become an indispensable part of a lot of people life.The current flows through the Internet bits represented by the contents of which have been gradually from the original data to real-time multimedia data, the
4、 characteristic of them is very high demand for real-time.However, the Internet is based on TCP/IP computer networks, the initial design of location determines it is not suitable for real-time data transmission.Therefore, IETF audio and video transmission work in January 1996 issued for real-time ap
5、plication of real-time transmission protocol RTP/RTCP.RTP/RTCP make Internet theoretically with the real-time ability of the business, the media synchronization problems and meet the requirements of the multimedia communication service, the IP telephone, network, multimedia conference, remote networ
6、k teaching and remote diagnosis, etc all have important applications.In this paper, combining with the characteristics of RTP/RTCP high real-time performance, mainly for local area network (LAN), is put forward using G729a audio data compression, data transmission using ortp library, development of
7、real-time voice communication system on the Linux platform.This paper first introduces the simple application of real-time transport protocol, RTP/RTCP protocol are analyzed in detail.Then this paper introduces the implementation of system, mainly divided into three parts: audio data acquisition and
8、 playback, audio data decoding and encoding and audio packets sent and received.The last simply expounds the system scalability and prospects in other areas.【Keywords】 Real time audio transmission, RTP/RTCP, audio compression目 录前 言1第一章 绪论21.1项目概述21.1.1 编写目的21.1.2 背景21.1.3 术语定义21.1.4 论文的主要工作31.1.5 论文
9、的组织结构31.1.6 系统开发计划41.2网络多媒体教学系统概述41.2.1通用网络多媒体教学平台基本概念41.2.2通用网络多媒体教学平台的基本特点341.3网络教学提出的背景与意义51.3.1 提出的背景51.3.2 提出的意义51.4国内外网络教学研究发展状况和分析51.4.1网络教学的发展551.4.2国内著名通用网络多媒体教学平台61.4.3国外著名通用网络多媒体教学平台61.4.4存在不足的分析6第二章 技术基础72.1 C/S体系结构72.1.1传统的二层C/S体系结构72.1.2 三层的C/S体系结构72.1.3 C/S结构特点82.2 B/S体系结构82.2.1 B/S三层
10、体系结构82.2.2 B/S结构的特点82.2.3 B/S体系结构的不足92.3 C/S与B/S结构的分析比较92.4 技术平台的介绍102.4.1ASP简介9102.4.2 Microsoft SQL Server10112.4.3 IIS 11122.4.4 Ajax技术 12122.4.5 ADO技术 12122.5系统开发平台132.5.1系统开发环境132.5.2平台的搭建与优点132.5.3 目的142.6系统设计结构14第三章 系统分析153.1 引言153.2 系统目标153.3 系统的可行性分析153.3.1 技术可行性153.3.2 使用可行性163.3.3 经济可行性16
11、3.4需求分析13163.4.1 系统建设原则163.4.2 环境设备需求163.4.3 功能需求173.4.4 性能需求193.4.5 数据需求193.4.6 系统数据描述19第四章 概要设计234.1 系统设计的目标234.2 系统设计思想234.3 系统结构图和模块设计244.3.1 系统结构图244.3.2 模块设计244.4 接口设计254.4.1 用户接口254.4.2 外部接口254.4.3 内部接口254.5数据库设计254.5.1 逻辑结构设计264.5.2 数据表间的关系设计284.5.3 物理结构设计294.5.4 数据与程序间的关系294.6 系统出错处理设计294.6
12、.1 出错信息294.6.2 出错处理措施29第五章 详细设计305.1 引言305.2 数据库表的设计305.3 模块算法设计325.3.1公共模块设计(部分)325.3.2其它模块设计(部分)35第六章 平台测试416.1 测试概述416.1.1 目的416.1.2 测试人员416.2 测试计划416.2.1 测试环境416.2.2 测试方案416.2.3 测试项目416.2.4 测试用例(部分)416.3 测试分析426.3.1 测试项目执行情况分析426.3.2 系统评价426.3.3 系统的不足436.4 测试结论43第七章 系统运行447.1引言447.2运行环境447.3 系统配
13、置447.3.1运行WEB服务器的设置447.3.2运行数据库服务器的设置457.4 页面操作及关键技术说明45第八章 总结与展望548.1 设计总结及成果548.2 不足与展望55参考文献56致 谢57附录(其它核心代码)1前 言随着多媒体网络的发展,RTP/RTCP在众多领域也得到了深入的应用,如VOIP电话、多媒体会议系统等应用的出现,也让语音传输通信技术也得到了迅速的发展。然而,语音通信需要的实时性是非常高的,而且数据量大。例如,一个多媒体会议系统,我们总是希望发言者的发言能够尽早让收听者收听到,也就是说时延尽量短;另外一个就是我们希望在收听者收听语音信息时,一句话平滑的,即中间没有断
14、点,也就是等时性。这些都是实现实时语音通话应达到的要求。为此,本人在导师的指导下,详细研究分析了RTP/RTCP协议,结合RTP/RTCP协议高实时性的特点,利用现有的音频编程和网络编程知识,设计和开发了这个基于RTP的linux实时语音通信系统。目前只实现了单播功能,即点对点的通信。论文的主要内容如下:第一章:引言,主要介绍了实时多媒体数据传输的发展,阐述了TCP不适合多媒体传输的原因并引入了RTP.第二章:根据RFC3550官方文档,详细分析了RTP/RTCP协议。第三章:介绍了linux下基于RTP的实时语音通信系统实现的基本原理和总体架构。第四章:介绍了linux音频编程。第五章:讲解
15、了音频传输的实现。第六章:介绍了音频解码和编码的实现。第七章:总结与展望。第一章 引言1.1实时数据传输的发展我们已经步入一个高速发展的信息社会,Internet已经成为很多人生活不可缺少的一部分。Internet中流动的“比特”所代表的内容已从原来的数据逐渐向多媒体演变。随着IPv6,RSVP,RTP/RTCP一系列协议的出现,在Internet上实现多媒体通信成为可能。IPv6解决了IPv4地址资源有限,不能控制带宽等问题,RSVP(资源预留协议),RTP/RTCP(实时传输/控制协议)使Internet从理论上具备了处理实时 业务的能力,解决了媒体同步问题和满足多媒体通信业务的要求。越来
16、越多的实时多媒体应用的出现,极大的丰富了人们生活,如成为这几年的热点的IP电话,另外还有VID、远程网络教学、远程网络诊断和网络多媒体会议业务、多媒体消息型业务等。1.2国内外研究状况早在20世纪70年代末80年代初,如何在分组上实时传输语音就是一个很活跃的研究方向,到了九十年代初这个方向研究又变得异常活跃。1992年3月,IETF(Internet Engineering Task Force)在San Diego召开的会议是分组网上第一次大规模的音频多播应用。会议使用的音频传输软件主要是Vat(Visual Audio Tool),它是由LBNL(Lawrence Berkeley Nat
17、ional Laboratory)网络研究小组开发的一个音频会议工具,该小组还开发了视频工具vic和白板工具wb。会议还使用的另一个音频软件是NeVoT(Network Voice Terminal),它是H.Schulzrinne等人在90年代初开发出来的。该软件最初使用的是vat协议,但是在RTP协议制定出来后也开始支持RTP协议了。还有其他大学,研究组织研究开发出来的音频工具TAT(Robust Audio Tool),会议目录工具SDR(session directory),CU-SeeMe音频会议工具等等。 在国内,清华电子工程系网络研究所多媒体通信课题组也在这方面做了大量的研究,并
18、开发出了Cool-audio、Cool-Video、Cool-Meeting等一系列软件。其中Cool-audio网络电话于1998年推出,它是我国第一套自主版权且最有影响的Internet电话软件。另外,东南大学计算机系,北京邮电大学电信工程学院和华中科技大学等研究机构也在这方面做出了大量的研究工作。北京的微软亚洲研究院的网络多媒体组正在做SMART音/视频传输(SMART A/V Delivery)等项。但是总的来说,国内的研究水平要远远落后于国外。可以说,实时多媒体数据传输研究已经有了长足的进步,制定了许多相关的传输协议,例如:RTP(Real-time Transport Protoc
19、ol)和RTCP(Real-time Transport Control Protocol),RTSP(Real-time Streaming Protocol),SIP(Session Initiation Protocol),H.232,RSVP(Resource Reserve Protocol),服务区分协议(Diff-Serv),多协议标记交换协议(Mulit-Protocol Label Switching,MPLS)等等,这些都是构建当前多媒体通信的主要协议。在这些协议中,RTP和RTCP主要负责实时数据以及实现最基本的传输控制,本设计就是Linux下基于RTP协议的实时音频传输
20、的实现。1.3实时多媒体数据传输的特点实现多媒体数据传输的核心是声、文、图等多媒体信息的传输技术,它的一个显著特点是数据量大,并且许多应用对实时性都有比较高的要求,例如,一个多媒体会议系统,我们总是希望发言者的发言能够尽早让收听者收听到,也就是说时延尽量短;另外一个就是我们希望在收听者收听语音信息时,一句话平滑的,即中间没有断点,也就是等时性。这些都是实现实时语音通话应达到的要求。1.4 TCP不适合传输实时多媒体数据Internet是建立在TCP/IP之上的计算机网络,它最初是为提供非实时数据业务而设计的。IP协议是面向无连接的,负责主机之间的数据传输,但只提供“尽力而为”(best-eff
21、ort)的服务,不进行检错和纠错,因此经常发生数据丢失现象。为保证数据的可靠传输,在传输层使用TCP协议,当接收端检测到数据包丢失或错误时,要求发送端重新发送,但这样不可避免地引起传输延时和占用网络带宽。因此传统的TCP/IP协议传输实时音频、视频数据的能力比较差。当然在传输用于回放的视频和音频数据时,TCP也是一种选择。如果有足够大的缓冲区和充足的网络带宽,比如在局域网内,在TCP协议上,接近实时的传输也是可能的。但是在大多数情况下,我们需要再广域网内传输数据,在这种丢包率较高、网络状况不好的情况下,利用TCP协议进行视频或音频通信显然不是很好的一个选择。TCP协议是面向连接的协议,它的重传
22、机制和拥塞控制机制都是不适合用于实时多媒体传输的。下面具体分析网络运行一下TCP和其他可靠传输层协议如XTP不适合实时传输的几个主要原因。(1).启动速度慢即便在网络运行状况良好,没有丢失包的情况下,由于TCP的建立连接需“三次握手”,因而在初始化的过程中,需要较长的时间。而在一个实时多媒体的应用中,我们期望尽量少的延迟。(2).TCP的重传机制在TCP/IP协议中,当发送方收不到接收方发来的确认,并超过一定的时间,就认定该数据已丢失,这时它将重传丢失的数据包。这一过程将需要一个甚至更多的周期,这种重传机制对于实时性要求较高的多媒体数据传输来说是灾难性的,因为接收不得不等待重传数据的到来,从而
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 RTP linux 实时 语音 通信 系统 设计 实现 毕业论文

链接地址:https://www.31ppt.com/p-4140624.html