谢钟扬
摘要:随着互联网的快速发展以及在社会生活中的不断普及,人们对于通话的需求也在不断改变。近些年来计算机技术、多媒体技术以及互联网网络技术都得到了快速的发展,在这种环境下音视频会话技术也在不断地改变,音视频会话系统也逐渐向数字化和网络化的方向发展。在音视频会话系统中,采用了一种物联网语音协议(VoIP)技术,该技术最大的优势是能够广泛地采用互联网的相关环境,提供比传统业务更好的服务。SIP(会话初始协议)作为VoIP技术中最重要的信令协议之一,具有简单、开放、灵活以及可以进行扩展等多方面的优点。本文主要分析了基于SIP协议下的音视频会话技术,探讨了具体的音视频同步技术。
关键词:SIP协议;音视频;会话技术;同步编码
中图分类号:TP3 文献标识码:A
文章编号:1009-3044(2019)23-0228-02
开放科学(资源服务)标识码(OSID):
随着计算机网络技术以及多媒体技术的发展,在信息化社会的背景下,人们的生活方式得到了极大的改变,最明显的情况之一就是人与人通话方式的改变。在移动互联网不断发展的过程中,音视频通话的方式也在不断转变,音视频会话技术也得到了进一步的升级和更新。在音视频会话系统中利用到了一种软交换技术,该技术具有开放的体系架构,对数据信息能够进行分组传输,是比较先进的呼叫控制技术,并且能够為语音、视频等多媒体数据,提供多种方式的实时服务,而SIP协议是作用于软交换和应用服务器之间,能够实现数据的互通,并提供相关的增值服务。SIP协议是一种应用层控制协议,在音视频会话中起到了很大的作用。
1 SIP协议相关概述
1.1 SIP协议概念以及相应功能
目前的SIP协议已经发展成熟并且得到了广泛的应用,其中应用最广泛的一个领域就是网络IP电话,基于SIP协议的音视频会话技术的出现,改变了传统的电话模式。随着互联网的不断发展,SIP协议的应用范围变得更加广泛,SIP协议是一种控制协议,只涉及管理相应的会话,和会话者之间进行的多媒体数据的传输并没有关系,会话者之间的多媒体数据的传输一般是借助其他传输协议来实现的。
SIP协议作为一种控制协议,其主要功能能够实现建立、修改和终止相应的会话,针对用户会话管理方面,其能够提供用户定位、用户有效性、用户能力、建立会话以及会话管理等功能。所谓用户定位就是在SIP协议中,被叫方可以处于不同的位置并进行移动,呼叫方请求与被叫方建立通话,在发送相应的请求后,SIP服务器能够转发相应的请求给被叫方。用户的有效性是指在收到对方的请求后,用户可以自主选择与对方建立会话,用户之间想要建立会话,在这之前需要发送相应的请求,在相关的媒体参数被描述清楚后,相应的会话就会被建立。在会话管理中,SIP协议能够提供添加、修改媒体流参数以及终止会话等方面的功能。
1.2 SIP协议的组成分析
SIP协议主要由用户代理UA和网络服务器组成,在用户代理UA中,用户代理客户端和服务器以及背对背用户代理是其主要组成;而在网络服务器中,包括代理、注册和重定向服务器等三种服务器存在。SIP协议相关组成架构如图1所示。
1.2.1 用户代理UA
在用户代理UA中,用户代理客户端和服务器以及背对背用户代理是其主要组成,客户端能够发起相应的请求到服务器端,服务器端产生相应的响应,在每一个用户端程序中都会含有客户端和服务器端。背对背的用户代理是一种比较特殊的实体,其仅仅是一个逻辑实体,其能够和服务器端一样接受相应的请求,并做出响应传送给客户端,其就像客户端和服务器端的串联。
1.2.2 SIP服务器(网络服务器)
在网络服务器中,包括代理、注册和重定向服务器等三种服务器存在,对于代理服务器而言,其既可以看作是客户端也可以看作为服务器,客户端的请求消息传送给代理服务器,代理服务器又转发给服务器。注册服务器能够对用户的注册请求进行回应,用户在该服务器上完成注册后,该服务器能够保存用户的位置信息到相应的位置服务器中。对于重定向服务器而言,其既不会发送请求的消息,也不会对其他请求消息进行响应,其主要作用是仅仅接受相应的请求消息,并获取该消息的地址信息,经过相应的处理后,可以将相应的位置信息返回。
1.3 SIP协议消息
SIP协议的请求和响应都是属于消息的范畴,SIP协议消息主由开始行、消息头以及消息体三个部分组成,如图2所示。
从图中可以看到,一个空白行隔开了消息头和消息体,其主要作用是能够对消息头和消息体进行区分。在SIP协议消息中,其可以分为请求消息和响应消息,通常情况下,用户代理客户端把相应的请求消息发送到用户代理服务器,而对于响应消息而言,其传输方向则是相反的。
1.4 SIP协议的呼叫流程以及会话描述协议SDP
1.4.1 关于SIP协议的呼叫流程
SIP协议呼叫流程主要由注册流程、无代理服务器的会话创建流程以及有代理的服务器的会话创建流程等组成。在注册流程环节,SIP服务器会收到用户发送的注册请求,并对一个未认证的消息进行响应,在用户代理服务器进行相关的认证后,其会重新发送对应的注册请求,这时SIP服务器会接受和处理相应的请求,并返回相对应的响应消息。
1.4.2 SDP协议
SDP协议也就是会话描述协议的缩写,用户代理在进行会话创建的时候,需要对会话所需要的多媒体参数等进行沟通,SDP协议能够描述用户代理发送请求和返回的响应消息。SDP协议能够提供一种用于描述会话相关信息的格式,这些信息包括会话信息和媒体信息。
2 基于SIP协议下的音视频会话技术分析
2.1 关于音视频同步分析
2.1.1 同步的概念
对于多媒体而言,其结合了音频、视频以及文本等多种媒体数据,在媒体数据单元之间存在着相对应的时间关系,如果要保持音视频的同步,就要对这种相对应的时间关系进行维持。实现音视频同步,该过程就是指维持了媒体数据单元之间的相对时间顺序。
对于媒体流内部的同步而言,是指对于媒体流内部数据单元,它们之间也有一种固定的时间顺序,并且根据这个相对时间顺序,数据单元之间可以进行排列组合。按照这个相对时间顺序,如果媒体流内部的数据单元能够进行正常排列,那么在进行媒体数据单元的播放时,就能够实现同步,相反不能按照相对时间顺序进行正常排列,就不能够达到同步的状态。
对于媒体流间的同步而言,不同媒体对象的数据单元之间会存在一定的时间顺序关系,而实现媒体流间的同步,就需要对相对应的数据单元间的时间顺序进行保持。想要维持多媒体系统中的同步,就需要维持音频和视频二者之间的时间关系。音频和视频的不同步会给观众带来一种极度的不协调感,但如果两者之间的不同步时间控制在一定的范围内,那么观众在视听感觉上还是可以接受的。
2.1.2 音视频不同步问题的相关因素
在采集音视频的过程中,音视频开始的时间,以及进行编码和解码处理的时间存在一定的差异,时间不一致,就会导致音视频数据单元之间的时间顺序不对,在进行编解码时就会出现时间关系偏移的现象。再者在网络数据打包处理的时间存在一定的差异,音视频在經过相应的编解码后,相应的数据需要经过网络数据打包之后才能够进行传输。
在编码处理过程中视频编码数据量要大于音频的编码数据量,在进行网络打包环节时,如果对打包处理的时间不进行有效的控制,音视频不同步的问题就容易发生。当数据包丢失或者出现接受顺序错乱的情况,也会导致解码过程中出错,网络数据包丢失会造成音频或者视频数据的不完整,丢弃相关视频的编码数据,也会导致音视频不同步的情况发生。
2.2 基于时间戳的同步技术
在基于SIP协议的音视频会话技术中,基于时间戳的同步技术贯穿于整个音视频会话系统,在音视频会话系统中,每个模块中都会发生时间戳同步,这样能够保证音视频同步的效果。在音视频会话系统中的采集模块中,进行视频采集,得到的是以帧为计数单位的数据,而对于音频采集环节,得到的是以时间为单位的数据,计量方式之间存在的差异,也会导致在同一时间内,无法对音视频进行采集和结束。
在音视频会话系统中的编码模块中,包含音频模块和视频模块,在采集缓冲区中编码模块会获取一个同步数据块,并对需要进行编码的同步数据块的时间戳进行记录,然后根据其类型标志位传送到相应的编码模块中。在网络传输模块中,对于每一帧视频编码数据进行打包之后才能够发送,如果直接用一个数据包封装一帧视频编码数据,会容易造成数据包无法发送成功的问题。从解码缓冲区中,解码模块能够提取相应的同步数据块,并根据对应的类型标志位,对音视频的编码数据进行解码。在完成解码后将解码数据重新进行封装成同步数据,并放入到相应的播放缓冲区中。播放模块从播放缓冲区提出相应的已完成解码的音视频数据,按照相应的时间顺序就可以进行分别播放。
2.3 基于可变码长同步编码技术
在基于时间戳的同步技术中,网络传输模块进行音视频编码数据的传输,需要使用两条信道实现,这时就需要处理多个步骤。而基于可变码长同步编码技术可以很好解决上述的问题。在基于可变码长同步编码技术中,提出了一种基于H.264帧间预测的音视频同步编码改进算法,而可变码长就是其核心概念。
使用该算法可以将音频编码数据进行分割,形成多组不同长码组,对于基于H.264进行帧间预测的阶段,根据相对应的公式,能够实现不同长码与可变尺寸块的映射,再依据音频的编码数据对可变尺寸的分割模式进行确定,根据相应的映射关系进行提取音频编码数据。
2.4 延迟检测自适应选择同步技术
对于上述的同步方案,在进行方案的选择时需要考虑到网络的状态,这时就需要检测网络的状态。针对网络的延迟状况、丢包率以及抖动等状况进行检测,并进行相应的等级评价。在网络状况良好的条件下,可以利用同步编码技术传输相应的数据,如果网络状况表现出一般或者较差的状态,这时就需要利用基于时间戳的同步方案。
在进行延迟检测的时候,还有一种检测网络状况的方式经常被用到,采用这种方式,是将每个时间间隔定义为[T1],得到会话终端之间的传输时延[dn]([1~n]总共[n]各时延数值),依据相应的公式,就可以得出[T1]时间间隔内相应的时延变化率。
[s2=1ni=1ndi-d-2]
其中[d-=1ni=1ndi] ,采用的方差来表示网络状况的时延波动大小。
3 总结
SIP协议具有简单、易扩展以及容易实现等特点,在越来越多的应用中得到使用,该协议到目前为止也已经达到成熟的地步,在互联网中越来越多的软件和多媒体终端都采用了SIP协议。随着计算机网络技术的不断发展,基于SIP协议的音视频会话技术会得到更加广阔的发展。
参考文献:
[1] 林明河. 基于SIP协议的可视对讲系统的设计与实现[D]. 华侨大学,2016.
[2] 凌小荣. 基于SIP网络音视频通信的研究与实现[D]. 华南理工大学,2014.
[3] 林健浩. 基于SIP协议的音视频会话技术研究[D]. 广东工业大学,2014.
[4] 邹田,周到.基于SIP协议的音视频通信终端的实现[J]. 中国新通信,2013,15(09):34.
[5] 杨真光. 基于SIP的视频会议系统设计及实现[D]. 北京邮电大学,2013.
[6] 施昌伟. 基于SIP协议的即时通讯系统的研究与实现[D]. 南京邮电大学,2012.
【通联编辑:张薇】