CN113572736A - 一种VoLTE语音报文双向合并实时播放方法 - Google Patents
一种VoLTE语音报文双向合并实时播放方法 Download PDFInfo
- Publication number
- CN113572736A CN113572736A CN202110710092.2A CN202110710092A CN113572736A CN 113572736 A CN113572736 A CN 113572736A CN 202110710092 A CN202110710092 A CN 202110710092A CN 113572736 A CN113572736 A CN 113572736A
- Authority
- CN
- China
- Prior art keywords
- voice
- buffer area
- message
- messages
- rtp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明具体涉及一种VoLTE语音报文双向合并实时播放方法,首先将接收到的RTP文本创建上行、下行两路或多路RTP语音报文缓冲区队列;然后每到20ms定时器超时的情况,解析报文的RTP第一个timestamp信息,通过计算每个报文距离通话开始的时间差,找出上下行两个队列中各自时间差最大的语音帧;通过解析RTP头中的SN信息,遍历搜索其所在队列中具有相同SN的报文,从缓冲区中删除;将加权后的PCM信号直接送入播放器进行播放。本发明的有益效果是:保证语音报文顺序正确、到达时间对称。
Description
技术领域
本发明涉及VoLTE语音播放领域,具体涉及一种VoLTE语音报文双向合并实时播放方法。
背景技术
VoLTE全称为Voice over LTE(长期演进语音承载),是LTE网络中终端设备和网络传输语音数据的技术。VoLTE通信是一种基于LTE系统和IMS(InternetProtocolMultimedia System,互联网协议多媒体系统)网络的语音业务。
对于支持VoLTE技术的终端来说,语音播放只需要将网络发送到终端的语音报文解码播放即可,但在某些特殊场景需求下,网络发送给终端、终端发送给网络两个方向的语音报文需要双向实时播放,普通终端和通用技术则无法支持。
例如,专利申请号为202010074382.8的专利公布了一种VoLTE语音优化方法,针对VoLTE语音报文的传输从无线通信的角度提出了优化的策略,提高语音通话的MOS值,但该发明未提出关于双向语音报文播放的方法,所以不能解决上述问题。
又例如,专利申请号为201911358366.5的专利提出了一种RTP语音报文的混音方法,按照语音报文RTP头中信息区分出静音帧和目标终端信息,从而将语音报文发送到相应的终端上,从而实现了语音报文的混音。该发明虽然提出了一定的流程进行多路音频报文的混音,但对于多路音频报文的合并策略、报文乱序、多路达到时间不对称等问题未提出解决方法,所以也不能解决VoLTE语音报文双向合合并实时播放的问题。
由于本发明对于VoLTE语音报文双向合并播放的主要过程如语音报文乱序、到达时间不对称、双向合并等均提出了高效的处理方法,所有可以实现VoLTE语音报文的双向实时播放。
发明内容
针对现有技术存在的缺陷,本发明提出了一种VoLTE语音报文双向合并实时播放方法。
本发明的技术方案如下:
一种VoLTE语音报文双向合并实时播放方法,具体包括以下步骤:
步骤1、将接收到的RTP报文按照上行和下行、按接收的顺序存入上行和下行两个缓冲区;
步骤2、分别解析上行和下行缓冲区中第一个接收的报文RTP头中的timestamp(时间戳)字段中,记录为t1和t2;
步骤3、当上行和下行任何一个缓冲区域存储达到最大值后,启动20ms定时器;
步骤4、当20ms定时器超时的时候时,从上行缓冲区底部的报文开始,逐个解析RTP第一个timestamp,计算deltT=timestamp-t1;通过遍历缓冲区中所有报文,找到deltT(两个语音报文的时间差)最大的语音帧,并记录最大的语音帧帧的位置为n1、时间差为delt1;
步骤5、重复步骤4中缓冲区处理部分,对下行缓冲区做与步骤4相同的处理,得到的位置记为n2、时间差记为delt2;
步骤6、解析n1位置语音报文RTP第一个的SN号,并检查上行缓冲区中所有报文,解析并进行对比,当有相同的SN号报文时,则将相同的SN号的报文从缓冲区中删除;
步骤7、解析n2位置语音报文RTP第一个的SN号,按步骤6,将重复的下行缓冲区n2位置的报文删除,并按照下列情况分别处理:
步骤7.1、当delt1大于delt2时,则只送n1位置的报文到语音解码器解码;
步骤7.2、当delt1小于delt2时,则只送n2位置的报文到语音解码器解码;
步骤7.3、当delt1等于delt2时,则送n1和n2位置两个报文到语音解码器解码;
步骤8、p1和p2是上行和下行语音音量权值,取值范围均为[0,1],p1和p2通过预设置的方式确定参数,用于对语音解码器输出的PCM信号进行加权,设解码器输出上行和下行PCM信号分别记为pcm1、pcm2,加权后的信号分别为rpcm1、rpcm2,则语音音量加权计算公式(1)、公式(2)为:
rpcm1=pcm1*p1……(1),
rpcm2=pcm2*p2……(2),
步骤9、在步骤8的基础上,当步骤8中解码器输出的是一路PCM信号时,即只有上行的rpcm1或下行的rpcm2,则将rpcm1、rpcm2直接发送给播放器进行播放;
当步骤8中解码器输出的是二路PCM信号时,则生成rpcm信号,并将生成rpcm信号发送到播放器进行播放,rpcm生成的公式(3)如下:
rpcm=rpcm1+rpcm2……(3),
步骤10、生成的pcm数据流即为最终播放的数据,将最终的播放数据送入播放器(语音的编码译码器)进行播放。
进一步地,在步骤5中,当上述步骤确定的两个语音帧时间差不同,则取时间差大的语音帧,将时间差大的语音帧的RTP报文送入语音解码器,得到一个语音帧的PCM数据流;当上述步骤确定的两个语音帧时间差相等,则将这两个语音帧的RTP报文分别送入解码器,得到两个PCM数据流。
本发明所述VoLTE语音报文双向合并实时播放方法的有益效果是:
本发明在VoLTE语音报文双向合并播放的过程,克服了语音报文乱序、到达时间不对称、双向合并的弊端,保证语音报文顺序正确、到达时间对称,能够实现VoLTE语音报文的双向实时播放。
附图说明
图1为现有技术中典型VoLTE的传输RTP报文时间顺序示意图。
图2为本发明所述VoLTE语音报文双向合并实时播放方法提出的处理策略示意图。
图3为本发明所述VoLTE语音报文双向合并实时播放方法提出的方法软件流程示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
如图2、图3所示,本发明的具体的实施步骤如下:
骤1、将接收到的RTP报文按照上行和下行、按接收的顺序存入上行和下行两个缓冲区;
步骤2、分别解析上行和下行缓冲区中第一个接收的报文RTP头中的timestamp(时间戳)字段中,记录为t1和t2;
步骤3、当上行和下行任何一个缓冲区域存储达到最大值后,启动20ms定时器;
步骤4、当20ms定时器超时的时候时,从上行缓冲区底部的报文开始,逐个解析RTP第一个timestamp,计算deltT=timestamp-t1;通过遍历缓冲区中所有报文,找到deltT(两个语音报文的时间差)最大的语音帧,并记录该帧的位置为n1、时间差为delt1;
步骤5、重复步骤4中缓冲区处理部分,对下行缓冲区做与步骤4相同的处理,得到的位置记为n2、时间差记为delt2;
步骤6、解析n1位置语音报文RTP第一个的SN号,并检查上行缓冲区中所有报文,解析并进行对比,当有相同的SN号报文时,则将相同的SN号的报文从缓冲区中删除;
步骤7、解析n2位置语音报文RTP第一个的SN号,按步骤6方法,将重复的下行缓冲区n2位置的报文删除,并按照下列情况分别处理:
步骤7.1、当delt1大于delt2时,则只送n1位置的报文到语音解码器解码;
步骤7.2、当delt1小于delt2时,则只送n2位置的报文到语音解码器解码;
步骤7.3、当delt1等于delt2时,则送n1和n2位置两个报文到语音解码器解码;
步骤8、p1和p2是上行和下行语音音量权值,取值范围均为[0,1],p1和p2通过预设置的方式确定参数,用于对语音解码器输出的PCM信号进行加权,设解码器输出上行和下行PCM信号分别记为pcm1、pcm2,加权后的信号分别为rpcm1、rpcm2,则语音音量加权计算公式(1)、公式(2)为:
rpcm1=pcm1*p1……(1),
rpcm2=pcm2*p2……(2),
步骤9、在步骤8的基础上,当步骤8中解码器输出的是一路PCM信号时,即只有上行的rpcm1或下行的rpcm2,则将rpcm1、rpcm2直接发送给播放器进行播放;
当步骤8中解码器输出的是二路PCM信号时,则生成rpcm信号,并将生成rpcm信号发送到播放器进行播放,rpcm生成的公式(3)如下:
rpcm=rpcm1+rpcm2……(3),
步骤10、生成的pcm数据流即为最终播放的数据,将最终的播放数据送入播放器(语音的编码译码器)进行播放。
进一步地,在步骤5中,当上述步骤确定的两个语音帧时间差不同,则取时间差大的语音帧,将时间差大的语音帧的RTP报文送入语音解码器,得到一个语音帧的PCM数据流;当上述步骤确定的两个语音帧时间差相等,则将这两个语音帧的RTP报文分别送入解码器,得到两个PCM数据流。
本发明并不限于上述实施方式,在不背离本发明实质内容的情况下,本领域技术人员可以想到的任何变形、改进、替换均落入本发明的保护范围。
Claims (4)
1.一种VoLTE语音报文双向合并实时播放方法,其特征在于,包括以下步骤:
骤1、将接收到的RTP报文按照上行和下行、按接收的顺序存入上行和下行两个缓冲区;
步骤2、分别解析上行和下行缓冲区中第一个接收的报文RTP头中的timestamp字段中,记录为t1和t2;
步骤3、当上行和下行任何一个缓冲区域存储达到最大值后,启动20ms定时器;
步骤4、当20ms定时器超时的时候时,从上行缓冲区底部的报文开始,逐个解析RTP第一个timestamp,计算deltT=timestamp-t1;通过遍历缓冲区中所有报文,找到deltT两个语音报文的时间差最大的语音帧,并记录该帧的位置为n1、时间差为delt1;
步骤5、重复步骤4中缓冲区处理部分,对下行缓冲区做与步骤4相同的处理,得到的位置记为n2、时间差记为delt2;
步骤6、解析n1位置语音报文RTP第一个的SN号,并检查上行缓冲区中所有报文,解析并进行对比,当有SN号相同的报文时,则将该SN号的报文从缓冲区中删除;
步骤7、解析n2位置语音报文RTP第一个的SN号,按步骤6方法,将重复的下行缓冲区n2位置的报文删除,并按照下列情况分别处理:
步骤7.1、当delt1大于delt2时,则只送n1位置的报文到语音解码器解码;
步骤7.2、当delt1小于delt2时,则只送n2位置的报文到语音解码器解码;
步骤7.3、当delt1等于delt2时,则送n1和n2位置两个报文到语音解码器解码;
步骤8、p1和p2是上行和下行语音音量权值,取值范围均为[0,1],p1和p2通过预设置的方式确定参数,用于对语音解码器输出的PCM信号进行加权,设解码器输出上行和下行PCM信号分别记为pcm1、pcm2,加权后语音音量的信号为rpcm1、rpcm2,则语音音量加权计算公式(1)、公式(2)为:
rpcm1=pcm1*p1……(1),
rpcm2=pcm2*p2……(2),
步骤9、在步骤8的基础上,当步骤8中解码器输出的是一路PCM信号时,即只有上行的rpcm1或下行的rpcm2,则将rpcm1、rpcm2直接发送给播放器进行播放;
当步骤8中解码器输出的是二路PCM信号时,则生成rpcm信号,并将生成rpcm信号发送到播放器进行播放,rpcm生成的计算公式如下:
rpcm=rpcm1+rpcm2……(3),
步骤10、生成的pcm数据流即为最终播放的数据,将最终的播放数据送入播放器进行播放。
2.根据权利要求1所述的一种VoLTE语音报文双向合并实时播放方法,其特征在于,在步骤5中,当两个语音帧时间差不同,则取时间差大的语音帧,并将时间差大的语音帧的RTP报文送入语音解码器,得到一个语音帧的PCM数据流;当两个语音帧时间差相等,则将这两个语音帧的RTP报文分别送入解码器,得到两个PCM数据流。
3.根据权利要求1所述的一种VoLTE语音报文双向合并实时播放方法,其特征在于,步骤8中,加权后的语音音量信号rpcm1、rpcm2加权计算分别按照下式(1)、(2)计算:
rpcm1=pcm1*p1……(1),
rpcm2=pcm2*p2……(2)。
4.根据权利要求1所述的一种VoLTE语音报文双向合并实时播放方法,其特征在于,步骤9中,rpcm生成的计算公式(3)如下:
rpcm=rpcm1+rpcm2……(3)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110710092.2A CN113572736B (zh) | 2021-06-25 | 2021-06-25 | 一种VoLTE语音报文双向合并实时播放方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110710092.2A CN113572736B (zh) | 2021-06-25 | 2021-06-25 | 一种VoLTE语音报文双向合并实时播放方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113572736A true CN113572736A (zh) | 2021-10-29 |
CN113572736B CN113572736B (zh) | 2023-03-10 |
Family
ID=78162677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110710092.2A Active CN113572736B (zh) | 2021-06-25 | 2021-06-25 | 一种VoLTE语音报文双向合并实时播放方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113572736B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003289335A (ja) * | 2002-03-28 | 2003-10-10 | Nippon Telegr & Teleph Corp <Ntt> | ストリーム再生方式を併用したVoIP対応IVRシステム |
CN105530389A (zh) * | 2015-12-03 | 2016-04-27 | 中国联合网络通信集团有限公司 | 基于ims网络的语音留言方法及装置 |
CN107241516A (zh) * | 2017-05-10 | 2017-10-10 | 姚杰 | 一种基于VoLTE的网络传输视频铃声调取方法 |
CN109379168A (zh) * | 2018-11-23 | 2019-02-22 | 竞技世界(北京)网络技术有限公司 | 一种用于前端实时语音聊天的语音平滑播放方法 |
CN110611716A (zh) * | 2019-09-27 | 2019-12-24 | 北京巨象具象科技有限公司 | 一种预制数据传播方法、装置和电子设备 |
CN111010714A (zh) * | 2019-11-28 | 2020-04-14 | 北京长焜科技有限公司 | 提升LTE系统边缘VoLTE语音用户通话质量的方法 |
CN111355699A (zh) * | 2018-12-24 | 2020-06-30 | 中移(杭州)信息技术有限公司 | 一种语音能力实现系统 |
-
2021
- 2021-06-25 CN CN202110710092.2A patent/CN113572736B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003289335A (ja) * | 2002-03-28 | 2003-10-10 | Nippon Telegr & Teleph Corp <Ntt> | ストリーム再生方式を併用したVoIP対応IVRシステム |
CN105530389A (zh) * | 2015-12-03 | 2016-04-27 | 中国联合网络通信集团有限公司 | 基于ims网络的语音留言方法及装置 |
CN107241516A (zh) * | 2017-05-10 | 2017-10-10 | 姚杰 | 一种基于VoLTE的网络传输视频铃声调取方法 |
CN109379168A (zh) * | 2018-11-23 | 2019-02-22 | 竞技世界(北京)网络技术有限公司 | 一种用于前端实时语音聊天的语音平滑播放方法 |
CN111355699A (zh) * | 2018-12-24 | 2020-06-30 | 中移(杭州)信息技术有限公司 | 一种语音能力实现系统 |
CN110611716A (zh) * | 2019-09-27 | 2019-12-24 | 北京巨象具象科技有限公司 | 一种预制数据传播方法、装置和电子设备 |
WO2021056873A1 (zh) * | 2019-09-27 | 2021-04-01 | 巨象科技有限公司 | 一种预制数据传播方法、装置和电子设备 |
CN111010714A (zh) * | 2019-11-28 | 2020-04-14 | 北京长焜科技有限公司 | 提升LTE系统边缘VoLTE语音用户通话质量的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113572736B (zh) | 2023-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7359324B1 (en) | Adaptive jitter buffer control | |
US8363673B2 (en) | Method and device for processing network time delay characteristics | |
JP5591897B2 (ja) | 適応デジッタバッファの方法及び装置 | |
RU2423009C1 (ru) | Способ и устройство для измерения синхронизации воспроизведения речевых потоков в пределах предложения без влияния на разборчивость | |
CN101394469B (zh) | 一种音视频同步方法、装置及一种数字电视芯片 | |
JP4838273B2 (ja) | メディア内同期化のための適応型メディア再生方法および装置 | |
JP4342557B2 (ja) | 中継方法、中継装置、通信システム及びコンピュータプログラム | |
US10554704B2 (en) | Low latency media mixing in packet networks | |
CN101207822A (zh) | 流媒体终端的音频视频同步的方法 | |
CN101636990A (zh) | 在通信系统中传输数据的方法 | |
US20160286575A1 (en) | Methods and devices for controlling speech quality | |
JP2001313678A (ja) | コンピュータのネットワークにおけるオーディオ・データの再生を同期させる方法 | |
CN113572736B (zh) | 一种VoLTE语音报文双向合并实时播放方法 | |
CN106302375B (zh) | 去除流媒体播放器时延累积的方法及装置 | |
CN101378356B (zh) | 一种ip实时流媒体的播放方法 | |
US8837368B2 (en) | Transmission method of femtocell | |
CN107005352A (zh) | 语音自适应参数的调整方法、系统及相关设备 | |
US20120009892A1 (en) | Wireless communication system and method for adjusting used depth of buffer unit in wireless communication system | |
JP2007082045A (ja) | 通信装置、その通信方法、通信プログラム及び通信プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US20220417183A1 (en) | Using buffered audio to overcome lapses in telephony signal | |
CN101369975B (zh) | 一种时延丢包的检测方法及系统 | |
JPH059974B2 (zh) | ||
Nihei et al. | A QoE indicator and a transmission control method for VoIP on mobile networks considering delay spikes | |
US8572273B2 (en) | Method and apparatus for reproducing multimedia data by controlling reproducing speed | |
US11330034B1 (en) | Data disruption tracking for wireless networks, such as IMS networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 100176 2701, 27th floor, building 1, yard 22, Ronghua Middle Road, Beijing Economic and Technological Development Zone, Daxing District, Beijing Patentee after: Beijing Changkun Technology Co.,Ltd. Address before: 100176 821-1, unit 2, 10th floor, building 1, No. 3, Rongjing East Street, economic and Technological Development Zone, Daxing District, Beijing Patentee before: Beijing Changkun Technology Co.,Ltd. |