CN115842603B - 数据传输方法以及数据发送装置 - Google Patents
数据传输方法以及数据发送装置 Download PDFInfo
- Publication number
- CN115842603B CN115842603B CN202111107703.0A CN202111107703A CN115842603B CN 115842603 B CN115842603 B CN 115842603B CN 202111107703 A CN202111107703 A CN 202111107703A CN 115842603 B CN115842603 B CN 115842603B
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- speech
- data frame
- voice
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 195
- 238000000034 method Methods 0.000 title claims abstract description 95
- 238000004891 communication Methods 0.000 claims abstract description 108
- 238000004458 analytical method Methods 0.000 claims description 105
- 238000007405 data analysis Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 14
- 238000013473 artificial intelligence Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000001303 quality assessment method Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000035772 mutation Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
Landscapes
- Detection And Prevention Of Errors In Transmission (AREA)
- Communication Control (AREA)
Abstract
本公开涉及一种数据传输方法,在数据传输失败的情况下,即特别是在丢包的情况下,该数据传输方法能够对待发送的数据本身的关键性加以考虑,并且在必要时还对数据传输时的通信质量加以考虑,以灵活地以对应的方式来重新进行数据传输,具有良好的信道利用率、较高的重传效率以及重传可靠性。此外,本公开还提供了一种数据发送装置,其同样能够对待发送的数据本身的关键性加以考虑,并且在必要时还对数据传输时的通信质量加以考虑,具有良好的信道利用率、较高的重传效率以及重传可靠性。
Description
技术领域
本公开涉及通信技术领域,更具体地,涉及一种数据传输方法以及数据发送装置。
背景技术
随着即时通信技术的不断发展,市场上提供了越来越多的即时通信服务(例如微信、WhatsApp、LINE等)。并且,随着移动通信、互联网等技术的不断进步,在即时通信服务所利用的传输网络带宽、传输网络延迟等方面得到了进一步改善。因此当前,在所提供的即时通信服务中,不仅能够提供传统的文本信息交流,而且还能够提供多媒体方式交流,即时通信服务能够被实现为音视频通话应用。图1A示出了即时通信服务的示意图。在此,例如可以使用智能电话等能够运行即时通信应用的通信设备,对用户的声音等进行采集编码以获得声音数据。然后,可以经由网络(因特网,蜂窝网络等)将该声音数据传输至另外的通信设备,并在另外的通信设备处对其进行解码播放,以提供语音方式的交流。
在音视频通话应用中,通话质量主要受网络丢包影响,由于传输网络的不稳定性导致传输过程出现丢包现象,造成接收端声音的卡顿和不连贯,使收听者体验很不好。为了抵抗网络丢包,现有技术中主要基于以下几种丢包重传技术来实现丢包重传,包括:FEC(forward error correction,前向纠错)、PLC(Packet Loss Concealment,丢包隐藏)、ARQ(Automatic Repeat Request,自动重传请求)等,其中ARQ丢包重传是一种解决丢包的有效技术,即当接收端检测目标数据包超时仍未接收到或者发现接收包出错,则向发送端发出请求包,请求发送端重传出错的数据或连续多个相关数据包。
然而,现有的丢包重传技术仅是一种机械式的应答机制。图1B示出了现有的丢包重传技术的示意性框图。如图1B所示,发送端根据接收端是否收到数据包来重新发送丢失数据或相邻数据。换言之,在现有丢包重传技术中,对所有数据包都是同等对待。即,在丢包的情况下,发送端仅依据重传申请对丢包的数据或其相邻数据进行机械地重新发送,而并未灵活地对发生丢包的数据本身加以考虑。因此,现有的丢包重传技术通常信道利用率低且重传效率有限。
因此,存在对一种数据传输方法以及数据发送装置的需求,所述方法和所述数据发送装置能够以灵活的重传策略重传丢包的数据,具有良好的信道利用率以及较高的重传效率。
发明内容
因此,本公开提供了一种数据传输方法,在数据传输失败的情况下,即特别是在丢包的情况下,所述数据传输方法能够对待发送的数据本身的关键性加以考虑,并且在必要时还对数据传输时的通信质量加以考虑,以灵活地以对应的方式来重新进行数据传输,具有良好的信道利用率、较高的重传效率以及重传可靠性。
此外,本公开还提供了一种数据发送装置,所述数据发送装置具有与上述数据传输方法相对应的优点,即在数据传输失败的情况下,能够对待发送的数据本身的关键性加以考虑,并且在必要时还对数据传输时的通信质量加以考虑,具有良好的信道利用率、较高的重传效率以及重传可靠性。
本公开的第一方面涉及一种用于数据发送端的数据传输方法,包括:对待发送的数据进行编码,以得到编码数据帧;向数据接收端发送所述编码数据帧,并从所述数据接收端获取所述编码数据帧的接收状态信息;在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,对所述编码数据帧进行关键性分析,并基于关键性分析的结果来确定是否需要重新发送所述编码数据帧,其中,对所述编码数据帧进行关键性分析包括:确定所述编码数据帧对数据再现质量的贡献程度;以及基于所述贡献程度,确定所述编码数据帧的关键性级别,其中,所述编码数据帧对数据再现质量的贡献程度越高,则其关键性级别越高;以及在确定需要重新发送所述编码数据帧的情况下,根据所述编码数据帧的关键性级别,确定所述编码数据帧的重新发送参数,并按照所确定的重新发送参数,向所述数据接收端重新发送所述编码数据帧,其中,所述重新发送参数包括重新发送次数。
由此,在所述数据传输方法中,不需要在接收状态信息指示所述编码数据帧接收成功的情况下才能发送后续的编码数据帧,具有良好的信道利用率。并且在所述编码数据帧接收失败的情况下,即例如在所述编码数据帧丢包的情况下,根据本公开的数据传输方法并非机械地(即,对所有数据帧都是同等对待地)响应于接收状态信息直接对所述编码数据帧或所述编码数据帧后续N帧编码数据帧进行重传,而是首先将对所述编码数据帧本身进行关键性分析,并且基于所述关键性分析的结果来灵活地确定是否需要重新发送所述编码数据帧以及应当按照怎样大小的重新发送次数重新发送所述编码数据帧。在此,可以将对数据再现质量有较高的贡献程度的编码数据帧(即,缺少其将显著地降低数据再现质量的编码数据帧)确定为具有较高的关键性级别,反之亦然。由此,在对数据再现质量的贡献程度较高(即,关键性级别较高)的编码数据帧接收失败的情况下,例如可以针对性地选择较高的重新发送次数,以确保能够成功地、完整地重新发送该关键性级别高的编码数据帧;并且在对数据再现质量的贡献程度较低(即,关键性级别较低)的编码数据帧接收失败的情况下,例如可以针对性地选择较少的重新发送次数,以降低机械地重复发送关键性级别较低的编码数据帧所导致的对带宽的不必要的占用。由此,可以灵活地根据对所述编码数据帧的关键性分析的结果来对重新发送次数进行调整。即,为关键性分析结果不同的编码数据帧针对性地选择不同的重新发送次数,实现了重新发送时对带宽的灵活使用。换言之,在所述数据传输方法中避免了对所有数据帧同等对待并在重传中对关键性较低的编码数据帧进行大量重复的发送,进一步提高了信道利用率。
根据本公开的数据传输方法的一种实施方式,所述数据传输方法还包括:从所述数据接收端接收通信质量信息,所述通信质量信息指示所述数据发送端与所述数据接收端之间的通信质量,以及基于所述关键性分析的结果以及所述通信质量信息,确定所述编码数据帧的重新发送参数,其中,在确定需要重新发送所述编码数据帧的情况下,按照所确定的重新发送参数,向所述数据接收端重新发送所述编码数据帧。
由此,在所述数据传输方法中,在所述编码数据帧接收失败的情况下,不仅对所述关键性分析的结果进行了考虑,而且还进一步对当前的通信质量进行了考虑,并据此确定了重新发送参数。利用所述重新发送参数,可以灵活地向所述数据接收端重新发送所述编码数据帧。即,例如在通信质量信息表明当前的通信质量较差的情况下,则可以对应地以较高的重新发送次数来对所述编码数据帧进行重新发送。由此,不仅可以灵活地根据对所述编码数据帧的关键性分析的结果来对重新发送次数进行调整,而且还可以在通信质量较差的情况下对重新发送次数进行调整。由此,一方面,为关键性分析结果不同的编码数据帧针对性地选择不同的重新发送次数,实现了重新发送时对带宽的灵活使用;另一方面,针对通信环境针对性地调整重新发送次数,进一步确保了重新发送时编码数据帧的完整性。换言之,不仅提高了信道利用率,还确保了重新发送时所述编码数据帧能够被完整地、成功地发送,进一步提高了重新发送的质量。
根据本公开的数据传输方法的一种实施方式,所述重新发送参数包括重新发送功率。
由此,在所述数据传输方法中,在所述编码数据帧接收失败的情况下,还例如可以基于所述关键性分析的结果以及所述通信质量信息,灵活地调整所需要的重新发送功率。即,例如在关键性分析的结果表明需要重新发送的编码数据帧关键性较高的情况下或者在通信质量信息表明当前的通信质量较差的情况下,则可以对应地以较高的重新发送功率来对所述编码数据帧进行重新发送。由此,不仅可以灵活地根据对所述编码数据帧的关键性分析的结果来对重新发送次数、重新发送功率进行调整,而且还可以在通信质量较差的情况下对重新发送次数、重新发送功率进行调整。由此,一方面,为关键性分析结果不同的编码数据帧针对性地选择不同的重新发送次数或重新发送功率,实现了重新发送时对带宽的灵活使用;另一方面,针对通信环境针对性地调整重新发送次数或重新发送功率,进一步确保了重新发送时编码数据帧的完整性。
根据本公开的数据传输方法的一种实施方式,所述待发送的数据包括音频数据、视频数据中的至少一种。
根据本公开的数据传输方法的一种实施方式,其中,所述编码数据帧的关键性级别为关键帧或非关键帧,其中,在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,并且在所述编码数据帧为关键帧的情况下,向所述数据接收端重新发送所述编码数据帧。
由此,在所述数据传输方法中,对于非关键帧,在其接收失败的情况下,由于非关键帧对数据再现质量具有非常低的贡献甚至没有贡献,因此可以不必对非关键帧进行重新发送,而只在所述编码数据帧为关键帧的情况下才向所述数据接收端重新发送所述编码数据帧,以降低重新发送时对带宽的不必要的占用。
根据本公开的数据传输方法的一种实施方式,在所述数据传输方法中,基于所述关键性分析的结果以及所述通信质量信息确定所述编码数据帧的重新发送次数包括:对于特定的关键性级别,所述通信质量越差,所确定的重新发送次数越高,对于特定的通信质量,所述关键性级别越高,所确定的重新发送次数越高。
由此,在所述数据传输方法中,如上所述,一方面,对通信质量进行了考虑。如果所述通信质量较差,则可以针对性地选择较高地重新发送次数以确保能够在通信质量较差的通信环境下成功地、完整地重新发送所述编码数据帧。另一方面,对所述编码数据帧的关键性级别进行了考虑。如果关键性级别较高,则可以针对性地选择较高地重新发送次数以确保关键性级别较高的编码数据帧能够成功地、完整地重新发送。
根据本公开的数据传输方法的更详细的实施方式,所述编码数据帧为语音数据帧,所述语音数据帧的关键性级别为语音帧和非语音帧;其中,对所述编码数据帧进行关键性分析包括:对所述语音数据帧进行语音分析,在所述语音数据帧包含有效语音信息的情况下,将所述语音数据帧确定为语音帧;以及在所述语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为非语音帧,其中,所述语音帧的关键性级别高于所述非语音帧的关键性级别。
由此,在所述数据传输方法中,对于所述编码数据帧为语音数据帧的情况,在对所述编码数据帧(即,语音数据帧)进行关键性分析时,可以考虑所述语音数据帧中是否包含有效语音信息。如果其中包含有效语音信息,则可以将所述语音数据帧确定为语音帧,反之,则可以将所述语音数据帧确定为非语音帧。此外,相对于非语音帧,可以赋予语音帧更高的关键性级别。由此,在所述语音数据帧接收失败的情况下,如上所述,可以区分所述语音数据帧为语音帧还是非语音帧,并针对性地选择合适的重新发送次数或重新发送功率。由此,既能够实现对带宽的合理利用,又能够确保对语音帧的成功的、完整的重新发送。
根据本公开的数据传输方法的更详细的实施方式,进一步划分了所述语音帧,即,所述语音帧为语音起始帧或非语音起始帧,其中,对所述编码数据帧进行关键性分析包括:在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为语音起始帧;以及在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息的情况下,将所述语音数据帧确定为非语音起始帧,其中,所述语音起始帧的关键性级别高于所述非语音起始帧的关键性级别。
由此,在所述数据传输方法中,对于接收失败的编码数据帧为语音帧的情况,考虑到语音起始时的语音帧对成功理解后续语音帧至关重要,在此进一步将语音帧划分为语音起始帧或非语音起始帧。在此,如果所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息,则意味着该语音帧为语音起始帧,反之,如果所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息,则意味着该语音帧为非语音起始帧。在此,如上所述,相对于非语音起始帧,可以赋予语音起始帧更高的关键性级别。由此,进一步细分了语音帧,使得在语音帧接收失败的情况下,可以在确保重新发送的完整性的前提下更有针对性地使用带宽,实现了对带宽的更合理的利用。
根据本公开的数据传输方法的更详细的实施方式,进一步划分了所述非语音起始帧,即,所述非语音起始帧为能量突变语音帧、基音突变语音帧或普通语音帧,其中,对所述编码数据帧进行关键性分析包括:在所述语音数据帧的能量与其前一语音数据帧的能量满足预设能量条件的情况下,将所述语音数据帧确定为能量突变语音帧,在所述语音数据帧的基频值与其前一语音数据帧的基频值满足预设基频条件的情况下,将所述语音数据帧确定为基音突变语音帧,以及将不满足所述预设能量条件和预设基频条件的语音数据帧确定为普通语音帧,其中,所述能量突变语音帧的关键性级别高于所述基音突变语音帧的关键性级别,并且所述基音突变语音帧的关键性级别高于所述普通语音帧的关键性级别。
由此,在所述数据传输方法中,对于接收失败的编码数据帧为非语音起始帧的情况,考虑到能量发生突变或基音(即,基频)发生突变的非语音起始帧的接收失败对语音质量将产生严重影响,在此进一步将所述非语音起始帧划分为能量突变语音帧、基音突变语音帧或普通语音帧。由此,进一步细分了非语音起始帧,使得在非语音起始帧接收失败的情况下,可以在确保重新发送的完整性的前提下更有针对性地使用带宽,实现了对带宽的更合理的利用。
本公开的第二方面涉及一种数据发送装置。所述数据发送装置包括:数据编码模块,所述数据编码模块被配置为对待发送的数据进行编码,以得到编码数据帧;数据传输模块,所述数据传输模块被配置为向数据接收装置发送所述编码数据帧,并从所述数据接收装置获取所述编码数据帧的接收状态信息;数据分析模块,所述数据分析模块被配置为在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,对所述编码数据帧进行关键性分析,其中,对所述编码数据帧进行关键性分析包括:确定所述编码数据帧对数据再现质量的贡献程度;以及基于所述贡献程度,确定所述编码数据帧的关键性级别,其中,所述编码数据帧对数据再现质量的贡献程度越高,则其关键性级别越高;以及重发控制模块,所述重发控制模块被配置为基于关键性分析的结果来确定是否需要重新发送所述编码数据帧,并且在确定需要重新发送所述编码数据帧的情况下,根据所述编码数据帧的关键性级别,确定所述编码数据帧的重新发送参数,并按照所确定的重新发送参数,控制所述数据传输模块重新发送所述编码数据帧,其中,所述重新发送参数包括重新发送次数。
由此,如上所述,所述数据发送装置不需要在接收状态信息指示所述编码数据帧接收成功的情况下才能发送后续的编码数据帧。由此,所述数据发送装置具有良好的信道利用率。并且所述数据发送装置在所述编码数据帧接收失败的情况下,即例如在所述编码数据帧丢包的情况下,并非机械地(即,对所有数据帧都是同等对待地)响应于接收状态信息直接对所述编码数据帧或所述编码数据帧后续N帧编码数据帧进行重传,而是首先借助所述数据分析模块对所述编码数据帧本身进行关键性分析,并且借助所述重发控制模块基于所述关键性分析的结果来灵活地确定是否需要控制所述数据传输模块重新发送所述编码数据帧以及应当按照怎样大小的重新发送次数重新发送所述编码数据帧。在此,可以将对数据再现质量有较高的贡献程度的编码数据帧(即,缺少其将显著地降低数据再现质量的编码数据帧)确定为具有较高的关键性级别,反之亦然。由此,在对数据再现质量的贡献程度较高(即,关键性级别较高)的编码数据帧接收失败的情况下,例如可以针对性地选择较高的重新发送次数,以确保能够成功地、完整地重新发送该关键性级别高的编码数据帧;并且在对数据再现质量的贡献程度较低(即,关键性级别较低)的编码数据帧接收失败的情况下,例如可以针对性地选择较少的重新发送次数,以降低机械地重复发送关键性级别较低的编码数据帧所导致的对带宽的不必要的占用。由此,可以灵活地根据对所述编码数据帧的关键性分析的结果来对重新发送次数进行调整。即,为关键性分析结果不同的编码数据帧针对性地选择不同的重新发送次数,实现了重新发送时对带宽的灵活使用。由此,所述数据发送装置避免了对所有数据帧同等对待并在重传中对关键性较低的编码数据帧进行大量重复的发送,能够进一步提高信道利用率。
根据本公开的数据发送装置的更详细的实施方式,所述数据发送装置被配置为能够接收通信质量信息,所述通信质量信息指示所述数据发送装置与所述数据接收装置之间的通信质量,以及所述重发控制模块被配置为基于所述关键性分析的结果以及所述通信质量信息,确定所述编码数据帧的重新发送参数,并且在确定需要重新发送所述编码数据帧的情况下,按照所确定的重新发送参数,控制所述数据传输模块向所述数据接收装置重新发送所述编码数据帧,其中,所述重新发送参数包括重新发送次数、重新发送功率中的至少一项。
由此,根据本公开的数据发送装置在所述编码数据帧接收失败的情况下,借助所述数据分析模块不仅对所述关键性分析的结果进行了考虑,而且还进一步对当前的通信质量进行了考虑,并借助所述重发控制模块据此确定了诸如重新发送次数、重新发送功率等重新发送参数。利用所述重新发送参数,所述数据传输模块可以灵活地向所述数据接收端重新发送所述编码数据帧。即,例如在数据分析模块的关键性分析的结果表明需要重新发送的编码数据帧关键性较高的情况下或者在通信质量信息表明当前的通信质量较差的情况下,则所述重发控制模块可以控制所述数据传输模块对应地以较高的重新发送次数或较高的重新发送功率来对所述编码数据帧进行重新发送。由此,一方面,为关键性分析结果不同的编码数据帧针对性地选择不同的重新发送次数或重新发送功率,实现了重新发送时对带宽的灵活使用;另一方面,针对通信环境针对性地调整重新发送次数或重新发送功率,确保了重新发送时编码数据帧的完整性。
根据本公开的数据发送装置的更详细的实施方式,其中,所述编码数据帧为语音数据帧,所述语音数据帧的关键性级别为语音帧和非语音帧;其中,所述数据分析模块被配置为对所述编码数据帧进行关键性分析,包括:对所述语音数据帧进行语音分析,在所述语音数据帧包含有效语音信息的情况下,将所述语音数据帧确定为语音帧;以及在所述语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为非语音帧,其中,所述语音帧的关键性级别高于所述非语音帧的关键性级别。
由此,根据本公开的数据发送装置对于所述编码数据帧为语音数据帧的情况,在借助所述数据分析模块对对所述编码数据帧(即,语音数据帧)进行关键性分析时,可以考虑所述语音数据帧中是否包含有效语音信息,并对应地将所述语音数据帧划分为语音帧或非语音帧。由此,在所述语音数据帧接收失败的情况下,如上所述,根据本公开的数据发送装置可以区分所述语音数据帧为语音帧还是非语音帧,并针对性地选择合适的重新发送次数或重新发送功率以对所述语音数据帧进行重新发送。由此,既能够实现对带宽的合理利用,又能够确保对语音帧的成功的、完整的重新发送。
根据本公开的数据发送装置的更详细的实施方式,其中,所述语音帧为语音起始帧或非语音起始帧,其中,所述数据分析模块被配置为对所述编码数据帧进行关键性分析,包括:在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为语音起始帧;以及在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息的情况下,将所述语音数据帧确定为非语音起始帧,其中,所述语音起始帧的关键性级别高于所述非语音起始帧的关键性级别。
由此,根据本公开的数据发送装置对于接收失败的编码数据帧为语音帧的情况,能够借助所述数据分析模块进一步细分了语音帧,并针对性地选择合适的重新发送次数或重新发送功率以对所述语音帧进行重新发送。由此,如前文所述,在语音帧接收失败的情况下,根据本公开的数据发送装置可以在确保重新发送的完整性的前提下更有针对性地使用带宽,实现了对带宽的更合理的利用。
根据本公开的数据发送装置的更详细的实施方式,其中,所述非语音起始帧为能量突变语音帧、基音突变语音帧或普通语音帧,其中,所述数据分析模块被配置为对所述编码数据帧进行关键性分析,包括:在所述语音数据帧的能量与其前一语音数据帧的能量满足预设能量条件的情况下,将所述语音数据帧确定为能量突变语音帧,在所述语音数据帧的基频值与其前一语音数据帧的基频值满足预设基频条件的情况下,将所述语音数据帧确定为基音突变语音帧,以及将不满足所述预设能量条件和预设基频条件的语音数据帧确定为普通语音帧,其中,所述能量突变语音帧的关键性级别高于所述基音突变语音帧的关键性级别,并且所述基音突变语音帧的关键性级别高于所述普通语音帧的关键性级别。
由此,根据本公开的数据发送装置对于接收失败的编码数据帧为非语音起始帧的情况,能够进一步将所述非语音起始帧划分为能量突变语音帧、基音突变语音帧或普通语音帧。由此,如前文所述,在非语音起始帧接收失败的情况下,根据本公开的数据发送装置可以在确保重新发送的完整性的前提下更有针对性地使用带宽,实现了对带宽的更合理的利用。
本公开的第三方面涉及一种数据发送装置。其中,所述数据发送装置具有:处理器,所述处理器被配置为对待发送的数据进行编码,以得到编码数据帧,以及被配置为从数据接收装置获取所述编码数据帧的接收状态信息,并在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,执行根据本公开的数据传输方法,以在确定需要重新发送所述编码数据帧的情况下,控制通信模块向所述数据接收装置重新发送所述编码数据帧;存储器,所述存储器被配置为存储用于执行根据本公开的数据传输方法中的各个步骤的程序或者指令;以及通信模块,所述通信模块被配置为向数据接收装置发送所述编码数据帧。
由此,根据本公开的数据发送装置一方面对通信质量进行了考虑。如果所述通信质量较差,则根据本公开的数据发送装置可以针对性地选择较高地重新发送次数以确保能够在通信质量较差的通信环境下成功地、完整地重新发送所述编码数据帧。另一方面,根据本公开的数据发送装置对所述编码数据帧的关键性级别进行了考虑。如果关键性级别较高,则可以针对性地选择较高地重新发送次数以确保关键性级别较高的编码数据帧能够成功地、完整地重新发送。
综上所述,本公开提供一种用于数据发送端的数据传输方法以及一种数据发送装置。其中,在编码数据帧接收失败的情况下,一方面,对所述编码数据帧的关键性级别进行了考虑,并为关键性分析结果不同的编码数据帧针对性地选择不同的重新发送次数或重新发送功率,实现了重新发送时对带宽的灵活使用,提高了带宽利用效率;另一方面,对通信质量进行了考虑,并针对通信质量针对性地调整重新发送次数或重新发送功率,确保了重新发送时编码数据帧的完整性。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本公开的一些示例性实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
在此,附图中:
图1A示出了即时通信服务的示意图;
图1B示出了现有技术中丢包重传技术的示意性框图;
图2A以流程图示出了根据本公开的数据传输方法的一种实施方式;
图2B以框图示出了执行根据上述实施方式的数据传输方法的数据传输***;
图3A以流程图示出了根据本公开的数据传输方法的另外的实施方式;
图3B以框图示出了执行根据上述另外的实施方式的数据传输方法的数据传输***;
图4以流程图示出了对编码数据帧进行关键性分析的步骤的实施例;
图5以流程图示出了对编码数据帧进行关键性分析的步骤的另外的实施例;
图6A和图6B以流程图示出了对编码数据帧进行关键性分析的步骤的另外的实施例;
图7以框图示意性地示出了根据本公开的数据发送装置的一种实施方式;
图8以框图示意性地示出了根据本公开的数据发送装置的另外的实施方式;
图9以框图示意性地示出了根据本公开的数据发送装置。
具体实施方式
为了使得本公开的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
此外,在本说明书和附图中,具有基本上相同或相似步骤和元素用相同或相似的附图标记来表示,且对这些步骤和元素的重复描述将被省略。
此外,在本说明书和附图中,根据实施例,元素以单数或复数的形式来描述。然而,单数和复数形式被适当地选择用于所提出的情况仅仅是为了方便解释而无意将本公开限制于此。因此,单数形式可以包括复数形式,并且复数形式也可以包括单数形式,除非上下文另有明确说明。
此外,在本说明书和附图中,如使用了流程图用来说明根据本公开实施例的方法的步骤,则应当理解的是,前面或后面的步骤不一定按照顺序来精确的进行。相反,可以按照倒序或同时处理各种步骤,除非本公开实施例明确限定。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步。
此外,在本说明书和附图中,除非另有明确说明,“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
作为一个示例,本公开可以应用于与人工智能(Artificial Intelligence,AI)相结合的数据传输领域、特别是语音数据传输领域。其中,人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
当前,随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的虚拟助理、智能音箱、智能营销、自动驾驶、无人机、智能医疗、智能客服等。当前,利用人工智能的感知、推理与决策功能,已经将人工智能与语音数据传输相结合并且应用到即时通信服务等各种领域中。
在即时通信服务中,由于传输网络的不稳定性,容易导致传输过程中出现丢包现象,造成接收端声音的卡顿和不连贯,使收听者体验很不好。因此,为了抵抗网络丢包,需要对出现丢包的数据进行丢包重传。丢包重传可以有以下几种方式:
停等式丢包重传方式:数据报文发送完成后,发送端等待接收端的状态报告,如果状态报告报文表示发送成功才发送后续的数据报文,如果状态报告报文表示发送失败则重传该报文。然而,在停等式重传方式下,发送端每发一帧后必须停下来等接收端的确认,等收到确认报文后才可能发下一帧,因此其缺点是信道利用率低。
回退N帧丢包重传方式:当发送端接收到接收端的状态报文指示报文出错后,发送端将重传过去N个报文。回退N帧重传与停等式丢包重传不同的地方在于该方式不需要在接收到上一个数据报文的状态确认报文才发送下一个数据报文,而可以连续发送数据报文,在发送端发送数据报文过程中,如果接收到对应已发的某个数据报文的失败状态确认报文,则发送端需要将该状态报文对应的数据报文及后续N帧报文进行重传。然而,在回退N帧丢包重传方式下,对于报文乱序情况就会导致误判为丢包,导致N个成功报文被重传,影响了数据传输效率。
选择性重传方式:在选择性重传方式中,当发送端接收到接收端的状态报文指示报文出错后,发送端只需发送发生错误的报文。选择性重传与回退N帧重传方式差别在于只对没有成功收到状态确认报文的数据报文进行重传,不需要对后续N帧都要重传,其传输效率有所提升。然而,选择性重传方式依旧是一种机械式的应答机制,即,在丢包的情况下,发送端仅依据重传申请对丢包的数据或其相邻数据进行机械地重新发送,而并未灵活地对发生丢包的数据本身加以考虑。因此,重传效率依旧有限。
本公开的第一方面涉及一种用于数据发送端的数据传输方法。图2A以流程图示出了根据本公开的数据传输方法200的一种实施方式。图2B以框图示出了能够执行所述数据传输方法200的数据传输***。在此,所述数据传输***由处于通信连接的数据发送端TX和数据接收端RX构成,所述数据传输方法200例如可以由数据发送端TX中的处理器、或处理器控制通信部件来执行。以下,结合图2A和图2B共同阐述所述数据传输方法200。在此,所述数据传输方法200包括:
在步骤S210中,对待发送的数据D进行编码,以得到编码数据帧DF;在步骤S220中,向数据接收端RX发送所述编码数据帧DF,并从所述数据接收端RX获取所述编码数据帧的接收状态信息SM;在步骤S230中,在所述编码数据帧的接收状态信息RS指示所述编码数据帧DF接收失败的情况下,对所述编码数据帧DF进行关键性分析,其中,对所述编码数据帧DF进行关键性分析包括:确定所述编码数据帧DF对数据再现质量的贡献程度;以及基于所述贡献程度,确定所述编码数据帧DF的关键性级别,其中,所述编码数据帧DF对数据再现质量的贡献程度越高,则其关键性级别越高;在步骤S240中,基于关键性分析的结果来确定是否需要重新发送所述编码数据帧DF;以及在步骤S250中,在确定需要重新发送所述编码数据帧的情况下,根据所述编码数据帧DF的关键性级别,确定所述编码数据帧DF的重新发送参数,并按照所确定的重新发送参数,向所述数据接收端重新发送所述编码数据帧,其中,所述重新发送参数包括重新发送次数。
由此,一方面,在根据本公开的数据传输方法中,相较于停等式丢包重传方式,不需要在接收状态信息指示所述编码数据帧接收成功的情况下才能发送后续的编码数据帧DF,具有良好的信道利用率。另一方面,在根据本公开的数据传输方法中,相较于回退N帧丢包重传方式或选择性重传方式,在所述编码数据帧接收失败的情况下,即例如由于传输网络的不稳定性导致传输过程出现丢包现象的情况下,并非对所有数据帧都是同等对待,即并非在未考虑所述编码数据帧DF本身的情况下机械地响应于接收状态信息RS直接对所述编码数据帧或所述编码数据帧DF后续N帧编码数据帧进行重传,而是首先将对所述编码数据帧DF本身进行关键性分析,并且基于所述关键性分析的结果来灵活地确定是否需要重新发送所述编码数据帧DF。由此,基于对所述编码数据帧DF本身的考虑,即基于所述关键性分析的结果,确定所述编码数据帧DF是否需要重新发送以及应当按照怎样大小的重新发送次数重新发送所述编码数据帧DF。之后,仅在确定需要重新发送所述编码数据帧DF的情况下才向所述数据接收端RX按照所确定的重新发送参数重新发送所述编码数据帧DF。在此,可以将对数据再现质量有较高的贡献程度的编码数据帧(即,缺少其将显著地降低数据再现质量的编码数据帧)确定为具有较高的关键性级别,反之亦然。由此,例如在关键性分析的结果表明需要重新发送的编码数据帧DF关键性较高的情况下,则可以对应地以较高的重新发送次数来对所述编码数据帧DF进行重新发送。由此,可以灵活地根据对所述编码数据帧DF的关键性分析的结果来对重新发送次数。即,为关键性分析结果不同的编码数据帧DF针对性地选择不同的重新发送次数,实现了重新发送时对带宽的灵活使用。由此,在根据本公开的数据传输方法中,避免了在重传中对所有编码数据帧都同等地进行大量重复的发送,进一步提高了信道利用率。
图3A示出了根据本公开的数据传输方法300的另外的实施方式。图3B以框图示出了能够执行所述数据传输方法300的数据传输***。在此,所述数据传输***同样由处于通信连接的数据发送端TX和数据接收端RX构成,所述数据传输方法300例如可以由数据发送端TX中的处理器,或处理器控制通信部件来执行。根据另外的实施方式的数据传输方法300中的步骤S310、步骤S320、步骤S330与上述数据传输方法200中的步骤S210、步骤S220、步骤S230相同,故为简洁起见在此不再进行赘述。此外,根据另外的实施方式的数据传输方法300还包括:在步骤S340中,从所述数据接收端接收通信质量信息RQ,所述通信质量信息指示所述数据发送端与所述数据接收端之间的通信质量;在步骤S350中,基于所述关键性分析的结果以及所述通信质量信息RQ,确定所述编码数据帧的重新发送参数;以及在步骤S360中,在确定需要重新发送所述编码数据帧DF的情况下,按照所确定的重新发送参数P,向所述数据接收端重新发送所述编码数据帧DF。
由此,在所述数据传输方法中,在所述编码数据帧接收失败的情况下,不仅对对所述编码数据帧DF本身、即所述关键性分析的结果进行了考虑,而且还进一步对当前的通信质量进行了考虑,并据此确定了重新发送参数P。在此,可以在所述编码数据帧DF本身以及所处通信环境中的通信质量两方面进行考虑以确定重新发送参数,并按照所确定的重新发送参数P来对重新发送进行调整。即,例如在通信质量信息表明当前的通信质量较差的情况下,则可以对应地以较高的重新发送次数来对所述编码数据帧DF进行重新发送。由此,不仅可以灵活地根据对所述编码数据帧DF的关键性分析的结果来对重新发送次数进行调整,而且还可以在通信质量较差的情况下对重新发送次数进行调整。由此,一方面,为关键性分析结果不同的编码数据帧DF针对性地选择不同的重新发送次数,实现了重新发送时对带宽的灵活使用;另一方面,针对通信环境针对性地调整重新发送次数,进一步确保了重新发送时编码数据帧的完整性。换言之,除了提高了信道利用率之外,还进一步确保了重新发送时所述编码数据帧能够被完整地、成功地发送,进一步提高了重新发送的质量。
根据本公开的数据传输方法的更详细的实施方式,所述重新发送参数还包括重新发送功率。
由此,在所述数据传输方法中,在所述编码数据帧DF接收失败的情况下,例如可以基于所述关键性分析的结果以及所述通信质量信息RQ,灵活地调整所需要的重新发送次数或重新发送功率。即,例如在关键性分析的结果表明需要重新发送的编码数据帧关键性较高的情况下或者在通信质量信息RQ表明当前的通信质量较差的情况下,则可以对应地以较高的重新发送次数或较高的重新发送功率来对所述编码数据帧DF进行重新发送。由此,不仅可以灵活地根据对所述编码数据帧DF的关键性分析的结果来对重新发送次数、重新发送功率进行调整,而且还可以在通信质量较差的情况下对重新发送次数、重新发送功率进行调整。由此,一方面,为关键性分析结果不同的编码数据帧DF针对性地选择不同的重新发送次数或重新发送功率,实现了重新发送时对带宽的灵活使用;另一方面,针对通信环境针对性地调整重新发送次数或重新发送功率,进一步确保了重新发送时编码数据帧DF的完整性。
根据本公开的数据传输方法的更详细的实施方式,所述待发送的数据D包括音频数据、视频数据中的至少一种。
根据本公开的数据传输方法300的更详细的实施方式,其中,所述编码数据帧DF的关键性级别为关键帧或非关键帧,其中,在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,并且在所述编码数据帧为关键帧的情况下,向所述数据接收端重新发送所述编码数据帧。
由此,在所述数据传输方法中,对于非关键帧,在其接收失败的情况下,由于非关键帧对数据再现质量具有非常低的贡献甚至没有贡献,因此可以不必对非关键帧进行重新发送,而只在所述编码数据帧DF为关键帧的情况下才向所述数据接收端重新发送所述编码数据帧DF,以降低重新发送时对带宽的不必要的占用。
根据本公开的数据传输方法300的更详细的实施方式,在所述数据传输方法中,在所述重新发送参数P包括重新发送次数的情况下,基于所述关键性分析的结果以及所述通信质量信息确定所述编码数据帧的重新发送次数包括:对于特定的关键性级别,所述通信质量越差,所确定的重新发送次数越高,对于特定的通信质量,所述关键性级别越高,所确定的重新发送次数越高。
由此,在所述数据传输方法中,如上所述,一方面,对通信质量进行了考虑。即,如果所述通信质量较差,则可以针对性地选择较高地重新发送次数对所述编码数据帧DF进行多次冗余的重复发送,以确保在通信质量较差的通信环境下依旧能够成功地、完整地重新发送所述编码数据帧。另一方面,对所述编码数据帧的关键性级别进行了考虑。即,如果关键性级别较高,则可以针对性地选择较高地重新发送次数对所述编码数据帧DF进行多次冗余的重复发送,以确保关键性级别较高的编码数据帧能够成功地、完整地重新发送。
根据本公开的数据传输方法的更详细的实施方式,例如针对即时通信服务,所述编码数据帧可以为语音数据帧。为实现有针对性地重新发送语音数据帧,如上所述,需要对语音数据帧进行关键性分析,以获得语音数据帧的关键性级别。语音数据帧中的多种语音特征都将影响语音音质,并且对语音音质有不同的贡献。由此,通过判断语音数据帧是否具有某些语音特征,可以知晓该语音数据帧对语音音质的影响大小。根据其对语音音质的影响大小,可以将该语音数据帧划分至不同的语音关键性级别,即语音数据帧对语音音质的贡献程度越高,则其关键性级别应当越高,反之亦然。
为知晓语音数据帧中哪些语音特征将影响其关键性级别的划分,可以根据大量语音样本的客观语音质量评估(PESQ,Perceptual evaluation of speech quality)来归纳出一系列语音特征,以根据这些语音特征来决定语音关键性级别。在此,根据大量语音样本的客观语音质量评估可以归纳出,包含有效语音信息的语音数据帧的接收成功与否对语音音质有显著的影响。因此,可以利用对语音数据帧中是否包含有效语音信息的判断来对语音数据帧关键性级别进行划分。
图4以流程图示出了对编码数据帧DF进行关键性分析的以获得音数据帧的关键性级别的步骤S330的具体实施方式。在此,在所述编码数据帧DF为语音数据帧的情况下,所述语音数据帧的关键性级别可以为语音帧和非语音帧;其中,对所述编码数据帧进行关键性分析包括:在子步骤S331中,对所述语音数据帧进行语音分析;在子步骤S332中,判断所述语音数据帧是否包含有效语音信息;在所述语音数据帧包含有效语音信息的情况下,在子步骤S333中将所述语音数据帧确定为语音帧;以及在所述语音数据帧不包含有效语音信息的情况下,在子步骤S334中将所述语音数据帧确定为非语音帧,其中,所述语音帧的关键性级别高于所述非语音帧的关键性级别。
由此,在所述数据传输方法中,对于所述编码数据帧为语音数据帧的情况,在对所述编码数据帧(即,语音数据帧)进行关键性分析时,例如通过语音活动侦测(VoiceActivity Detection,vad)等方式,来考虑所述语音数据帧中是否包含有效语音信息。如果其中包含有效语音信息,即例如vad检测结果为1,则可以将所述语音数据帧确定为语音帧,反之,例如如果vad检测结果为0,则可以将所述语音数据帧确定为非语音帧。此外,相对于非语音帧,可以赋予语音帧更高的关键性级别。由此,在所述语音数据帧接收失败的情况下,如上所述,可以区分所述语音数据帧为语音帧还是非语音帧,并针对性地选择合适的重新发送次数或重新发送功率。由此,在重新发送中既能够实现对带宽或能量的合理利用,又能够确保对语音帧的成功的、完整的重新发送。
此外,根据大量语音样本的客观语音质量评估可以归纳出,与刚开始的语音对应的语音数据帧的接收成功与否对语音音质有显著的影响。因此,除了将所述语音数据帧的关键性级别划分为语音帧和非语音帧之外,还可以利用对数据帧是否为语音起始帧的判断来对语音数据帧关键性级别进行进一步的划分。
图5以流程图示出了对编码数据帧DF进行关键性分析的以获得音数据帧的关键性级别的步骤S330的另外的实施方式。在此,所述语音帧可以为语音起始帧或非语音起始帧,其中,对所述编码数据帧进行关键性分析包括:在子步骤S335中,判断语音数据帧的前一语音数据帧是否包含有效语音信息,并在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息的情况下,在子步骤S336中将所述语音数据帧确定为语音起始帧;以及在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息的情况下,在子步骤S337中将所述语音数据帧确定为非语音起始帧,其中,所述语音起始帧的关键性级别高于所述非语音起始帧的关键性级别。
由此,在所述数据传输方法中,对于接收失败的编码数据帧为语音帧的情况,考虑到语音起始时的语音帧对成功理解后续语音帧至关重要,进一步将语音帧划分为语音起始帧或非语音起始帧。在此,如果所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息,则意味着该语音帧为语音起始帧,反之,如果所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息,则意味着该语音帧为非语音起始帧。在此,如上所述,相对于非语音起始帧,可以赋予语音起始帧更高的关键性级别。由此,进一步细分了语音帧,使得在语音数据帧接收失败的情况下,可以更有针对性地为语音数据帧确定合适的重新发送次数、重新发送功率等,以在确保重新发送的完整性的前提下更有针对性地使用带宽和能量,实现了对带宽的更合理的利用。
此外,根据大量语音样本的客观语音质量评估可以归纳出,与能量突变的语音对应或与基音突变的语音对应的语音数据帧的接收成功与否对语音音质也有着显著的影响,并且能量突变的语音的接收成功与否对语音音质的影响大于基音(即,语音的基频)突变的语音的接收成功与否对语音音质的影响。因此,除了将所述语音数据帧的关键性级别划分为语音帧和非语音帧,并将语音帧划分为语音起始帧或非语音起始帧之外,还可以利用对数据帧是否出现能量突变或基音突变的判断来对非语音起始帧的关键性级别进行进一步的划分。
图6A和图6B以流程图示出了对编码数据帧DF进行关键性分析的以获得音数据帧的关键性级别的步骤S330的另外的实施方式。在图6A中,在步骤S337之后,继续图6B的处理,而图6A中的其他处理与图5中的处理相同,再次不再赘述。如图6B所示,进一步划分了所述非语音起始帧,即,将所述非语音起始帧划分为能量突变语音帧、基音突变语音帧或普通语音帧,其中,对所述编码数据帧进行关键性分析包括:在子步骤S338中,判断语音数据帧的能量与其前一语音数据帧的能量是否满足预设能量条件,在所述语音数据帧的能量与其前一语音数据帧的能量满足预设能量条件的情况下,在子步骤S339中将所述语音数据帧确定为能量突变语音帧;在子步骤S3310中,判断语音数据帧的基频值与其前一语音数据帧的基频值是否满足预设基频条件,在所述语音数据帧的基频值与其前一语音数据帧的基频值满足预设基频条件的情况下,在子步骤S3311中将所述语音数据帧确定为基音突变语音帧,以及在子步骤S3312中将不满足所述预设能量条件和预设基频条件的语音数据帧确定为普通语音帧,其中,所述能量突变语音帧的关键性级别高于所述基音突变语音帧的关键性级别,并且所述基音突变语音帧的关键性级别高于所述普通语音帧的关键性级别。
由此,可以将语音数据帧划分为五种不同的类别,并且对应地将其关键性级别划分为五级,即第一级与语音起始帧对应,第二级与能量突变语音帧对应,第三级与基音突变语音帧对应,第四级与普通语音帧对应,并且第五级与非语音帧对应,并且各级关键性级别逐步下降。下表中示出了从所述编码数据帧DF本身、即所述关键性分析的结果以及当前的通信质量(如,丢包率)两方面进行考虑并据此确定重新发送参数P、例如重新发送次数。在此,表中最左列表示了从第一级到第五级的关键性级别,并且第一行表示了通信质量信息,即当前的丢包率的各种范围。
例如:如果通信质量信息指示丢包率为70%,且关键性分析的结果指示所述语音数据帧为语音起始帧,则由于其关键性级别为第一级,在此需要确保能够成功地、完整地重新发送该关键性级别高的语音起始帧。故如表中所示,在此可以将重新发送参数、即重新发送次数确定为3,以多次冗余地重新发送该语音起始帧。
此外,在相同的70%的丢包率下,如果关键性分析的结果指示所述语音数据帧为普通语音帧,则其关键性级别为第四级。由于其关键性级别较低,故在重新发送时不需要如第一级的语音起始帧一般进行冗余的3次重新发送,而如表所示,只需要对其进行2次重新发送。
综上所述,本公开提供的用于数据发送端的数据传输方法在编码数据帧接收失败的情况下,一方面,对接收失败的编码数据帧本身,即例如对接收失败的编码数据帧的关键性级别进行了考虑,并为关键性分析结果不同的编码数据帧针对性地选择合适的重新发送参数、例如重新发送次数或重新发送功率,实现了重新发送时对带宽的灵活使用,提高了带宽利用效率以及能量利用效率;另一方面,还进一步对通信质量进行了考虑,并针对通信质量针对性地调整重新发送参数、例如重新发送次数或重新发送功率,确保了重新发送时编码数据帧的完整性。
本公开的第二方面涉及一种数据发送装置。图7中以框图示意性地示出了根据本公开的数据发送装置700。在此,为方便对根据本公开的数据发送装置700进行阐述,在图7中还以虚线示出了与根据本公开的数据发送装置700配合使用的数据接收装置790。
根据本公开的数据发送装置700的一种实施方式,所述数据发送装置700包括:数据编码模块710,所述数据编码模块710被配置为对待发送的数据D进行编码,以得到编码数据帧DF;数据传输模块720,所述数据传输模块720被配置为向数据接收装置790发送所述编码数据帧DF,并从所述数据接收装置获取所述编码数据帧的接收状态信息RS;数据分析模块730,所述数据分析模块730被配置为在所述编码数据帧的接收状态信息RS指示所述编码数据帧DF接收失败的情况下,对所述编码数据帧DF进行关键性分析,其中,对所述编码数据帧DF进行关键性分析包括:确定所述编码数据帧DF对数据再现质量的贡献程度;以及基于所述贡献程度,确定所述编码数据帧DF的关键性级别,其中,所述编码数据帧DF对数据再现质量的贡献程度越高,则其关键性级别越高;以及重发控制模块740,所述重发控制模块740被配置为基于关键性分析的结果来确定是否需要重新发送所述编码数据帧DF,并且在确定需要重新发送所述编码数据帧DF的情况下,根据所述编码数据帧DF的关键性级别,确定所述编码数据帧DF的重新发送参数,并按照所确定的重新发送参数,控制所述数据传输模块720重新发送所述编码数据帧DF,其中,所述重新发送参数包括重新发送次数。
由此,如上文中针对根据本公开的数据传输方法所阐述的,根据本公开的数据发送装置700借助所述数据分析模块730对所述编码数据帧DF本身进行关键性分析,并且借助所述重发控制模块740基于所述关键性分析的结果来灵活地确定是否需要控制所述数据传输模块720重新发送所述编码数据帧DF以及应当按照怎样大小的重新发送次数重新发送所述编码数据帧DF。在此,可以将对数据再现质量有较高的贡献程度的编码数据帧DF(即,缺少其将显著地降低数据再现质量的编码数据帧)确定为具有较高的关键性级别,反之亦然。由此,在对数据再现质量的贡献程度较高(即,关键性级别较高)的编码数据帧DF接收失败的情况下,例如可以针对性地选择较高的重新发送次数,以确保能够成功地、完整地重新发送该关键性级别高的编码数据帧;并且在对数据再现质量的贡献程度较低(即,关键性级别较低)的编码数据帧DF接收失败的情况下,例如可以针对性地选择较少的重新发送次数,以降低机械地重复发送关键性级别较低的编码数据帧DF所导致的对带宽的不必要的占用。由此,可以灵活地根据对所述编码数据帧DF的关键性分析的结果来对重新发送次数进行调整。即,为关键性分析结果不同的编码数据帧DF针对性地选择不同的重新发送次数,实现了重新发送时对带宽的灵活使用。由此,所述数据发送装置700避免了对所有数据帧DF同等对待并在重传中对关键性较低的编码数据帧进行大量重复的发送,具有较高的信道利用率。
图8中以框图示意性地示出了根据本公开的数据发送装置的另外的实施方式。在此,为方便对根据本公开的数据发送装置800进行阐述,同样在图8中还以虚线示出了与根据本公开的数据发送装置800配合使用的数据接收装置890。
在此,所述数据发送装置800被配置为能够接收通信质量信息RQ,所述通信质量信息RQ指示所述数据发送装置800与所述数据接收装置890之间的通信质量,以及所述重发控制模块840被配置为基于所述关键性分析的结果以及所述通信质量信息RQ,确定所述编码数据帧的重新发送参数P,并且在确定需要重新发送所述编码数据帧的情况下,按照所确定的重新发送参数P,控制所述数据传输模块820向所述数据接收装置890重新发送所述编码数据帧DF,其中,所述重新发送参数P包括重新发送次数、重新发送功率中的至少一项。
由此,如上文中针对根据本公开的数据传输方法所阐述的,根据本公开的数据发送装置800在所述编码数据帧DF接收失败的情况下,借助所述数据分析模块830不仅对所述关键性分析的结果进行了考虑,而且还进一步对当前的通信质量进行了考虑,并借助所述重发控制模块840据此确定了诸如重新发送次数、重新发送功率等重新发送参数P。利用所述重新发送参数P,一方面,例如在数据分析模块830的关键性分析的结果表明需要重新发送的编码数据帧DF关键性较高的情况下或者在通信质量信息RQ表明当前的通信质量较差的情况下,所述重发控制模块840可以控制所述数据传输模块820对应地以较高的重新发送次数或较高的重新发送功率来对所述编码数据帧DF进行重新发送。由此,确保了重新发送时编码数据帧DF的完整性。另一方面,例如在数据分析模块830的关键性分析的结果表明需要重新发送的编码数据帧DF关键性较低的情况下或者在通信质量信息RQ表明当前的通信质量较好的情况下,所述重发控制模块840可以控制所述数据传输模块820对应地以较低的重新发送次数或较低的重新发送功率来对所述编码数据帧DF进行重新发送。由此,实现了重新发送时对带宽以及能量的灵活使用。
根据本公开的数据发送装置的更详细的实施方式,例如针对即时通信服务,所述编码数据帧DF可以为语音数据帧,所述语音数据帧的关键性级别为语音帧和非语音帧;其中,所述数据分析模块830被配置为对所述编码数据帧DF进行关键性分析,包括:对所述语音数据帧进行语音分析,在所述语音数据帧包含有效语音信息的情况下,将所述语音数据帧确定为语音帧;以及在所述语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为非语音帧,其中,所述语音帧的关键性级别高于所述非语音帧的关键性级别。
将所述语音数据帧确定为语音帧和非语音帧的详细流程以及所带来的根据本公开的数据发送装置的优点参见上文中对图4所进行的阐述,为简洁起见在此不再赘述。
根据本公开的数据发送装置的更详细的实施方式,其中,所述语音帧为语音起始帧或非语音起始帧,其中,所述数据分析模块830被配置为对所述编码数据帧DF进行关键性分析,包括:在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为语音起始帧;以及在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息的情况下,将所述语音数据帧确定为非语音起始帧,其中,所述语音起始帧的关键性级别高于所述非语音起始帧的关键性级别。
将所述语音帧进一步确定为语音起始帧或非语音起始帧的详细流程以及所带来的根据本公开的数据发送装置的优点参见上文中对图5所进行的阐述,为简洁起见在此不再赘述。
根据本公开的数据发送装置的另外的实施方式,其中,所述非语音起始帧为能量突变语音帧、基音突变语音帧或普通语音帧,其中,所述数据分析模块830被配置为对所述编码数据帧DF进行关键性分析,包括:在所述语音数据帧的能量与其前一语音数据帧的能量满足预设能量条件的情况下,将所述语音数据帧确定为能量突变语音帧,在所述语音数据帧的基频值与其前一语音数据帧的基频值满足预设基频条件的情况下,将所述语音数据帧确定为基音突变语音帧,以及将不满足所述预设能量条件和预设基频条件的语音数据帧确定为普通语音帧,其中,所述能量突变语音帧的关键性级别高于所述基音突变语音帧的关键性级别,并且所述基音突变语音帧的关键性级别高于所述普通语音帧的关键性级别。
将所述非语音起始帧进一步确定为能量突变语音帧、基音突变语音帧或普通语音帧的详细流程以及所带来的根据本公开的数据发送装置的优点参见上文中对图6A和图6B所进行的阐述,为简洁起见在此不再赘述。
综上所述,本公开提供的数据发送装置在编码数据帧接收失败的情况下,一方面,对接收失败的编码数据帧本身,即例如对接收失败的编码数据帧的关键性级别进行了考虑,即例如在所述编码数据帧为语音数据帧的情况下可以将其划分为多种不同的类别,并且对应地确定其关键性级别。然后,根据本公开的数据发送装置为关键性分析结果不同的编码数据帧针对性地选择合适的重新发送参数、例如重新发送次数或重新发送功率,实现了重新发送时对带宽的灵活使用,提高了带宽利用效率以及能量利用效率。另一方面,根据本公开的数据发送装置还进一步对通信质量进行了考虑,并针对通信质量针对性地调整重新发送参数、例如重新发送次数或重新发送功率,确保了重新发送时编码数据帧的完整性。
本公开的第三方面涉及一种数据发送装置900。图9中以框图示意性地示出了根据本公开的数据发送装置900。在此,为方便对根据本公开的数据发送装置900进行阐述,还以虚线示出了配合使用的数据接收装置990。其中,所述数据发送装置900具有:处理器910、存储器920以及通信模块930。
其中,所述通信模块930被配置为向数据接收装置发送所述编码数据帧并从所述数据接收装置接收所述编码数据帧的接收状态信息。
所述存储器920被配置为存储用于实现图2A至图6B所描述的方法中的各个步骤的计算机程序或者指令。所述计算机程序或者指令在被所述处理器910执行时,使得所述处理器910被配置为对待发送的数据进行编码以得到编码数据帧,并控制所述通信模块向数据接收装置发送所述编码数据帧并从所述数据接收装置接收所述编码数据帧的接收状态信息RS。所述计算机程序或者指令在被所述处理器910执行时,所述处理器910还被配置为在从所述数据接收装置获取的所述编码数据帧的接收状态信息RS指示所述编码数据帧接收失败的情况下,执行根据图2A至图6B所描述的方法中的各个步骤,以在确定需要重新发送所述编码数据帧的情况下,控制通信模块向所述数据接收装置重新发送所述编码数据帧。在此,处理器910可以被配置为能够执行根据图2A至图6B所描述的方法中的各个步骤的装置,包括但不限于FPGA、DSP、ARM单片机、CPU等,为简洁起见,不再对其进行赘述,更多细节可以参考上文中针对图2A至图6B所进行的阐述。
综上所述,根据本公开的数据发送装置900一方面对通信质量进行了考虑。如果所述通信质量较差,则根据本公开的数据发送装置可以针对性地选择较高地重新发送次数以确保能够在通信质量较差的通信环境下成功地、完整地重新发送所述编码数据帧。另一方面,根据本公开的数据发送装置对所述编码数据帧的关键性级别进行了考虑。如果关键性级别较高,则可以针对性地选择较高地重新发送次数以确保关键性级别较高的编码数据帧能够成功地、完整地重新发送。
在上面详细描述的本公开的示例实施例仅仅是说明性的,而不是限制性的。本领域技术人员应该理解,在不脱离本公开的原理和精神的情况下,可对这些实施例或其特征进行各种修改和组合,这样的修改应落入本公开的范围内。
Claims (15)
1.一种用于数据发送端的数据传输方法,包括:
对待发送的数据进行编码,以得到编码数据帧;
向数据接收端发送所述编码数据帧,并从所述数据接收端获取所述编码数据帧的接收状态信息;
在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,对所述编码数据帧进行关键性分析,并基于关键性分析的结果来确定是否需要重新发送所述编码数据帧,其中,对所述编码数据帧进行关键性分析包括:确定所述编码数据帧对数据再现质量的贡献程度;以及基于所述贡献程度,确定所述编码数据帧的关键性级别,其中,所述编码数据帧对数据再现质量的贡献程度越高,则其关键性级别越高;以及
在确定需要重新发送所述编码数据帧的情况下,根据所述编码数据帧的关键性级别,确定所述编码数据帧的重新发送参数,并按照所确定的重新发送参数,向所述数据接收端重新发送所述编码数据帧,其中,所述重新发送参数包括重新发送次数。
2.根据权利要求1所述的用于数据发送端的数据传输方法,还包括:
从所述数据接收端接收通信质量信息,所述通信质量信息指示所述数据发送端与所述数据接收端之间的通信质量,以及
基于所述关键性分析的结果以及所述通信质量信息,确定所述编码数据帧的重新发送参数,
其中,在确定需要重新发送所述编码数据帧的情况下,按照所确定的重新发送参数,向所述数据接收端重新发送所述编码数据帧。
3.根据权利要求2所述的用于数据发送端的数据传输方法,其中,
所述重新发送参数还包括重新发送功率。
4.根据权利要求1至3中任一项所述的用于数据发送端的数据传输方法,其中,所述待发送的数据包括音频数据、视频数据中的至少一种。
5.根据权利要求4所述的用于数据发送端的数据传输方法,其中,所述编码数据帧的关键性级别为关键帧或非关键帧,
其中,在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,并且在所述编码数据帧为关键帧的情况下,向所述数据接收端重新发送所述编码数据帧。
6.根据权利要求2或3所述的用于数据发送端的数据传输方法,其中,所述关键性分析的结果包括关键性级别,
其中,基于所述关键性分析的结果以及所述通信质量信息确定所述编码数据帧的重新发送参数包括:
对于特定的关键性级别,所述通信质量越差,所确定的重新发送次数越高,
对于特定的通信质量,所述关键性级别越高,所确定的重新发送次数越高。
7.根据权利要求1至3中任一项所述的用于数据发送端的数据传输方法,其中,所述编码数据帧为语音数据帧,所述语音数据帧的关键性级别为语音帧和非语音帧;
其中,对所述编码数据帧进行关键性分析包括:
对所述语音数据帧进行语音分析,在所述语音数据帧包含有效语音信息的情况下,将所述语音数据帧确定为语音帧;以及在所述语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为非语音帧,
其中,所述语音帧的关键性级别高于所述非语音帧的关键性级别。
8.根据权利要求7所述的用于数据发送端的数据传输方法,其中,所述语音帧为语音起始帧或非语音起始帧,
其中,对所述编码数据帧进行关键性分析还包括:
在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为语音起始帧;以及
在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息的情况下,将所述语音数据帧确定为非语音起始帧,
其中,所述语音起始帧的关键性级别高于所述非语音起始帧的关键性级别。
9.根据权利要求8所述的用于数据发送端的数据传输方法,其中,所述非语音起始帧为能量突变语音帧、基音突变语音帧或普通语音帧,
其中,对所述编码数据帧进行关键性分析还包括:
在所述语音数据帧的能量与其前一语音数据帧的能量满足预设能量条件的情况下,将所述语音数据帧确定为能量突变语音帧,
在所述语音数据帧的基频值与其前一语音数据帧的基频值满足预设基频条件的情况下,将所述语音数据帧确定为基音突变语音帧,以及
将不满足所述预设能量条件和预设基频条件的语音数据帧确定为普通语音帧,
其中,所述能量突变语音帧的关键性级别高于所述基音突变语音帧的关键性级别,并且所述基音突变语音帧的关键性级别高于所述普通语音帧的关键性级别。
10.一种数据发送装置,包括:
数据编码模块,被配置为对待发送的数据进行编码,以得到编码数据帧;
数据传输模块,被配置为向数据接收装置发送所述编码数据帧,并从所述数据接收装置获取所述编码数据帧的接收状态信息;
数据分析模块,被配置为在所述编码数据帧的接收状态信息指示所述编码数据帧接收失败的情况下,对所述编码数据帧进行关键性分析,其中,对所述编码数据帧进行关键性分析包括:确定所述编码数据帧对数据再现质量的贡献程度;以及基于所述贡献程度,确定所述编码数据帧的关键性级别,其中,所述编码数据帧对数据再现质量的贡献程度越高,则其关键性级别越高;以及
重发控制模块,被配置为基于关键性分析的结果来确定是否需要重新发送所述编码数据帧,并且在确定需要重新发送所述编码数据帧的情况下,根据所述编码数据帧的关键性级别,确定所述编码数据帧的重新发送参数,并按照所确定的重新发送参数,控制所述数据传输模块重新发送所述编码数据帧,其中,所述重新发送参数包括重新发送次数。
11.根据权利要求10所述的数据发送装置,其中,
所述数据传输模块还被配置为接收通信质量信息,所述通信质量信息指示所述数据发送装置与所述数据接收装置之间的通信质量,以及
所述重发控制模块还被配置为基于所述关键性分析的结果以及所述通信质量信息,确定所述编码数据帧的重新发送参数,并且在确定需要重新发送所述编码数据帧的情况下,按照所确定的重新发送参数,控制所述数据传输模块向所述数据接收装置重新发送所述编码数据帧,其中,所述重新发送参数包括重新发送次数、重新发送功率中的至少一项。
12.根据权利要求10或11所述的数据发送装置,其中,所述编码数据帧为语音数据帧,所述语音数据帧的关键性级别为语音帧和非语音帧;
其中,所述数据分析模块被配置为:对所述语音数据帧进行语音分析,在所述语音数据帧包含有效语音信息的情况下,将所述语音数据帧确定为语音帧;以及在所述语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为非语音帧,从而对所述语音数据帧进行关键性分析,
其中,所述语音帧的关键性级别高于所述非语音帧的关键性级别。
13.根据权利要求12所述的数据发送装置,其中,所述语音帧为语音起始帧或非语音起始帧,
其中,所述数据分析模块还被配置为在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧不包含有效语音信息的情况下,将所述语音数据帧确定为语音起始帧;以及在所述语音数据帧包含有效语音信息且所述语音数据帧的前一语音数据帧也包含有效语音信息的情况下,将所述语音数据帧确定为非语音起始帧,从而对所述语音数据帧进行关键性分析,
其中,所述语音起始帧的关键性级别高于所述非语音起始帧的关键性级别。
14.根据权利要求13所述的数据发送装置,其中,所述非语音起始帧为能量突变语音帧、基音突变语音帧或普通语音帧,
其中,所述数据分析模块还被配置为:
在所述语音数据帧的能量与其前一语音数据帧的能量满足预设能量条件的情况下,将所述语音数据帧确定为能量突变语音帧,
在所述语音数据帧的基频值与其前一语音数据帧的基频值满足预设基频条件的情况下,将所述语音数据帧确定为基音突变语音帧,以及
将不满足所述预设能量条件和预设基频条件的语音数据帧确定为普通语音帧,
其中,所述能量突变语音帧的关键性级别高于所述基音突变语音帧的关键性级别,并且所述基音突变语音帧的关键性级别高于所述普通语音帧的关键性级别。
15.一种数据发送装置,包括:
通信模块,用于向数据接收装置发送编码数据帧,以及从数据接收装置接收所述编码数据帧的接收状态信息,
处理器,
存储器,存储计算机程序或指令,所述计算机程序或指令在被处理器执行时实现根据权利要求1至9中任一项所述的方法的步骤,以在确定需要重新发送所述编码数据帧的情况下,控制所述通信模块向所述数据接收装置重新发送所述编码数据帧。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111107703.0A CN115842603B (zh) | 2021-09-22 | 2021-09-22 | 数据传输方法以及数据发送装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111107703.0A CN115842603B (zh) | 2021-09-22 | 2021-09-22 | 数据传输方法以及数据发送装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115842603A CN115842603A (zh) | 2023-03-24 |
CN115842603B true CN115842603B (zh) | 2024-06-14 |
Family
ID=85574391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111107703.0A Active CN115842603B (zh) | 2021-09-22 | 2021-09-22 | 数据传输方法以及数据发送装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115842603B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110890945A (zh) * | 2019-11-20 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 数据传输方法、装置、终端及存储介质 |
CN111464262A (zh) * | 2020-03-18 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、介质及电子设备 |
-
2021
- 2021-09-22 CN CN202111107703.0A patent/CN115842603B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110890945A (zh) * | 2019-11-20 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 数据传输方法、装置、终端及存储介质 |
CN111464262A (zh) * | 2020-03-18 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115842603A (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3775800B2 (ja) | Arq装置のデータ回復の方法と装置 | |
RU2469482C2 (ru) | Способ и система для передачи данных в сети передачи данных | |
US8942257B2 (en) | Wireless network using feedback of side information and communication method using network coding | |
TWI455515B (zh) | 無線通訊系統改善混合式自動重發請求功能的方法及裝置 | |
JP2002190793A (ja) | 通信方式、通信装置、およびこの通信装置を用いた通信システム | |
WO2004084477A1 (en) | Transmission of data with forward error correction information | |
US20060109810A1 (en) | Preamble miss detection in transmission of multi-slot packets | |
EP3387773B1 (fr) | Procede, dispositif de relayage et destinataire avec retour dans un systeme omamrc | |
US10630426B2 (en) | Redundancy information for a packet data portion | |
CN110933740B (zh) | 上行数据的传输方法、装置、终端设备及存储介质 | |
US20160323068A1 (en) | Hybrid Automatic Repeat Request Method and Related Apparatus | |
US11411680B2 (en) | OMAMRC transmission method and system with reduced signalling | |
CN103414543B (zh) | 一种调整harq缓存量的方法及终端 | |
US20100042876A1 (en) | System and Method for Wireless Transmission Using Hybrid ARQ Based on Average Mutual Information Per Bit | |
CN115842603B (zh) | 数据传输方法以及数据发送装置 | |
CN111294161B (zh) | Harq反馈方法及装置、存储介质、终端 | |
WO2010096949A1 (zh) | 在利用网络编码重传的***中的解码方法和接收设备 | |
KR20080052380A (ko) | 이동통신 시스템에서의 수신확인신호 송수신 장치 및 방법 | |
CN102315919B (zh) | 一种harq数据合并的方法和设备 | |
CN102065372A (zh) | 以广播方式传输数据的方法及相关装置 | |
CN111246428A (zh) | 一种网络可靠通信方法、***、装置及存储介质 | |
JP2009510879A (ja) | 誤り検出及び選択的再送のための方法、装置及びシステム | |
CN113660067A (zh) | 一种用于nr***的harq调度方法和装置 | |
CN115550459A (zh) | 语音数据的发送和接收方法以及相关设备 | |
CN107888326A (zh) | 数据传输方法和装置 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40084131 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |