CN100499843C - 一种wap网络中ptt音频流的处理方法 - Google Patents
一种wap网络中ptt音频流的处理方法 Download PDFInfo
- Publication number
- CN100499843C CN100499843C CNB2007100026285A CN200710002628A CN100499843C CN 100499843 C CN100499843 C CN 100499843C CN B2007100026285 A CNB2007100026285 A CN B2007100026285A CN 200710002628 A CN200710002628 A CN 200710002628A CN 100499843 C CN100499843 C CN 100499843C
- Authority
- CN
- China
- Prior art keywords
- audio
- data
- audio data
- server
- voice data
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种WAP网络中PTT音频流的处理方法,通过在发送端设置至少一个用于存储音频数据的小容量的缓冲区,及在接收端设置一个用于存储音频数据的大容量的缓冲区,并执行步骤:发送端将其接收到的音频数据存储于当前的缓冲区中,在其当前的缓冲区中音频数据存储满时,即向音频服务器上传音频数据,同时,由其另一个缓冲区继续存储音频数据;音频服务器保存并向接收端转发上述音频数据;所述接收端将音频服务器下发的音频数据存储于其缓冲区中,并在缓冲区存储达到设定值时播放音频数据。本发明中,发送端通过并发的多个连接实时上传音频数据,接收端通过并发的多个连接实时接收数据,避免了音频流数据播放时出现延时、断续或数据丢失。
Description
技术领域
本发明涉及一种移动通信技术,尤其涉及一种WAP(Wireless ApplicationProtocol,无线应用协议)网络中PTT(Push To Talk,集群通信业务)音频流的处理方法。
背景技术
目前国内采用两种GPRS(General Packet Radio Service,通用无线分组业务)接入方式,对应的APN(Access Point Name,接入点名称)分别为CMWAP和CMNET。前者是为手机WAP上网而设立的,后者则主要是为个人计算机、笔记本电脑、PDA(Personal Digital Assistant,个人数字助理)等利用GPRS上网服务的。
在采用WAP网络方式时,移动终端只能使用HTTP(Hypertext TransferProtocol,超文本传输协议)协议通过WAP网关代理访问服务器,无法直接与服务器进行双向的自由通讯。由于WAP网关的存在,移动终端访问服务器存在时延和数据量大小等方面的限制,给实现流式数据交换增加了很大难度。
目前,移动终端在WAP网络正常的情况下,发送一次HTTP请求需要两秒至十几秒的时间才能收到响应,更长时则可能需要数十秒,而且,每次收到响应的时间差异也较大。移动终端收到请求响应的时延直接表现为其获得音频数据的时间较长,即讲话者讲了很长时间以后接收者才能听到;同时,由于每次响应的时延存在差异,使得移动终端接收到响应的音频数据包的顺序也不能保证,讲话者后面讲的话可能比前面讲的话先到达接收者,出现讲话断续或丢失部分语音数据。
发明内容
本发明针对现有技术的缺点,提供一种WAP网络中PTT音频流的处理方法,以使移动终端在播放音频数据时不致出现延时、断续或数据丢失。
本发明所述的WAP网络中PTT音频流的处理方法,首先在发送端设置至少一个用于存储音频数据的小容量的缓冲区,及在接收端设置一个用于存储音频数据的大容量的缓冲区,并包括如下步骤:
步骤一,发送端将其接收到的音频数据存储于当前的缓冲区中,在其当前的缓冲区中音频数据存储满时,即向音频服务器上传音频数据,同时,由其另一个缓冲区继续存储音频数据;
步骤二,音频服务器保存并向接收端转发上述音频数据;
步骤三,所述接收端将音频服务器下发的音频数据存储于其缓冲区中,并在缓冲区存储达到设定值时播放音频数据。
具体的讲,根据使用的语音编码以及发送间隔设置发送端的缓冲区,根据使用的语音编码以及播放缓冲间隔设置接收端的缓冲区。
所述步骤一中,发送端根据每个音频数据包产生的时间顺序对上传的各个音频数据包进行编号。
所述步骤一中,音频服务器接收到每个音频数据包后,向发送端返回一个内容为空的数据包。
所述步骤一中,当音频服务器接收到音频数据结束的包时,即根据该结束包中的最大音频数据包编号依次检查其之前接收到的各个音频数据包中的编号,若发现存在音频数据包编号缺失,则向发送端返回一个重发对应编号的音频数据包的指令;若检查全部音频数据包都已收全,则向发送端回复一个确认的数据包。
所述WAP网络中还包括用于转发控制信息的主服务器,所述步骤一中,发送端开始向音频服务器上传音频数据时,还向主服务器上传音频信令。
所述步骤二中,所述主服务器向接收端转发其接收到的音频信令,所述接收端根据此音频信令按设定的时间间隔向音频服务器发出要求其下发音频数据的请求数据包,所述音频服务器在接收到上述请求数据包后将其保存的音频数据转发至接收端。
所述步骤三中,接收端根据各音频数据包的编号按顺序播放。
所述步骤三中,当接收端在设定的等待时间内没有接收到或没有接收完对应的音频数据包,且后续的音频数据包已到达时,则跳过该没有接收到或没有接收完的音频数据包,转为播放其接收到的下一个音频数据包。
该PTT音频流的处理方法中,发送端通过并发的多个连接实时上传音频数据,接收端则通过在设定间隔发送请求数据包,并发的利用多个连接实时接收音频数据。由于接收端的缓冲区容量相对于发送端的缓冲区容量大,故其可以存储的音频数据更多,在进行播放时就可以实现连续而且无时延,并且,由于可以对音频数据顺序播放,还避免了音频数据的丢失。
在现实的网络状况中,由于网络速度不稳定,数据传输中断的概率较大,并且,接收端播放其缓冲区中音频数据的时间也相对较长,使得较容易出现数据传输中断时间很长的情况,因此,为了保证音频数据播放的连续性,可以设定一个等待时间,该等待时间需要设定的相对长才不容易丢失音频数据。接收端在该设定的等待时间内没有接收到或没有接收完对应的音频数据包,并且,后续的音频数据包已到达时,则跳过该没有接收到或没有接收完的音频数据包,而转为播放其接收到的下一个音频数据包。
音频服务器对于前述接收端发出的要求下发音频数据的请求,还可以作出如下几种不同的响应:
a.若音频服务器中没有音频数据,则向接收端返回内容为空的数据包;
b.若音频服务器欲放弃向接收端下发音频数据,则向接收端返回包含内容为错误的数据包。
当接收端接收音频服务器下发的音频数据出现错误,需要音频服务器进行重发时,接收端向音频服务器发出内容为错误应答的数据包,音频服务器根据此错误应答包内记载的重发数据包的编号,重新向接收端下发对应的音频数据包。
当接收端接收音频服务器下发的音频数据完成时,其会向音频服务器发出内容为正确应答的数据包,而音频服务器则向接收端返回内容为空的数据包。
本发明的有益效果在于,发送端通过并发的多个连接将音频数据实时上传至服务器,再由服务器转发至接收端,接收端通过并发的多个连接实时接收音频数据并存储在其缓冲区中,当缓冲区存储达到设定值时才播放音频数据,使得接收端可以连续播放音频数据,克服了现有技术中接收端播放音频数据时出现时延、断续或丢失数据的问题。
附图说明
下面结合附图和具体实施方式对本发明做进一步说明。
图1为实施例中所述WAP网络的结构示意图;
图2为实施例中所述WAP网络中对PTT音频流处理方法的流程示意图。
具体实施方式
如图1所示,WAP网络中包括发送端、接收端,以及主服务器和音频服务器,其中,发送端通过音频服务器向接收端发送音频数据,而发送端的音频信令等控制信息则通过主服务器向接收端转发。
本发明所述的WAP网络中对PTT音频流处理方法中,首先需要在发送端设置至少一个用于存储音频数据的小容量的缓冲区,以及在接收端设置一个用于存储音频数据的大容量的缓冲区。
这里所述的发送端的缓冲区是根据发送端使用的语音编码和发送间隔设置的,而所述接收端的缓冲区则是根据使用的语音编码和播放缓冲间隔设置的,所述的发送端中缓冲区的容量大小与接收端中缓冲区的容量大小是相对而言的。由于WAP网络中HTTP的数据传输时间大于音频数据传送的间隔时间,因此,欲使接收端达到连续播放音频数据的效果,就必须使接收端的音频数据缓冲区的容量相对大;对于发送端而言,则必须将音频数据实时的上传给服务器,这样才能保证接收端缓冲区中能够存储足够连续播放的音频数据,因此,发送端存储音频数据的缓冲区容量就要相对小,这样,通过设置至少一个小容量的缓冲区,这些缓冲区共同存储音频数据,使发送端的音频数据得以实时的上传给服务器。举例来说,发送端中各缓冲区的容量大小均为可存储1秒种音频数据,则接收端的缓冲区的容量大小应该设置成大于发送端中各缓冲区的容量,例如,设置为可以存储5秒种音频数据。
如图2所示,本发明所述的WAP网络中对PTT音频流的处理方法,包括如下步骤:
步骤101,发送端将其接收到的音频数据存储于当前的缓冲区中,在其当前的缓冲区中音频数据存储满时,即向音频服务器上传音频数据,同时,由其另一个缓冲区继续存储音频数据。
本步骤中,发送端将其接收到的音频数据存储在当前的缓冲区中,当该缓冲区中存储的音频数据满时,即向音频服务器上传该缓冲区中的音频数据,同时,发送端将继续接收的音频数据由另一个缓冲区继续进行存储。
由于WAP网络中HTTP传输数据的时间大于音频数据的传输间隔时间,因此,本发明中可同时开启多个HTTP连接来并行传送音频数据,也就是说,在当前缓冲区存储满时,即可向音频服务器上传该缓冲区中的音频数据,同时,由另一个缓冲区继续存储音频数据,待该另一个缓冲区满时,即向音频服务器上传该另一个缓冲区中的音频数据,依此类推,发送端的多个缓冲区轮流存储音频数据,再轮流向音频服务器上传其中存储的音频数据,而且,多个缓冲区向音频服务器上传音频数据的过程可同时进行。
在实际的网络通信过程中,发送端在向音频服务器上传音频数据之前,首先要和音频服务器之间建立联系,即启动音频对话。
发送端启动音频对话的过程包括:
A.发送端向音频服务器发送包含请求启动音频对话的数据包;该数据包中包含了发送端的标识信息和音频数据的标识信息;
B.音频服务器接收到上述数据包后,向发送端回复内容为空的数据包,音频服务器端即与发送端建立起音频会话联系。
发送端向音频服务器上传音频数据时,可以同时上传多个缓冲区中的音频数据包,并根据每个音频数据包产生的时间顺序对各个音频数据包进行编号;在音频输入结束时,发送端会产生一个音频数据输入结束的包,并将该结束的包上传至音频服务器,例如,用户放开通话键即表示音频数据输入结束。所述音频服务器接收到各个音频数据包后,都会向发送端返回一个内容为空的数据包,当其接收到音频数据结束的包时,即根据该结束包中的最大音频数据包编号依次检查其之前接收到的各个音频数据包中的编号,若发现存在音频数据包编号缺失,则向发送端返回一个重发音频数据包的指令,该指令中包含了需要重发的音频数据包对应的编号;若检查发现全部音频数据包都已收全,则向发送端回复一个确认的数据包。
若音频服务器在未收到发送端启动音频对话的指令之前就收到音频数据,则可自动建立起音频会话联系,接收发送端上传的音频数据包。
发送端将其接收到的音频数据上传给音频服务器,同时,发送端在其开始上传音频数据时,还向主服务器上传音频信令,此音频信令包括期望的接收者的标识、音频服务器标识及本次音频通话标识信息。
步骤102,音频服务器保存并向接收端转发上述音频数据。
根据上述步骤101,发送端将其接收到的音频数据上传至音频服务器,本步骤中,所述音频服务器保存音频数据,并转发至接收端。
所述主服务器接收到发送端上传的音频信令后,即将该音频信令转发至接收端,接收端可根据此音频信令按设定的时间间隔向音频服务器发出要求其下发音频数据的请求数据包,而音频服务器则在收到上述请求数据包后将其保存的音频数据转发至接收端。上述设定的时间间隔可根据当前WAP网络的时延情况和设备的并发连接能力选定,并可引入自适应算法,目前选定为1秒。
步骤103,所述接收端将音频服务器下发的音频数据存储于其缓冲区中,并在缓冲区存储达到设定值时播放音频数据。
所述音频服务器响应接收端按设定时间间隔发出的要求其下发音频数据的请求数据包,将对应的音频数据下发至接收端。所述接收端将其接收到的音频服务器下发的音频数据存储于其缓冲区中,并在缓冲区中音频数据存储到设定值时进行播放。
接收端在播放音频数据时,可根据各音频数据包对应的编号按顺序播放。
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
Claims (9)
1.一种WAP网络中PTT音频流的处理方法,其特征在于,在发送端设置至少一个用于存储音频数据的小容量的缓冲区,及在接收端设置一个用于存储音频数据的大容量的缓冲区,并执行如下步骤:
步骤一,发送端将其接收到的音频数据存储于当前的缓冲区中,在其当前的缓冲区中音频数据存储满时,即向音频服务器上传音频数据,同时,由其另一个缓冲区继续存储音频数据;
步骤二,音频服务器保存并向接收端转发上述音频数据;
步骤三,所述接收端将音频服务器下发的音频数据存储于其缓冲区中,并在缓冲区存储达到设定值时播放音频数据。
2.如权利要求1所述的处理方法,其特征在于,根据使用的语音编码以及发送间隔设置发送端的缓冲区,根据使用的语音编码以及播放缓冲间隔设置接收端的缓冲区。
3.如权利要求1所述的处理方法,其特征在于,所述步骤一中,发送端根据每个音频数据包产生的时间顺序对上传的各个音频数据包进行编号。
4.如权利要求1所述的处理方法,其特征在于,所述步骤一中,音频服务器接收到每个音频数据包后,向发送端返回一个内容为空的数据包。
5.如权利要求3所述的处理方法,其特征在于,所述步骤一中,当音频服务器接收到音频数据结束的包时,即根据该结束包中的最大音频数据包编号依次检查其之前接收到的各个音频数据包中的编号,若发现存在音频数据包编号缺失,则向发送端返回一个重发对应编号的音频数据包的指令;若检查全部音频数据包都已收全,则向发送端回复一个确认的数据包。
6.如权利要求1所述的处理方法,其特征在于,所述WAP网络中还包括用于转发控制信息的主服务器,所述步骤一中,发送端开始向音频服务器上传音频数据时,还向主服务器上传音频信令。
7.如权利要求6所述的处理方法,其特征在于,所述步骤二中,所述主服务器向接收端转发其接收到的音频信令,所述接收端根据此音频信令按设定的时间间隔向音频服务器发出要求其下发音频数据的请求数据包,所述音频服务器在接收到上述请求数据包后将其保存的音频数据转发至接收端。
8.如权利要求3所述的处理方法,其特征在于,所述步骤三中,接收端根据各音频数据包的编号按顺序播放。
9.如权利要求1所述的处理方法,其特征在于,所述步骤三中,当接收端在设定的等待时间内没有接收到或没有接收完对应的音频数据包,且后续的音频数据包已到达时,则跳过该没有接收到或没有接收完的音频数据包,转为播放其接收到的下一个音频数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100026285A CN100499843C (zh) | 2007-01-25 | 2007-01-25 | 一种wap网络中ptt音频流的处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100026285A CN100499843C (zh) | 2007-01-25 | 2007-01-25 | 一种wap网络中ptt音频流的处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101026789A CN101026789A (zh) | 2007-08-29 |
CN100499843C true CN100499843C (zh) | 2009-06-10 |
Family
ID=38744612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007100026285A Expired - Fee Related CN100499843C (zh) | 2007-01-25 | 2007-01-25 | 一种wap网络中ptt音频流的处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100499843C (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727403A (zh) * | 2008-10-15 | 2010-06-09 | 深圳市朗科科技股份有限公司 | 数据存储系统、设备及方法 |
CN101853149A (zh) * | 2009-03-31 | 2010-10-06 | 张力 | 多核系统中单生产者/单消费者队列的处理方法及装置 |
CN102624874B (zh) * | 2012-02-21 | 2014-03-12 | 腾讯科技(深圳)有限公司 | 一种语音信息传送方法及系统 |
CN102752431B (zh) * | 2012-06-29 | 2015-11-18 | 武汉钢铁(集团)公司 | 一种实现Android手机语音对讲的方法 |
CN103345204B (zh) * | 2013-05-10 | 2018-05-25 | 上海斐讯数据通信技术有限公司 | 一种家庭控制系统 |
CN104616652A (zh) * | 2015-01-13 | 2015-05-13 | 小米科技有限责任公司 | 语音传输方法及装置 |
CN106657178B (zh) * | 2015-10-29 | 2019-08-06 | 中国科学院声学研究所 | 一种基于http服务器的三维音效在线处理方法 |
CN110519710A (zh) * | 2018-05-21 | 2019-11-29 | 成都鼎桥通信技术有限公司 | 群组呼叫中避免数据丢失的方法、装置和终端 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002035755A2 (en) * | 2000-10-23 | 2002-05-02 | Akamba Corporation | System and method for handling denial of service server attacks |
US20040162095A1 (en) * | 2003-02-18 | 2004-08-19 | Motorola, Inc. | Voice buffering during call setup |
WO2006087026A1 (en) * | 2005-02-17 | 2006-08-24 | Sony Ericsson Mobile Communications Ab | Method and communication system for transferring messages containing audio and/or voice information |
-
2007
- 2007-01-25 CN CNB2007100026285A patent/CN100499843C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002035755A2 (en) * | 2000-10-23 | 2002-05-02 | Akamba Corporation | System and method for handling denial of service server attacks |
US20040162095A1 (en) * | 2003-02-18 | 2004-08-19 | Motorola, Inc. | Voice buffering during call setup |
WO2006087026A1 (en) * | 2005-02-17 | 2006-08-24 | Sony Ericsson Mobile Communications Ab | Method and communication system for transferring messages containing audio and/or voice information |
Also Published As
Publication number | Publication date |
---|---|
CN101026789A (zh) | 2007-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100499843C (zh) | 一种wap网络中ptt音频流的处理方法 | |
US8185143B1 (en) | Selectively buffering voice data at a server during a voice communication session | |
CN102685689B (zh) | 一键通服务方法 | |
CN100393080C (zh) | 一种用于因特网/网络电话的通信终端,系统和方法 | |
CN1835616B (zh) | 在电话通话期间设置背景音乐的移动通信终端及其方法 | |
US8977202B2 (en) | Communication apparatus having a unit to determine whether a profile is operating | |
CN104205884A (zh) | 多播广播多媒体服务辅助内容分发 | |
WO2002003645A2 (en) | Method and apparatus to synchronize audio and visual application data presentation | |
JP2006222591A5 (zh) | ||
CN102281213A (zh) | 一种支持语音和视频消息的即时通信方法和系统 | |
US7809839B2 (en) | Method and system for call set-up between mobile communication terminals | |
CN100584068C (zh) | 实现无线一键通业务的方法及无线一键通网关 | |
CN103686620A (zh) | 一种群组呼叫快速建立过程中防止语音丢失的方法 | |
CN110366160B (zh) | 一种基于云服务器的多sim卡集群读卡通话方法及系统 | |
CN100527865C (zh) | 无线一键通业务共享内容服务器中媒体信息的方法及系统 | |
CN101132554A (zh) | 通信终端设备、会议服务器装置以及相关方法 | |
CA2511146C (en) | Methods and apparatus for the immediate acceptance and queuing of voice data for ptt communications | |
CN100376101C (zh) | 一种即时语音通讯方法及其系统 | |
CN101674664A (zh) | 用户面数据传输的方法和网络系统 | |
CN101267390B (zh) | 异步时延网络通信方法及其系统、缓存处理装置 | |
CN108616496A (zh) | 多方通话的实现方法、装置、多通终端及网络侧设备 | |
JP2014127875A (ja) | 中継装置 | |
US20070178924A1 (en) | Apparatus for notifying a mobile user of a push-to-talk communication call in a mobile communication system and method therefor | |
CN101111035A (zh) | 在ptt终端中实现语音缓冲的装置和方法 | |
CN104580110A (zh) | 基于gprs的车载语音数据实时传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090610 Termination date: 20130125 |