一种即时通讯实现方法技术

技术编号:14555726 阅读:72 留言:0更新日期:2017-02-05 04:58
本发明专利技术提供了一种即时通讯实现方法,该方法包括:现场终端对语音数据进行采集和处理,将处理后的数据存储到所述云平台;监控终端通过所述云平台接收从现场终端上传的语音,解码并播放。本发明专利技术提出了一种即时通讯实现方法,在语音传输中提高了网络稳定性,提升了通话质量,取得了较高的信噪比增量和降噪效果。

Instant communication realizing method

The present invention provides a method for implementing instant communication, the method comprises: a terminal field acquisition and processing of voice data, the processed data is stored in the cloud platform; the monitoring terminal through the cloud platform received from the voice terminal site upload, decoding and playback. The invention provides a method for realizing instant communication, which improves the stability of the network in the transmission of voice, improves the quality of the conversation, and achieves a high signal to noise ratio increment and noise reduction effect.

【技术实现步骤摘要】

本专利技术涉及即时通讯,特别涉及一种语音通讯实现方法。
技术介绍
基于移动设备的监控通讯系统,在企业日常工作中由相关工作人员随身携带或是手持设备位于现场,通过3G或WiFi信号进行即时通讯,将现场的实时语音和音频信息及时回传到监控人员,由于设备简单,易于携带等优点,因此得到广泛应用,例如勘察、传媒、物流运输等行业。对于企业及时了解现场情况作出有效解决方案具有极大的意义。加入语音和音频传输之后将会极大地提高终端人员的应用范围与效率。然而现有的通讯系统普遍多为端到端的直接通信,各个终端所在现场的网络状况不确定的情况下,流媒体传输缺乏稳定性,容易发生数据包丢失和延迟,导致通话质量显著下降,并且对复杂的环境噪声没有针对性的控制手段,难以达到较好的主观体验。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术提出了一种即时通讯实现方法,包括:现场终端对语音数据进行采集和处理,将处理后的数据存储到所述云平台;监控终端通过所述云平台接收从现场终端上传的语音,解码并播放。优选地,所述将处理后的数据存储到所述云平台,进一步包括:现场终端将需要传送的语音数据分割成固定大小的数据段,利用序列号和时间戳对每个数据段进行标识,将数据段封装到数据包中;现场终端统计传输过程中丢包率,并检测当前可用带宽;在检测链路的带宽过程中,记录连续数据包之间的间隔时间,通过均值滤波函数过滤后,使用平均值估计带宽容量;>现场终端基于当前丢包率和所检测的带宽来调整发送速度;采用数据传输服务器定期应答的方式对发送速度进行反馈,云平台的数据传输服务器每隔预定时间向现场终端发送一个反馈信号,现场终端根据收到的反馈信号调节数据发送速度;数据传输服务器将丢失的数据段的标识信息反馈给现场终端,请求重新发送;现场终端在下一个传输周期重新发送这些丢失的数据包,直到所有的数据包都被成功接收;在第一个传输周期,数据传输服务器通过序列号判断数据包有无丢失,如果一次丢包事件内连续丢失了多个数据包,则记录丢失的第一个和最后一个数据包的序列号,并加上连续丢包的标志位;在传输周期结束时,现场终端向数据传输服务器发送传送完成的信号,数据传输服务器收到信号后,将丢包链表反馈给现场终端,现场终端重新发送丢失的数据包,直到数据传输服务器成功接收到所有的数据包。优选地,所述云平台通过通信服务器进行信令的解析与转发,处理来自监控终端的对语音操作的会话连接信令;而云平台数据传输服务器提供语音的上行通道,把现场终端的语音转发给监控终端用户,同时提供语音的下行通道,从监控终端到现场终端的语音信号转发;监控终端对上行语音数据进行接收、解压和播放;对数据包进行排序,将排序好的数据存入一级缓存中;然后从一级缓存中取出语音数据包,对其进行解压,将解压好的数据放入二级缓存中;最后从二级缓存中取出语音数据,设置语音数据播放格式,并嵌入时间戳,将数据推送到一级缓存中,实现语音数据的播放;监控终端对上行语音数据进行采集、编码和发送;音频采集首先初始化音频采集设备、音频采集格式参数,然后通过设备对象创建采集缓冲区对象并初始化通知机制,最后在需要音频采集时触发音频采集主程序,设备将数据写入缓冲区,应用程序主动从缓冲区将数据读出。本专利技术相比现有技术,具有以下优点:本专利技术提出了一种即时通讯实现方法,在语音传输中提高了网络稳定性,提升了通话质量,取得了较高的信噪比增量和降噪效果。附图说明图1是根据本专利技术实施例的一种即时通讯实现方法的流程图。具体实施方式下文与图示本专利技术原理的附图一起提供对本专利技术一个或者多个实施例的详细描述。结合这样的实施例描述本专利技术,但是本专利技术不限于任何实施例。本发明的范围仅由权利要求书限定,并且本专利技术涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本专利技术的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本专利技术。本专利技术的一方面提供了一种即时通讯实现方法。图1是根据本专利技术实施例的一种即时通讯实现方法流程图。本专利技术在基于移动终端进行双向语音传输的即时通讯,即从现场终端经云平台转发到监控终端,从监控终端经云平台转发到现场终端的语音传输。其中现场终端用于语音数据的采集、编码压缩、去噪与实时播放,对信息进行存储并将语音数据上传到云平台;云平台包括通信服务器和数据传输服务器,通信服务器用于转发连接消息,数据传输服务器用于转发语音数据;监控终端则是用来接收从现场终端上传的语音,因此需要接收解码并播放接收到的语音信息,并且可以实现控制、数据存储以及用户设备管理。现场终端将需要传送的语音数据分割成固定大小的数据段,利用序列号和时间戳对每个数据段进行标识,将数据段封装到数据包中。现场终端统计传输过程中丢包率,并检测当前可用带宽;在检测链路的带宽过程中,记录连续数据包之间的间隔时间,通过均值滤波函数过滤后,使用平均值估计带宽容量。现场终端基于当前丢包率和所检测的带宽来调整发送速度;为了减轻现场终端的工作,降低数据传输服务器的资源开销,本专利技术采用数据传输服务器定期应答的方式对发送速度进行反馈,数据传输服务器每隔预定时间向现场终端发送一个反馈信号,现场终端根据收到的反馈信号调节数据发送速度。反馈信号中包含如下内容:该反馈间隔内收到的数据包总数量;该反馈间隔内丢失的数据包总数量;检测得到的网络带宽;该反馈间隔内发生的丢包事件数量。在每个传输周期完成时,服务器将丢失的数据段的标识信息反馈给现场终端,请求重新发送。现场终端在下一个传输周期重新发送这些丢失的数据包,整个过程反复进行,直到所有的数据包都被成功接收。在第一个传输周期,数据传输服务器通过序列号判断数据包有无丢失,如果一次丢包事件内连续丢失了多个数据包,则记录丢失的第一个和最后一个数据包的序列号,并加上连续丢包的标志位,以降低反馈的数据量。在传输周期结束时,现场终端向数据传输服务器发送传送完成的信号,数据传输服务器收到信号后,将丢包链表反馈给现场终端。现场终端重新发送丢失的数据包,整个过程循环进行,直到数据传输服务器成功接收到所有的数据包。本专利技术中语音数据按8000Hz采样,16位单声道PCM数据,采集到的数据根据G723算法进行压缩。在发送之前还需要将语音数据进行去噪和RTSP打包,在多播或单播的网络服务上提供端对端的网络传输功能,适合传输实时数据。而接收的音频数据,经过G723算法解本文档来自技高网...

【技术保护点】
一种即时通讯实现方法,用于在云平台环境下实现多个移动终端的语音传输,其特征在于,包括:现场终端对语音数据进行采集和处理,将处理后的数据存储到所述云平台;监控终端通过所述云平台接收从现场终端上传的语音,解码并播放。

【技术特征摘要】
1.一种即时通讯实现方法,用于在云平台环境下实现多个移动终端的语音传
输,其特征在于,包括:
现场终端对语音数据进行采集和处理,将处理后的数据存储到所述云平
台;监控终端通过所述云平台接收从现场终端上传的语音,解码并播放。
2.根据权利要求1所述的方法,其特征在于,所述将处理后的数据存储到所
述云平台,进一步包括:
现场终端将需要传送的语音数据分割成固定大小的数据段,利用序列号和
时间戳对每个数据段进行标识,将数据段封装到数据包中;现场终端统计传输
过程中丢包率,并检测当前可用带宽;在检测链路的带宽过程中,记录连续数
据包之间的间隔时间,通过均值滤波函数过滤后,使用平均值估计带宽容量;
现场终端基于当前丢包率和所检测的带宽来调整发送速度;采用数据传输
服务器定期应答的方式对发送速度进行反馈,云平台的数据传输服务器每隔预
定时间向现场终端发送一个反馈信号,现场终端根据收到的反馈信号调节数据
发送速度;数据传输服务器将丢失的数据段的标识信息反馈给现场终端,请求
重新发送;现场终端在下一个传输周期重新发送这些丢失的数据包,直到所有
的数据包都被成功接收;
在第一个传输周期,数据传输服务器通过序列号判断数据包有无丢失,如
果一次丢包事件内连续丢失了多个数据包,则记录丢失...

【专利技术属性】
技术研发人员:王天宇宋雷刘爽
申请(专利权)人:成都微讯云通科技有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1