CN113541872A - 实时通信方法和实时通信装置 - Google Patents
实时通信方法和实时通信装置 Download PDFInfo
- Publication number
- CN113541872A CN113541872A CN202110795113.5A CN202110795113A CN113541872A CN 113541872 A CN113541872 A CN 113541872A CN 202110795113 A CN202110795113 A CN 202110795113A CN 113541872 A CN113541872 A CN 113541872A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- audio packet
- server
- audio
- packet
- 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
- 230000006854 communication Effects 0.000 title claims abstract description 137
- 238000004891 communication Methods 0.000 title claims abstract description 135
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000012937 correction Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 description 21
- 238000005516 engineering process Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000013500 data storage Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 238000011084 recovery Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/08—Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- 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/80—Responding to QoS
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本公开提供一种实时通信方法和实时通信装置。一种用于第一电子设备的实时通信方法可包括以下步骤:从服务器接收与服务器通信的除第一电子设备之外的其他电子设备的音频包;当在T_exp(m+n)后没有接收到其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,向服务器请求重传第二电子设备的第m+n号音频包,其中,m表示音频包的序号并且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在正常通信情况下第一电子设备从服务器接收到第m+n号音频包的估计时间。
Description
技术领域
本公开涉及通信技术领域,尤其涉及一种实时通信方法和实时通信装置。
背景技术
随着网络技术的发展,实时通信技术被广泛应用。例如,在居家办公、远程办公或者缺乏实体会议室的情况下,视频会议成为了公司员工之间必不可少的沟通工具。在实时通信过程中,网络丢包受网络实际情况的影响,难以避免。当发生网络丢包时,与会者听到的声音音质会很差,甚至无法听清其他与会者的声音。因此,在实时通信过程中语音的丢包恢复很重要。
发明内容
本公开提供一种实时通信方法和实时通信装置,以至少解决上述提及的问题。
根据本公开实施例的第一方面,提供一种用于第一电子设备的实时通信方法,所述实时通信方法可包括:从服务器接收与所述服务器通信的除第一电子设备之外的其他电子设备的音频包;当在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,向所述服务器请求重传第二电子设备的第m+n号音频包,其中,m表示音频包的序号并且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在正常通信情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
可选地,所述实时通信方法还可包括:从所述服务器接收所述其他电子设备的整体丢包率;根据所述整体丢包率来确定向所述服务器发送的每个音频包所携带的冗余帧的数量;并且按照每个音频包携带当前时刻的音频帧和所述确定数量的冗余帧的形式向所述服务器发送第一电子设备的音频包。
可选地,所述实时通信方法还可包括:统计第一电子设备的单独丢包率;并且向所述服务器发送第一电子设备的单独丢包率。
可选地,所述实时通信方法还可包括:当向所述服务器请求重传第m+n号音频包后,如果在指定时间内没有接收到第m+n号音频包,则向所述服务器再次请求重传第m+n号音频包。
可选地,向所述服务器再次请求重传第m+n号音频包,可包括:在向所述服务器发送用于重传第m+n号音频包的请求消息时,向所述服务器发送关于重传次数的信息。
可选地,第一电子设备可存储用于保留在预定时间段内向所述服务器发送的音频包的历史音频包列表,其中,所述实时通信方法还可包括:当所述服务器向第一电子设备发送重传请求时,从所述历史音频包列表中选择请求重传的音频包并将该音频包发送给所述服务器。
根据本公开实施例的第二方面,提供一种用于服务器的实时通信方法,所述服务器与多个电子设备通信,所述实时通信方法可包括:从所述多个电子设备接收每个电子设备的音频包;向所述多个电子设备中的第一电子设备发送所述多个电子设备中除第一电子设备之外的其他电子设备的音频包;当第一电子设备在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,从第一电子设备接收用于重传第二电子设备的第m+n号音频包的请求;根据所述请求向第一电子设备重传第m+n号音频包,其中,m表示音频包的序号且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在通信正常情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
可选地,所述实时通信方法还可包括:接收所述多个电子设备中的每个电子设备的单独丢包率;基于所述其他电子设备的单独丢包率来统计所述其他电子设备的整体丢包率;并且向第一电子设备发送所述整体丢包率,其中,所述整体丢包率用于第一电子设备确定音频包所携带的冗余帧的数量。
所述实时通信方法,所述整体丢包率可以是所述其他电子设备的单独丢包率的预设分位数。
所述实时通信方法,所述服务器针对每个电子设备分别存储用于保留在预定时间段内从每个电子设备接收的音频包的历史音频包列表,其中,所述实时通信方法还可包括:当第一电子设备向所述服务器发送重传请求时,从针对第一电子设备的历史音频包列表中选择请求重传的音频包并将该音频包发送给第一电子设备。
根据本公开实施例的第三方面,提供一种用于第一电子设备的实时通信装置,所述实时通信装置可包括:接收模块,被配置为从服务器接收与所述服务器通信的除第一电子设备之外的其他电子设备的音频包;请求模块,被配置为当在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,向所述服务器请求重传第二电子设备的第m+n号音频包,其中,m表示音频包的序号并且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在正常通信情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
可选地,所述实时通信装置还可包括确定模块,被配置为:从所述服务器接收所述其他电子设备的整体丢包率;根据所述整体丢包率来确定向所述服务器发送的每个音频包所携带的冗余帧的数量;按照每个音频包携带当前时刻的音频帧和所述确定数量的冗余帧的形式向所述服务器发送第一电子设备的音频包。
可选地,所述实时通信装置还可包括统计模块,被配置为:统计第一电子设备的单独丢包率;并且向所述服务器发送第一电子设备的单独丢包率。
可选地,请求模块可被配置为:当向所述服务器请求重传第m+n号音频包后,如果在指定时间内没有接收到第m+n号音频包,则向所述服务器再次请求重传第m+n号音频包。
可选地,请求模块可被配置为:在向所述服务器发送用于重传第m+n号音频包的请求消息时,向所述服务器发送关于重传次数的信息。
可选地,所述实时通信装置可存储用于保留在预定时间段内向所述服务器发送的音频包的历史音频包列表,其中,所述实时通信装置还可包括选择模块,被配置为:当所述服务器向第一电子设备发送重传请求时,从所述历史音频包列表中选择请求重传的音频包并将该音频包发送给所述服务器。
根据本公开实施例的第四方面,提供一种用于服务器的实时通信装置,所述服务器与多个电子设备通信,所述实时通信装置可包括:接收模块,被配置为从所述多个电子设备接收每个电子设备的音频包;发送模块,被配置为向所述多个电子设备中的第一电子设备发送所述多个电子设备中除第一电子设备之外的其他电子设备的音频包,其中,发送模块还可被配置为:当第一电子设备在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,从第一电子设备接收用于重传第二电子设备的第m+n号音频包的请求,并且根据所述请求向第一电子设备重传第m+n号音频包,其中,m表示音频包的序号且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在通信正常情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
可选地,所述实时通信装置还可包括统计模块,被配置为:接收所述多个电子设备中的每个电子设备的单独丢包率;基于所述其他电子设备的单独丢包率来统计所述其他电子设备的整体丢包率;并且向第一电子设备发送所述整体丢包率,其中,所述整体丢包率用于第一电子设备确定音频包所携带的冗余帧的数量。
可选地,所述整体丢包率可以是所述其他电子设备的单独丢包率的预设分位数。
可选地,所述实时通信装置可针对每个电子设备分别存储用于保留在预定时间段内从每个电子设备接收的音频包的历史音频包列表,其中,所述实时通信装置还可包括选择模块,被配置为:当第一电子设备向所述服务器发送重传请求时,从针对第一电子设备的历史音频包列表中选择请求重传的音频包并将该音频包发送给第一电子设备。
根据本公开实施例的第五方面,提供一种电子设备,第一电子设备可包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如上所述的实时通信方法。
根据本公开实施例的第六方面,提供一种存储指令的计算机可读存储介质,当所述指令被至少一个处理器运行时,促使所述至少一个处理器执行如上所述的实时通信方法。
根据本公开实施例的第七方面,提供一种计算机程序产品,所述计算机程序产品中的指令被电子装置中的至少一个处理器运行以执行如上所述的实时通信方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
通过将前向纠错技术和重传技术相结合,在发生网络丢包时,能够对网络丢包进行恢复,同时兼顾通信延迟和整体发送码率,从而提高了用户通信体验。此外,本公开可根据前向纠错的冗余信息仅针对丢失的音频包进行重传,节省了网络开销和资源。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据本公开的实施例的实时通信的应用环境的示图;
图2是根据本公开的实施例的用于第一电子设备的实时通信方法的流程图;
图3是根据本公开的实施例的在实时通信时使用的音频包的示图;
图4是根据本公开的实施例的用于服务器的实时通信方法的流程图;
图5是根据本公开的实施例的实时通信设备的结构示意图;
图6是根据本公开的实施例的用于第一电子设备的实时通信装置的框图;
图7是根据本公开的实施例的用于服务器的实时通信装置的框图;
图8是根据本公开的实施例的电子设备的框图。
在整个附图中,应注意,相同的参考标号用于表示相同或相似的元件、特征和结构。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
提供参照附图的以下描述以帮助对由权利要求及其等同物限定的本公开的实施例的全面理解。包括各种特定细节以帮助理解,但这些细节仅被视为是示例性的。因此,本领域的普通技术人员将认识到在不脱离本公开的范围和精神的情况下,可对描述于此的实施例进行各种改变和修改。此外,为了清楚和简洁,省略对公知的功能和结构的描述。
以下描述和权利要求中使用的术语和词语不限于书面含义,而仅由发明人用来实现本公开的清楚且一致的理解。因此,本领域的技术人员应清楚,本公开的各种实施例的以下描述仅被提供用于说明目的而不用于限制由权利要求及其等同物限定的本公开的目的。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在相关技术中,在音频编码传输过程中对于网络丢包的恢复,主要有前向纠错FEC技术和重传技术。在传输过程中,每个音频包都会有一个编号(sequence),以便于接收端确认哪些音频包丢失了。FEC技术的主要方式是,发送端在发送音频包时,添加一部分冗余信息,使得接收端在网络丢包发生时,可通过冗余信息来恢复丢包,从而重建丢失了的语音。重传技术的主要方式是,接收端发现接收到的音频包丢失后,通知发送端重新发送丢失的音频包。
为了获得更高效的音频网络抗丢包效果,本公开将FEC技术和重传技术相结合,在网络丢包发生时,能够对网络丢包进行恢复,同时兼顾通信延迟和整体发送码率。
在下文中,根据本公开的各种实施例,将参照附图对本公开的方法和装置进行详细描述。
图1是根据本公开的实施例的用于实时通信的应用环境的示图。
参照图1,该应用环境100包括终端110、终端120和服务器130。
终端110和终端120可以是用户所在终端,例如,用户在进行视频会议时所使用的终端。终端110和终端120可以是智能手机、平板电脑、便携式计算机和台式计算机等中的至少一种。终端110可安装有目标应用,用于诸如用于视频会议的应用软件等。
虽然本实施例仅示出两个终端进行说明,但是本领域技术人员可知晓,终端的数量可以为两个或更多个。本公开实施例不对终端的数量和设备类型进行任何限定。
终端110和终端120可通过无线网络与服务器130连接,使得终端110和终端120与服务器130之间可进行实时通信。例如,网络可包含蓝牙、局域网(LAN)、广域网(WAN)、无线链路、内联网、互联网或其组合等。此外,终端110和终端120也可通过有线网络与服务器130连接,以进行数据交互。
服务器130可实时地从终端110接收音频包并且将接收到的音频包转发给终端120,也可从终端120接收音频包并且将该音频包转发给终端110。这样,终端110和终端120所在的用户可实时地获得相应的语音信号。
以视频会议为例,使用终端110和120的与会者和服务器130进行通信连接,在与会者发出语音时,与会者对应的终端将该语音编码为一帧一帧的音频帧,然后以音频包的形式发送给服务器130,同时终端也可接收服务器130转发过来的其他与会者的音频包。服务器130接收到与会者的音频包后,可将其转发给其他与会者的终端。这里,可将终端到服务器的这一段发送链路称为“上行”,将服务器到终端的这一段发送链路称为“下行”。
每个接收方可根据包序号统计出一段链路的丢包率。因此,服务器130可统计出每个与会者终端上行的丢包率,而每个与会者终端都可统计出各自下行的丢包率。为了便于决策,每个与会者终端可将自己统计的下行丢包率定期发送给服务器130,以用于做丢包恢复的决策。服务器130为每个与会者终端计算其他与会者终端的整体下行丢包率,例如,服务器130选取除与会者终端110之外的其他与会者终端的丢包率的90%分位数作为整体下行网络的丢包率d_loss_1,然后发送给与会者终端110,这样与会者终端110即可知道其他与会者终端的整体下行丢包率。以同样的方式其他与会者终端也能够知道其他与会者终端的整体下行丢包率。
与会者终端110可根据服务器130发送的d_loss_1来决定携带FEC信息的多少,d_loss_1越大,说明其他与会者终端的下行丢包概率越大,因此需要携带的FEC信息越多。
在与会者终端接收到音频包后,如果发现音频包丢失,可先尝试使用FEC信息进行恢复,如果FEC信息无法恢复,则进行重传请求,依靠服务器重传音频包进行恢复。
作为示例,当第m号音频包在T_exp(m+n)后仍没有到达与会者终端或者没有被FEC恢复,则考虑进行重传。其中,T_exp(m)是第m号音频包期望的到达时间,通常音频帧的时长是固定的,比如20ms,这样就可以通过历史到达的音频包的时间估算出第m号音频包期望的到达时间T_exp(m)。n是音频包中所携带的冗余帧数,对于音频帧m,只要m到m+n号音频包中任何一个音频包到达就可恢复音频帧m。因此,与会者终端在等到T_exp(m+n)时刻,如果m到m+n号音频包都没有到达,则发送重传请求给服务器,但此时可不请求重传m号音频包,而是请求服务器重传m+n号音频包。
本公开通过使用一种FEC技术和重传技术相结合的方式,根据FEC的冗余信息只针对某些丢失的音频包进行重传,可获得更高效的音频网络抗丢包效果。相比传统的FEC技术或者重传技术方案,可获得更好的丢包恢复效果。
图2是根据本公开的实施例的用于第一电子设备的实时通信方法的流程图。图2的实时通信方法可由第一电子设备(诸如终端110)执行。第一电子设备可以是智能手机、平板电脑、便携式计算机和台式计算机等中的至少一种。
在步骤S201,可将第一电子设备与服务器进行通信连接。例如,第一电子设备可通过无线网络或有线网络与服务器进行通信连接,以进行实时通讯。
根据本公开的实施例,服务器可与多个电子设备进行通信连接,以实现电子设备之间的语音通信
在步骤S202,可从服务器接收与服务器通信的其他电子设备的音频包。例如,在视频会议中,与会者所使用的电子设备可从服务器来接收其他与会者的语音。这里,服务器可用于接收与会者的音频包并且向其他与会者转发接收到的音频包。
在步骤S203,当在T_exp(m+n)后没有接收到其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,第一电子设备可向服务器请求重传第二电子设备的第m+n号音频包。
这里,m表示音频包的序号并且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在正常通信情况下第一电子设备从服务器接收到第m+n号音频包的估计时间。
根据本公开的实施例,携带FEC信息的音频包可如图3所示。在实时通讯过程中,语音按时间片段被电子设备的编码器编码为一帧一帧的音频帧(如图3中的块7、8、9、10、11、12)。图3中的白色块可表示原始的音频帧,即当前时刻的音频帧,阴影块可表示音频包携带的FEC信息(也可被称为冗余包),即先前时刻的音频帧。这样当某个音频包丢失时,可根据后面的音频包携带的FEC信息来恢复丢失的音频帧。例如,假设音频包10丢失,但是接收到了音频包11或者音频包12,这样可从音频包11或者音频包12中取出音频帧10。这里,三个音频包10-12中所携带的序号相同的音频帧相同。音频包所携带的冗余帧(即每个阴影块中的音频帧的数量)可根据其他电子设备的整体丢包率d_loss_x(x指示对应的电子装置)来确定。在没有特别说明的情况下,本公开中的丢包率(诸如整体丢包率和单独丢包率)可指“下行”丢包率。整体丢包率越大,说明其他电子设备的下行丢包概率越大,因此,音频包可携带更多的FEC信息。
例如,对于第二电子设备的第m号音频包所携带的冗余帧的数量n,第二电子设备可根据与服务器连接的除第二电子设备之外的其他电子设备(诸如第一电子设备等)的整体丢包率来确定。例如,整体丢包率可以是其他电子设备的单独丢包率的90%分位数。
此外,第一电子设备可从服务器接收与服务器通信连接的除第一电子设备之外的其他电子设备的整体丢包率,并且根据该整体丢包率来确定在向服务器发送音频包时每个音频包所携带的冗余帧的数量。然后,第一电子设备可按照每个音频包携带当前时刻的音频帧和确定数量的冗余帧的形式向服务器发送第一电子设备的音频包。
在本公开中,在一个时间段内音频包所携带的冗余帧数可相同。例如,如果12号音频包携带了3个冗余帧,在没有接收到13号音频包时,可假设13号音频包也会携带3个冗余帧。这样可便于电子设备用于确定每个音频包所携带的冗余帧的数量。
每个电子设备都可根据与服务器连接的除自身之外的其他电子设备的整体丢包率来确定音频包所携带的冗余帧的数量。
通常音频帧的时长是固定的,诸如20ms,这样可通过历史到达的音频包的时间估算出后面每个音频包期望的到达时间。
作为示例,对于第二电子设备的第m号音频包,如果第一电子设备接收到第m号至第m+n号音频包中的任何一个音频包,第一电子设备即可恢复第m号音频帧。如果在第一电子设备等到T_exp(m+n),依然没有接收到第m号至第m+n号音频包中的任何一个,第一电子设备可向服务器发送重传请求,此时第一电子设备不是请求重传第m号音频包,而是请求重传第m+n号音频包。因此,可根据FEC信息仅针对某些丢失的音频包进行重传。
当第一电子设备向服务器请求重传第m+n号音频包后,如果在指定时间内没有接收到第m+n号音频包,则第一电子设备可向服务器再次请求重传第m+n号音频包。同时在向服务器发送用于重传第m+n号音频包的请求消息时,第一电子设备可向服务器发送关于重传次数的信息。这里,指定时间可基于往返时延RTT设置。
作为示例,当第一次重传请求发出后,如果在T1=coef×RTT(Round-Trip Time)的时间内(coef系数通常取1.5,但本公开不限于此)没有收到重传包,则可认为重传包丢失,此时第一电子设备可再次发送重传请求,并且同时发送重传包的次数。例如,第一次发送重传请求时重传次数可被设置为1,之后每次发送重传请求时,将前一次重传请求时携带的重传次数乘以2。这里,RTT可指终端到服务器的往返时间,例如,从终端发送音频到服务器,然后服务器再返回给终端的时间。RTT根据诸如网络环境会实时变化,因此,指定时间可根据RTT的变化而实时地被更新。
当第二次重传请求发出后,如果在T2=coef×T1(coef系数通常取1.5,但本公开不限于此)的时间内,第一电子设备仍然没有收到重传包,则继续提高重传音频包的次数,直到超过最大重传次数。例如,最大重传次数可被设置为10。然而,上述示例仅是示例性的,本公开不限于此。
在重传过程中,等待时间随着重传次数的递增而变大,即指数级避退。
第一电子设备可实时统计自身的单独丢包率并且定期地将统计出的单独丢包率发送给服务器,以供服务器针对其他电子设备统计对应的整体丢包率。
此外,每个电子设备可维护一张用于保留在预定时间段内向服务器发送的音频包的历史音频包列表。当服务器向第一电子设备发送重传请求时,电子设备可从历史音频包列表中选择请求重传的音频包并将该音频包发送给服务器。
图4是根据本公开的实施例的用于服务器的实时通信方法的流程图。图4的实时通信方法可由服务器(诸如服务器130)执行。
参照图4,在步骤S401,与多个电子设备进行通信连接。例如,在进行视频会议时,与会者使用电子设备分别通信连接到服务器,以通过服务器接收到其他与会者的语音。
在步骤S402,可从多个电子设备接收每个电子设备的音频包并且将音频包实时地转发给电子设备。例如,服务器可向多个电子设备中的第一电子设备转发这些电子设备中除第一电子设备之外的其他电子设备的音频包。
在步骤S403,当第一电子设备在T_exp(m+n)后没有接收到第二电子设备(即与服务器通信的电子设备中不同于第一电子设备的其他电子设备之一)的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,可从第一电子设备接收用于重传第二电子设备的第m+n号音频包的请求。其中,m表示音频包的序号且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在通信正常情况下第一电子设备从服务器接收到第m+n号音频包的估计时间。
在步骤S404,根据重传请求向第一电子设备重传第m+n号音频包。
服务器可针对与之连接的每个电子设备分别存储用于保留在预定时间段内从每个电子设备接收的音频包的历史音频包列表。
当第一电子设备向服务器发送重传请求时,服务器可从针对第一电子设备的历史音频包列表中选择请求重传的音频包并将该音频包发送给第一电子设备。
此外,服务器可接收与之连接的每个电子设备的单独丢包率。对于第一电子设备,服务器可基于其他电子设备的单独丢包率来统计其他电子设备的整体丢包率,然后向第一电子设备发送整体丢包率,使得第一电子设备可利用该整体丢包率来确定音频包所携带的冗余帧的数量。例如,整体丢包率可以是其他电子设备的单独丢包率的90%分位数。服务器针对每个电子设备统计对应的整体丢包率,使得每个电子设备可知道其他电子设备的整体丢包率。
在第一电子设备请求重传音频包时会携带重传次数,这样服务器可按照请求重传的次数向第一电子设备重传音频包,直到重传超过最大重传次数为止。
图5是本公开实施例的硬件运行环境的实时通信设备的结构示意图。
如图5所示,实时通信设备500可包括:处理组件501、通信总线502、网络接口503、输入输出接口504、存储器505以及电源组件506。其中,通信总线502用于实现这些组件之间的连接通信。输入输出接口504可以包括视频显示器(诸如,液晶显示器)、麦克风和扬声器以及用户交互接口(诸如,键盘、鼠标、触摸输入装置等),可选地,输入输出接口504还可包括标准的有线接口、无线接口。网络接口503可选的可包括标准的有线接口、无线接口(如无线保真接口)。存储器505可以是高速的随机存取存储器,也可以是稳定的非易失性存储器。存储器505可选的还可以是独立于前述处理组件501的存储装置。
本领域技术人员可以理解,图5中示出的结构并不构成对实时通信设备500的限定,可包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图5所示,作为一种存储介质的存储器505中可包括操作系统(诸如MAC操作系统)、数据存储模块、网络通信模块、用户接口模块、实时通信程序以及数据库。
在图5所示的实时通信设备500中,网络接口503主要用于与外部电子设备/终端进行数据通信;输入输出接口504主要用于与用户进行数据交互;实时通信设备500中的处理组件501、存储器505可被设置在实时通信设备500中,实时通信设备500通过处理组件501调用存储器505中存储的实时通信方法程序以及由操作系统提供的各种API,执行本公开实施例提供的实时通信方法。
处理组件501可以包括至少一个处理器,存储器505中存储有计算机可以执行指令集合,当计算机可以执行指令集合被至少一个处理器执行时,执行根据本公开实施例的实时通信方法。此外,处理组件501可执行编码操作和解码操作等。然而,上述示例仅是示例性的,本公开不限于此。
在实时通信设备500作为终端为例,当音频包m在T_exp(m+n)后仍没有到达或者被FEC恢复,则处理组件501可考虑进行重传。其中,T_exp(m)是音频包m期望的到达时间,通常音频帧的时长是固定的,比如20ms,这样可通过历史的到达的音频包的时间估算出音频包m期望的到达时间T_exp(m)。n是音频包中所携带的冗余帧个数,对于音频帧m,只要m到m+n号音频包中任何一个音频包到达即可恢复音频帧m。因此,在等到T_exp(m+n)时刻,如果m到m+n号音频包都没有到达,则处理组件501可发送重传请求给服务器,但此时并不是请求重传m号包,而是请求服务器重传m+n号包。
当重传请求发出后,如果在T1=coef×RTT的时间内(coef系数通常取1.5)没有收到重传包,则认为重传包丢失,此时处理组件501可再次发送重传请求,并携带在重传时发送重传包的次数(例如,可以第一次是1,之后每次乘以2)。如果在T2=coef*T1的时间内仍然没有收到重传包,则处理组件501可继续提高重传包的次数,直到超过最大重传次数。
根据本公开的实施例,如果发现音频包丢失,则处理组件501可先尝试使用FEC信息进行恢复,如果FEC信息无法恢复则进行重传请求,依靠服务器重传音频包进行恢复。
对于上行重传,与会者发送端可维护一个历史音频包列表,用于保留最近一段时间(诸如1秒)发送给服务器的音频包,如果上行发送丢包,则服务器请求重传,与会者发送端从历史音频包列表中选择相应的音频包进行重传。对于下行重传,服务器可对每个与会者发送端维护一个历史音频包列表,记录每个与会者发送端最近一段时间(诸如1秒)发送过来的音频包,如果某个与会者发送端出现下行丢包,则该与会者发送端可根据需要请求服务器重传相应与会者发送端的相应音频包。
实时通信设备500可作为电子设备(诸如第一电子设备)或服务器来执行对应的实时通信方法。实时通信设备500可通过输入输出接口504从电子设备接收数据并且可发送/转发数据。
作为示例,实时通信设备500可以是PC计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,实时通信设备500并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。实时通信设备500还可以是集成控制系统或系统管理器的一部分,或者可以被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
在实时通信设备500中,处理组件501可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理组件501还可以包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
处理组件501可运行存储在存储器中的指令或代码,其中,存储器505还可以存储数据。指令和数据还可以经由网络接口503而通过网络被发送和接收,其中,网络接口503可以采用任何已知的传输协议。
存储器505可以与处理组件501集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储器505可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可以使用的其他存储装置。存储器和处理组件501可以在操作上进行耦合,或者可以例如通过I/O端口、网络连接等互相通信,使得处理组件501能够读取存储在存储器505中的数据。
图6是根据本公开的实施例的用于第一电子设备的实时通信装置的框图。图6所示的实时通信装置可作为第一电子设备的一部分或者单独的设备用于第一电子设备。实时通信装置/第一电子设备与服务器连接以进行实时通信。
参照图6,实时通信装置600可包括接收模块601、请求模块602、确定模块603、统计模块604以及选择模块605。实时通信装置600中的每个模块可由一个或多个模块来实现,并且对应模块的名称可根据模块的类型而变化。在各种实施例中,可省略实时通信装置600中的一些模块,或者还可包括另外的模块。此外,根据本公开的各种实施例的模块/元件可被组合以形成单个实体,并且因此可等效地执行相应模块/元件在组合之前的功能。
接收模块601可从服务器接收与服务器通信的除第一电子设备之外的其他电子设备的音频包。
当在T_exp(m+n)后没有接收到其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,请求模块602可向服务器请求重传第二电子设备的第m+n号音频包,其中,m表示音频包的序号并且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在正常通信情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
确定模块603可从服务器接收其他电子设备的整体丢包率,根据整体丢包率来确定向服务器发送的每个音频包所携带的冗余帧的数量,并且按照每个音频包携带当前时刻的音频帧和所确定的数量的冗余帧的形式向服务器发送第一电子设备的音频包。
统计模块604可统计第一电子设备的单独丢包率,并且向服务器发送第一电子设备的单独丢包率。
当向服务器请求重传第m+n号音频包后,如果在指定时间内没有接收到第m+n号音频包,则请求模块602可向服务器再次请求重传第m+n号音频包。这里,指定时间可基于RTT时间来设置。
在向服务器发送用于重传第m+n号音频包的请求消息时,请求模块602可向服务器发送关于重传次数的信息。
当重传请求发出后,如果在T1=coef*RTT的时间内(coef系数通常取1.5)没有收到重传包,则认为重传包丢失,此时再次发送重传请求,并携带重传音频包的次数(可以第一次是1,之后每次乘以2)。如果在T2=coef*T1的时间内仍然没有收到重传包,则继续提高重传包的次数,直到超过最大重传次数。也就是说,每多发送一次重传请求,后面等待的时间间隔越长,呈现指数级避退。
实时通信装置600可存储用于保留在预定时间段内向服务器发送的音频包的历史音频包列表,当服务器向第一电子设备发送重传请求时,选择模块605可从历史音频包列表中选择请求重传的音频包并将该音频包发送给服务器。
图7是根据本公开的实施例的用于服务器的实时通信装置的框图。图7所示的实时通信装置可作为服务器的一部分或者单独的设备用于服务器。实时通信装置与多个电子设备/终端连接以进行实时通信。
参照图7,实时通信装置700可包括接收模块701、发送模块702、统计模块703以及选择模块704。实时通信装置700中的每个模块可由一个或多个模块来实现,并且对应模块的名称可根据模块的类型而变化。在各种实施例中,可省略实时通信装置700中的一些模块,或者还可包括另外的模块。此外,根据本公开的各种实施例的模块/元件可被组合以形成单个实体,并且因此可等效地执行相应模块/元件在组合之前的功能。
接收模块701可从与服务器通信连接的多个电子设备接收每个电子设备的音频包。
发送模块702可向多个电子设备中的第一电子设备发送这些电子设备中除第一电子设备之外的其他电子设备的音频包,这样多个电子设备之间可接收到对方的语音。
当第一电子设备在T_exp(m+n)后没有接收到其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,发送模块702可从第一电子设备接收用于重传第二电子设备的第m+n号音频包的请求,并且根据该请求向第一电子设备重传第m+n号音频包,其中,m表示音频包的序号且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在通信正常情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
实时通信装置700可针对与之连接的每个电子设备分别存储用于保留在预定时间段内从每个电子设备接收的音频包的历史音频包列表。当第一电子设备向服务器发送重传请求时,选择模块704可从针对第一电子设备的历史音频包列表中选择请求重传的音频包并将该音频包发送给第一电子设备。这里,对于重传的音频包可由选择模块发送给第一电子设备,或者可由发送模块701在选择模块选择被请求重传的音频后,向第一电子设备发送该音频包。
统计模块703可接收多个电子设备中的每个电子设备的单独丢包率。
对于第一电子设备,统计模块703可基于其他电子设备的单独丢包率来统计其他电子设备的整体丢包率,并且向第一电子设备发送该整体丢包率,使得第一电子设备使用整体丢包率来确定将被发送的音频包所携带的冗余帧的数量。
例如,整体丢包率可以是其他电子设备的单独丢包率的90%分位数。上述示例仅是示例性的,本公开不限于此。
根据本公开的实施例,可提供一种电子设备。图8是根据本公开实施例的电子设备的框图,该电子设备800可包括至少一个存储器802和至少一个处理器801,所述至少一个存储器802存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器801执行时,执行根据本公开实施例的实时通信方法。例如,电子设备800可作为电子设备或者作为服务器。
处理器801可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器801还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
作为一种存储介质的存储器802可包括操作系统(例如,MAC操作系统)、数据存储模块、网络通信模块、用户接口模块、实时通信方法程序以及数据库。
存储器802可与处理器801集成为一体,例如,可将RAM或闪存布置在集成电路微处理器等之内。此外,存储器802可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器802和处理器801可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器801能够读取存储在存储器802中的文件。
此外,电子设备800还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备800的所有组件可经由总线和/或网络而彼此连接。
本领域技术人员可理解,图8中示出的结构并不构成对的限定,可包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
根据本公开的实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开的实时通信方法。这里的计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取可编程只读存储器(PROM)、电可擦除可编程只读存储器(EEPROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、非易失性存储器、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、蓝光或光盘存储器、硬盘驱动器(HDD)、固态硬盘(SSD)、卡式存储器(诸如,多媒体卡、安全数字(SD)卡或极速数字(XD)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
根据本公开的实施例中,还可提供一种计算机程序产品,该计算机程序产品中的指令可由计算机设备的处理器执行以完成上述实时通信方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种用于第一电子设备的实时通信方法,其特征在于,所述实时通信方法包括:
从服务器接收与所述服务器通信的除第一电子设备之外的其他电子设备的音频包;
当在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,向所述服务器请求重传第二电子设备的第m+n号音频包,
其中,m表示音频包的序号并且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在正常通信情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
2.如权利要求1所述的方法,还包括:
从所述服务器接收所述其他电子设备的整体丢包率;
根据所述整体丢包率来确定向所述服务器发送的每个音频包所携带的冗余帧的数量;并且
按照每个音频包携带当前时刻的音频帧和所述确定数量的冗余帧的形式向所述服务器发送第一电子设备的音频包。
3.如权利要求1所述的方法,还包括:
统计第一电子设备的单独丢包率;并且
向所述服务器发送第一电子设备的单独丢包率。
4.如权利要求1所述的方法,还包括:
当向所述服务器请求重传第m+n号音频包后,如果在指定时间内没有接收到第m+n号音频包,则向所述服务器再次请求重传第m+n号音频包。
5.如权利要求4所述的方法,其特征在于,向所述服务器再次请求重传第m+n号音频包,包括:
在向所述服务器发送用于重传第m+n号音频包的请求消息时,向所述服务器发送关于重传次数的信息。
6.如权利要求1所述的方法,其特征在于,第一电子设备存储用于保留在预定时间段内向所述服务器发送的音频包的历史音频包列表,
其中,所述实时通信方法还包括:
当所述服务器向第一电子设备发送重传请求时,从所述历史音频包列表中选择请求重传的音频包并将该音频包发送给所述服务器。
7.一种用于服务器的实时通信方法,所述服务器与多个电子设备通信,其特征在于,所述实时通信方法包括:
从所述多个电子设备接收每个电子设备的音频包;
向所述多个电子设备中的第一电子设备发送所述多个电子设备中除第一电子设备之外的其他电子设备的音频包;
当第一电子设备在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,从第一电子设备接收用于重传第二电子设备的第m+n号音频包的请求;
根据所述请求向第一电子设备重传第m+n号音频包,
其中,m表示音频包的序号且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在通信正常情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
8.一种用于第一电子设备的实时通信装置,其特征在于,所述实时通信装置包括:
接收模块,被配置为从服务器接收与所述服务器通信的除第一电子设备之外的其他电子设备的音频包;
请求模块,被配置为当在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,向所述服务器请求重传第二电子设备的第m+n号音频包,
其中,m表示音频包的序号并且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在正常通信情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
9.一种用于服务器的实时通信装置,所述服务器与多个电子设备通信,其特征在于,所述实时通信装置包括:
接收模块,被配置为从所述多个电子设备接收每个电子设备的音频包;
发送模块,被配置为向所述多个电子设备中的第一电子设备发送所述多个电子设备中除第一电子设备之外的其他电子设备的音频包,
其中,发送模块还被配置为:
当第一电子设备在T_exp(m+n)后没有接收到所述其他电子设备中的第二电子设备的第m号音频包或者第m号音频包的当前时刻的音频帧在T_exp(m+n)后没有通过前向纠错被恢复时,从第一电子设备接收用于重传第二电子设备的第m+n号音频包的请求,并且根据所述请求向第一电子设备重传第m+n号音频包,
其中,m表示音频包的序号且为等于或大于1的整数,n表示音频包所携带的冗余帧的数量并且为等于或大于1的整数,并且T_exp(m+n)表示在通信正常情况下第一电子设备从所述服务器接收到第m+n号音频包的估计时间。
10.一种电子设备,其特征在于,包括:
至少一个处理器;
至少一个存储计算机可执行指令的存储器,
其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1到6或者7中的任一项权利要求所述的实时通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110795113.5A CN113541872B (zh) | 2021-07-14 | 2021-07-14 | 实时通信方法和实时通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110795113.5A CN113541872B (zh) | 2021-07-14 | 2021-07-14 | 实时通信方法和实时通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113541872A true CN113541872A (zh) | 2021-10-22 |
CN113541872B CN113541872B (zh) | 2024-04-16 |
Family
ID=78099079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110795113.5A Active CN113541872B (zh) | 2021-07-14 | 2021-07-14 | 实时通信方法和实时通信装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113541872B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752184A (zh) * | 2011-04-20 | 2012-10-24 | 河海大学 | 用于实时多播业务的数据通信系统及其方法 |
CN109862440A (zh) * | 2019-02-22 | 2019-06-07 | 深圳市凯迪仕智能科技有限公司 | 音视频传输前向纠错方法、装置、计算机设备及存储介质 |
CN110855402A (zh) * | 2016-09-30 | 2020-02-28 | 瞬已网络科技(上海)有限公司 | 一种网络实时视频传输方法及装置 |
-
2021
- 2021-07-14 CN CN202110795113.5A patent/CN113541872B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752184A (zh) * | 2011-04-20 | 2012-10-24 | 河海大学 | 用于实时多播业务的数据通信系统及其方法 |
CN110855402A (zh) * | 2016-09-30 | 2020-02-28 | 瞬已网络科技(上海)有限公司 | 一种网络实时视频传输方法及装置 |
CN109862440A (zh) * | 2019-02-22 | 2019-06-07 | 深圳市凯迪仕智能科技有限公司 | 音视频传输前向纠错方法、装置、计算机设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
岳攀攀: "《无线网络视频传输自适应前向纠错算法研究》", 《中国硕士论文全文库》, pages 17 - 43 * |
Also Published As
Publication number | Publication date |
---|---|
CN113541872B (zh) | 2024-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10034200B2 (en) | Iteratively transmitting random linear network encoded packets from multiple transmission nodes | |
US10348454B2 (en) | Error resilience for interactive real-time multimedia application | |
CN107637125A (zh) | 用于在无线通信系统中管理缓冲器的方法和装置 | |
US20130019025A1 (en) | System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability | |
EP3468132A1 (en) | Method and device for transmitting speech data | |
JP2016213811A (ja) | インタラクティブなリアルタイムメディアの転送プロトコル | |
CN110557677A (zh) | 一种视频传输的方法及装置 | |
US9961509B2 (en) | Base station and a plurality of member nodes for transmitting and receiving network coding based multicast traffic | |
US20170118674A1 (en) | Random Linear Network Encoded Data Transmission From User Equipment | |
CN111585776B (zh) | 数据传输方法、装置、设备及计算机可读存储介质 | |
CN102648584A (zh) | 使用前向纠错检验可用带宽的系统、方法和介质 | |
CN106973253A (zh) | 一种调整媒体流传输的方法及装置 | |
CN114401208B (zh) | 数据传输方法、装置、电子设备和存储介质 | |
WO2022083371A1 (zh) | 一种数据传输方法和装置 | |
CN113541872B (zh) | 实时通信方法和实时通信装置 | |
CN117040692A (zh) | 一种业务数据传输的方法及装置、电子设备、存储介质 | |
WO2023109053A1 (zh) | 用于服务器的带宽分配方法和装置 | |
CN112737971B (zh) | 数据处理方法、装置、存储介质及网络设备 | |
CN113079103A (zh) | 音频发送方法、装置、电子设备及存储介质 | |
KR20140062400A (ko) | 네트워크 코딩 기반 멀티캐스트 트래픽을 송수신하는 기지국 및 복수의 멤버 노드들 | |
CN113542813A (zh) | 一种数据传输的方法及装置 | |
CN114448588B (zh) | 音频传输方法、装置、电子设备及计算机可读存储介质 | |
CN114158089A (zh) | 音频传输方法、终端、电子设备及存储介质 | |
WO2024080976A1 (en) | Real-time meeting data recovery after proactive participant interruption | |
WO2024080975A1 (en) | Client adaptation for real-time meeting data recovery |
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 |