CN117675118A - 音视频传输丢包恢复方法、装置、设备及存储介质 - Google Patents
音视频传输丢包恢复方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117675118A CN117675118A CN202311667922.3A CN202311667922A CN117675118A CN 117675118 A CN117675118 A CN 117675118A CN 202311667922 A CN202311667922 A CN 202311667922A CN 117675118 A CN117675118 A CN 117675118A
- Authority
- CN
- China
- Prior art keywords
- packet loss
- packet
- data
- strategy
- fec
- 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.)
- Pending
Links
- 238000011084 recovery Methods 0.000 title claims abstract description 165
- 230000005540 biological transmission Effects 0.000 title claims abstract description 127
- 238000000034 method Methods 0.000 title claims abstract description 104
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 109
- 238000012937 correction Methods 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 9
- 238000000354 decomposition reaction Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 abstract description 19
- 230000000903 blocking effect Effects 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000006855 networking Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1812—Hybrid protocols; Hybrid automatic repeat request [HARQ]
-
- 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
- H04L1/0041—Arrangements at the transmitter end
-
- 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
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- 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/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
-
- 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
- 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/0852—Delays
- H04L43/0864—Round trip delays
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种音视频传输丢包恢复方法、装置、设备及存储介质。包括:获取音视频数据,将音视频数据按照预设的顺序分成多个数据包,将其发送至接收端;基于接收端发送的丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,进而利用第一算法计算重传时间;当重传时间不满足预设条件时,基于丢包率和往返延迟选择网络丢包恢复策略;策略包括:重传策略、FEC和重传混合策略以及FEC策略;基于选择的策略,确定重传的目标数据包,将其重传至接收端,以使接收端基于选择的网络丢包恢复策略,对目标数据包进行解包,得到恢复后的数据包。这样,基于不同网络条件,自动调整策略进行数据包恢复,提高了计算效率,减少传输阻塞和延迟问题。
Description
技术领域
本申请涉及音视频传输技术领域,尤其涉及一种音视频传输丢包恢复方法、装置、设备及存储介质。
背景技术
在音视频传输技术领域,由于网络发展和用户需求的不断变化,已经出现了众多相关技术和应用,然而,针对弱网环境下频繁的数据丢失和错误,导致音视频传播的中断或者质量下降的问题,传统的实时音视频传输技术往往难以满足需求。
现有技术中,可以基于前向纠错技术的抗丢包算法进行音视频传输丢包恢复,该算法主要采用实时传输协议(Real-time Transport Protocol,RTP)协议结合前向纠错技术,对于累计丢包的情况逐步进行恢复。
但是,由于该算法需要设置较大的接收缓存以存储数据,且对实时性和计算效率的要求较高,在弱网条件下往往会面临严重的传输阻塞和延迟问题,导致计算效率低、处理较为滞后。
发明内容
本申请提供一种音视频传输丢包恢复方法、装置、设备及存储介质,用以解决现有需要设置较大的接收缓存以存储数据,且对实时性和计算效率的要求较高,在弱网条件下往往会造成传输阻塞和延迟,导致计算效率低、处理较为滞后的技术问题。
第一方面,本申请提供一种音视频传输丢包恢复方法,应用于发送端,所述方法包括:
获取音视频数据,将所述音视频数据按照预设的顺序分成多个数据包,并将所述多个数据包发送至接收端;
基于接收端发送的所述多个数据包的丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,以使所述接收端基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包。
可选地,如上所述的方法,所述第一算法对应的公式为:
其中,y表示重传时间,rtt表示丢包率,ls表示往返延迟。
可选地,如上所述的方法,基于所述丢包率和所述往返延迟选择网络丢包恢复策略,包括:
当所述丢包率小于第一阈值,且所述往返延迟小于第二阈值,或,所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟小于第四阈值时,选择的网络丢包恢复策略为重传策略;所述第二阈值大于所述第四阈值;
当所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC和重传混合策略;
当所述丢包率大于或等于第三阈值,且所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC策略。
可选地,如上所述的方法,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为重传策略时,确定重传的目标数据包为多个数据包,并基于所述重传时间将所述多个数据包重传至接收端。
可选地,如上所述的方法,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为FEC和重传混合策略时,基于所述丢包率,利用里德-所罗门RS算法对所述多个数据包进行编码,得到FEC冗余包;
基于所述多个数据包和所述FEC冗余包的数量,确定重传的目标数据包,并基于所述往返延迟,利用第二算法计算重传次数,将所述目标数据包基于所述重传次数重传至接收端;所述目标数据包为FEC冗余包与多个数据包,或多个数据包;
其中,所述第二算法对应的公式为:x表示重传次数,ls表示往返延迟。
可选地,如上所述的方法,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为FEC策略时,获取所述音视频数据的应用需求,并基于所述应用需求确定目标分辨率和目标帧率;
分别将音视频传输的分辨率和帧率调整至目标分辨率和目标帧率,并基于所述目标分辨率和所述目标帧率将所述目标数据包重传至接收端;所述目标数据包为FEC冗余包与多个数据包;所述FEC冗余包基于FEC算法计算得到。
可选地,如上所述的方法,将所述多个数据包发送至接收端,包括:
针对每一数据包,进行压缩和编码处理,得到第一数据包;
基于异步传输方式将所述第一数据包发送至接收端。
可选地,如上所述的方法,将所述多个数据包发送至接收端,包括:
针对每一数据包,创建多个副本,并将所述多个副本发送至接收端的多个接收端口;
当确定目标接收端口接收任意一个副本后,将所述多个数据包发送至目标接收端口。
可选地,如上所述的方法,所述方法还包括:
基于重叠编码组合的方式对获取的音视频数据进行处理,得到冗余数据,将所述音视频数据和所述冗余数据传输至接收端。
可选地,如上所述的方法,所述方法还包括:
基于快速起始算法调整获取的音视频数据的传输参数;所述传输参数包括帧率和码率;
基于所述传输参数将所述音视频数据传输至接收端。
第二方面,本申请还提供一种音视频传输丢包恢复方法,应用于接收端,所述方法包括:
接收发送端发送的多个数据包,并将所述多个数据包按照预设的顺序进行排列,以确定所述多个数据包的丢包数据;
将所述丢包数据发送至发送端后,接收发送端重传的目标数据包;
基于所述目标数据包确定接收端选择的网络丢包恢复策略,并基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
其中,接收端选择网络丢包恢复策略的过程包括:基于所述丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略。
可选地,如上所述的方法,所述方法还包括:
利用经验模态分解算法,对接收的发送端发送的多个数据包进行分解、滤波和重构处理,得到恢复后的数据包。
可选地,如上所述的方法,所述方法还包括:
基于反向纠错算法,对接收的发送端发送的多个数据包进行数据恢复,得到恢复后的数据包。
第三方面,本申请还提供一种音视频传输丢包恢复装置,应用于发送端,所述装置包括:
获取模块,用于获取音视频数据,将所述音视频数据按照预设的顺序分成多个数据包,并将所述多个数据包发送至接收端;
计算模块,用于基于接收端发送的所述多个数据包的丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
选择模块,用于当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
确定模块,用于基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,以使所述接收端基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包。
第四方面,本申请还提供一种音视频传输丢包恢复装置,应用于接收端,所述装置包括:
接收模块,用于接收发送端发送的多个数据包,并将所述多个数据包按照预设的顺序进行排列,以确定所述多个数据包的丢包数据;
发送模块,用于将所述丢包数据发送至发送端后,接收发送端重传的目标数据包;
恢复模块,用于基于所述目标数据包确定接收端选择的网络丢包恢复策略,并基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
其中,接收端选择网络丢包恢复策略的过程包括:基于所述丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略。
第五方面,本申请还提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面和第二方面中任一项所述的方法。
第六方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面和第二方面中任一项所述的方法。
本申请提供的音视频传输丢包恢复方法、装置、设备及存储介质,通过将音视频数据按照预设的顺序分成多个数据包,以便在接收端确定其顺序;进一步的,探测并计算当前网络的丢包率和往返延迟,并利用第一算法计算多个数据包的重传时间,当重传时间满足而预设条件时,可以根据当前网络的丢包率和往返延迟,自动的选择不同的网络恢复策略,进一步的,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将目标数据包重传至接收端,以使接收端进行数据恢复,得到恢复后的数据包;其中,网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;重传策略为仅重传数据包的策略,FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略,这样,本申请可以自动的选择不同的网络恢复策略来提高音视频数据的稳定性和连续性,提高计算效率,从而达到抗丢包的同时减少网络的再次拥塞,降低网络的延迟。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的一种音视频传输丢包恢复方法的流程示意图;
图3为本申请实施例提供的一种发送端的音视频传输丢包恢复方法的流程示意图;
图4为本申请实施例提供的一种接收端的音视频传输丢包恢复方法的流程示意图;
图5为本申请实施例提供的一种音视频传输丢包恢复装置的结构示意图;
图6为本申请实施例提供的另一种音视频传输丢包恢复装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一设备和第二设备仅仅是为了区分不同的设备,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
在音视频传输技术领域,由于网络发展和用户需求的不断变化,已经出现了众多相关技术和应用,然而,针对弱网环境下频繁的数据丢失和错误,导致音视频传播的中断或者质量下降的问题,传统的实时音视频传输技术往往难以满足需求。
针对这一问题,基于前向纠错技术的抗丢包算法得到了广泛应用,可以通过预测、估计和填充缺失数据来保证音视频传输的连续性和稳定性,但是,该算法存在计算效率低、处理滞后等问题,难以适应高质量、稳定和实时的音视频传输需求。
一种可能的实现方式中,可以基V-RTP抗丢包算法进行音视频传输丢包恢复,该算法主要采用RTP协议结合前向纠错技术,对于累计丢包的情况逐步进行恢复。
但是,由于该算法需要设置较大的接收缓存以存储数据,且对实时性和计算效率的要求较高,在弱网条件下往往会面临严重的传输阻塞和延迟问题,导致计算效率低、处理较为滞后。
另一种可能的实现方式中,可以基于用户数据报协议(User Datagram Protocol,UDP)纠错方案进行音视频传输丢包恢复,该方案通过将音视频信号分成多个小块进行传输,并对每个小块同时发送多份副本来提高数据的可靠性,当某个副本中某个数据块发生丢失或损坏时,可以通过其他副本或冗余容器中类似位置的数据块填充,从而达到前向纠错的目的。
但是,该方案存在信息冗余度高、传输带宽占用大等问题。
再一种可能的实现方式中,基于优先级编码的前向纠错技术进行音视频传输丢包恢复,具体的,可以基于不同数据包之间的优先级,对其进行分类和处理,并对缺失数据进行前向纠错,以保证音视频传输的连续性和稳定性。
但是,在弱网条件下会存在计算效率低等问题。
需要说明的是,由于在音视频传输过程中存在丢包、损坏或者误码等问题,导致音视频传输的不稳定性和连续性差的问题,这些问题在对实时性要求较高的应用场景下尤为明显,虽然针对这些问题,一些解决方案已经被提出,如重传机制、纠错编码等技术手段,但是这些解决方案的效果并不理想,无法有效减少音视频传输中出现的数据丢失和延迟的问题。
针对上述问题,本申请提供一种音视频传输丢包恢复方法,通过将音视频数据按照预设的顺序分成多个数据包,以便在接收端确定其顺序;进一步的,探测并计算当前网络的丢包率和往返延迟,并利用第一算法计算多个数据包的重传时间,当重传时间满足而预设条件时,可以根据当前网络的丢包率和往返延迟,自动的选择不同的网络恢复策略,进一步的,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将目标数据包重传至接收端,以使接收端进行数据恢复,得到恢复后的数据包;其中,网络丢包恢复策略包括:重传策略、向前纠错(Forward Error Correction,FEC)和重传混合策略以及FEC策略;重传策略为仅重传数据包的策略,FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略,这样,本申请可以自动的选择不同的网络恢复策略来提高音视频数据的稳定性和连续性,提高计算效率,从而达到抗丢包的同时减少网络的再次拥塞,降低网络的延迟。
示例性的,图1为本申请实施例提供的一种应用场景示意图,如图1所示,该应用场景可以应用到音视频传输的场景中,如在线视频会议、网络直播、音视频聊天等,以音视频聊天为例,该应用场景包括:第一用户的第一终端设备101和第二用户的第二终端设备102。
具体的,当第一用户基于第一终端设备101与第二用户基于第二终端设备102进行视频聊天时,在音视频的传输过程中,第一终端设备101可以将音视频数据分割为多个小包,然后按照一定策略排序将小包排序并依次编号,如数据包1-6,进一步的,通过网络将数据包1-6传输给第二终端设备102。
当网络出现异常产生丢包时,第二终端设备102生成丢包数据发送给第一终端设备101,以使第一终端设备101利用算法判断网络所处的丢包场景,自适应的选择网络丢包恢复策略重传数据包;在第二终端设备102接收到重传的数据包后,利用选择的网络丢包恢复策略进行解包,得到恢复后的数据包,进一步的,将恢复后的数据包输出至第二终端设备102进行可视化显示。
可选地,上述终端设备为客户端,可以是无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(Radio AccessNetwork,简称RAN)与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(Personal Communication Service,简称PCS)电话、无绳电话、会话发起协议(Session Initiation Protocol,简称SIP)话机、无线本地环路(Wireless Local Loop,简称WLL)站、个人数字助理(Personal Digital Assistant,简称PDA)等设备。无线终端也可以称为系统、订户单元(Subscriber Unit)、订户站(SubscriberStation),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、远程终端(Remote Terminal)、接入终端(Access Terminal)、用户终端(User Terminal)、用户代理(User Agent)、用户设备(User Device or User Equipment),在此不作限定。可选地,上述终端设备可以是智能手机、平板电脑等设备。
需要说明的是,第一终端设备为音视频的发送端,该音视频的发送端可以包括:视联网终端、视联网接入服务器、协转服务器、视频会议系统多点控制单元中的至少一种;
第二终端设备为音视频的接收端,该音视频的接收端可以包括:视联网终端、视联网接入服务器、协转服务器、视频会议系统多点控制单元中的至少一种;本申请实施例对音视频的发送端和音视频的接收端不作具体限定。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2为本申请实施例提供的一种音视频传输丢包恢复方法的流程示意图,如图2所示,所述音视频传输丢包恢复方法用于实现对弱网的快速、稳定和高效的音视频传输,进而本申请提供的方法具有广泛的应用价值,在高清视频直播、在线教育、远程会议、互联网电视等领域进行应用,具有显著的社会效益和经济效益;所述音视频传输丢包恢复方法的执行主体为发送端;所述音视频传输丢包恢复用方法包括如下步骤:
S201、获取音视频数据,将所述音视频数据按照预设的顺序分成多个数据包,并将所述多个数据包发送至接收端。
本申请实施例中,预设的顺序可以指的是数据包的排列先后顺序,具体的,基于预设的大小将音视频数据按照预设的顺序分成多个数据包,本申请实施例对预设的大小和预设的顺序不作具体限定。
在本步骤中,发送端可以将获取到的音视频数据分成若干个数据包,并为每个数据包添加所属序列号,以便在接收端确定数据包的先后顺序,进一步的,发送端将数据包发送至接收端,以探测接收端是否发生丢包、损坏或者误码等问题。
可选地,发送端按照预设的顺序将数据包发送给接收端。
S202、基于接收端发送的所述多个数据包的丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间。
本申请实施例中,所述丢包数据可以丢包、延迟、抖动等网络参数,所述丢包数据用于基于预定义算法计算当前网络的丢包率和往返延迟,本申请实施例对丢包数据包括的具体内容不作限定,其中,该预定义算法为提前设定的用于计算网络丢包率和往返延迟的算法,如GCC(Google Congest Control)算法,本申请实施例对预定义算法不作具体限定,其可以参照现有的算法。
在本步骤中,发送端可以探测到丢包数据,进一步的,基于丢包数据,利用预定义算法计算当前网络的丢包率(lost)和网络的往返延迟(rtt),作为判断当前网络状况的依据,来确定当前网络所处的状态。
其中,发送端按照预设的顺序发送多个数据包,接收端可以使用缓存池暂存未接收完整的数据包,并根据序列号确定其顺序,当发现丢包、损坏或误码等问题时,接收端会生成丢包数据,并将丢包数据发送至发送端,以告知未收到的数据包。
示例性的,以全部丢包恢复为例,做一个一般情况的分析,分析任意往返延迟和丢包率下全部丢包恢复的情况:
假设重传的次数为x,重传时间为y,丢包率为ls,往返延迟为rtt。
则网络上所用的时间可以基于如下公式确定:
由公式(1)可以看出,网络上所用的时间和重传次数是线性的关系,如果斜率rtt比较小则可以多次重传,此时,对网络是延迟影响也大。
进一步的,由于丢包率和重传次数的关系如下公式确定:
lsx=0.01 (ls<1) (2)
将公式(2)进行转换可以得到重传次数的计算公式,重传次数的计算公式为:
进一步的,将公式(3)代入公式(1)中可以得到重传时间y与往返延迟rtt、丢包率ls三者之间的关系,该关系对应的公式即第一算法的公式,如下所示:
分析公式(4)可以发现,rtt越大,则重传时间越长,ls越大,则重传时间越长,
因此,在算法设计时,不能只控制重传次数,而是要控制重传的时间,如果重传某个数据包在300ms内都无法将该数据包重传回来,则认为只用重传无法完成网络丢包的恢复,需要使用其他的网络丢包恢复策略。
所以,在选择网络丢包恢复策略之前,需要计算多个数据包的重传时间,并判断所述重传时间是否满足预设条件;该预设条件可以为小于300ms,也可以是其他约束条件,本申请实施例对此不作具体限定。
需要说明的是,计算重传时间的第一算法可以是公式(4)对应的算法,也可以是其他算法,如机器学习模型等,本申请实施例对此不作具体限定,第一算法可以用于计算重传时间即可。
在本申请实施例中,利用公式(4)计算重传时间,即可以基于一个表格来精准的计算出需要重传的时间,重传时间y可以通过当前网络的丢包率和往返延迟计算出来,使得在发送侧就可以确定是否进行数据包重传,提高计算速率。
可选的,本申请还可以根据不同网络条件和带宽情况,自动调整上述任意一种算法的计算速度和流量大小等参数,即通过在发送数据包时,对数据包信息进行精确测量和估算,并在接收端启用自适应反馈机制,动态调整最佳计算速率和吞吐量,从而减少因计算效率不足导致的传输阻塞和延迟问题。
S203、当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略。
本申请实施例中,可以根据当前网络的丢包率和往返延迟的关系选取网络丢包恢复策略,如重传策略、FEC策略、重传和FEC混合策略。
具体的,发送端可以自动的根据网络状况来选择对应的网络丢包恢复策略,如果选择只重传策略,则会根据当前网络的丢包率和往返延迟计算出重传所需的时间,并在重传时只重传原始包,即多个数据包;如果选择重传和FEC混合策略,则会精准的控制重传的次数及所需FEC冗余包的数量,并对数据包进行FEC编码生成冗余数据包,基于数据包和FEC冗余包的数量,选择只重传原始包还是FEC冗余包与数据包同时重传,使二者在同一丢包场景结合使用;如果选择只使用FEC策略,则会调整音视频的分辨率和帧率,并只使用FEC策略进行数据包恢复,以适应大丢包和大延迟的网络环境。
需要说明的是,本申请实施例可以通过网络估算算法,根据网络的丢包率和往返延迟自动的判断当前网络所处的状态,以便根据网络的拥塞丢包和延迟状态选取对应的算法。
S204、基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,以使所述接收端基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包。
在本步骤中,发送端在确定重传的目标数据包后,将目标数据包重传至接收端,以使接收端根据接收到的数据包类型,自动进行相应的解包操作,进行数据包恢复,并将恢复后的数据包输出给客户端,保证音视频的稳定和连续性;所述数据包类型包括FEC包、重传包或重传和FEC混合包,该数据包类型基于网络丢包恢复策略确定。
因此,本申请提出了一种音视频传输丢包恢复方法,可以基于序列间关系的前向纠错方案与重传结合的方案,可以自适应特定场景下的网络拥塞丢包状况,同时使用FEC和重传的各自的优势,快速、稳定及高效地实现音视频传输,保证音视频传输的传输连续性和质量,适用于各类网络环境下的音视频传输场景,并且在特定场景下同时使用FEC和重传的共同优点,利用控制算法,有效的将延迟控制到一定范围内,既解决了RTP的丢包问题又降低了网络延迟,提高了实时性和计算效率。
可选地,如上所述的方法,基于所述丢包率和所述往返延迟选择网络丢包恢复策略,包括:
当所述丢包率小于第一阈值,且所述往返延迟小于第二阈值,或,所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟小于第四阈值时,选择的网络丢包恢复策略为重传策略;所述第二阈值大于所述第四阈值;
当所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC和重传混合策略;
当所述丢包率大于或等于第三阈值,且所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC策略。
本申请实施例中,所述第一阈值、第二阈值、第三阈值和第四阈值均是提前设定的用于确定如何选择网络丢包恢复策略的数值,该数值可以基于大量试验验证得到,也可以基于网络环境和用户需求确定,还可以人为修改,本申请实施例对第一阈值、第二阈值、第三阈值和第四阈值对应的具体数值不作限定。
其中,基于该第一阈值、第二阈值、第三阈值和第四阈值的设定,可以选择出适合不同应用场景的网络丢包恢复策略。
示例性的,经过大量试验验证得到,第一阈值可以是30ms,第二阈值可以是60%、第三阈值可以是50ms,第四阈值可以是40%。
具体的,当rtt<30且lost<60%时,完全使用重传策略,或当30<rtt<50且lost<40%时,完全使用重传策略,可以理解的是,rtt小的情况下,lost可以适当高一点,相应的,rtt大的情况下,lost需要低一点。
当30ms<rtt<50ms,且lost≥40%时,重传和FEC同时使用,即选择FEC和重传混合策略;当rtt≥50ms,且lost≥40%时,选择的网络丢包恢复策略为FEC策略。
因此,本申请实施例可以基于丢包率和往返延迟的大小,自适应选择适合的网络丢包恢复策略,提高了音视频传输丢包恢复的灵活性。
可选地,如上所述的方法,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为重传策略时,确定重传的目标数据包为多个数据包,并基于所述重传时间将所述多个数据包重传至接收端。
本申请实施例中,由于重传算法的优点是网络携带率高,在网路中如果往返时延(Round-Trip Time,RTT)较小且丢包率不大的场景下,只使用重传是最合适的,可以减少带宽的浪费;但是如果重传的数据包在重传的过程中又丢包,即重传的数据包丢了,则引起多次重传,增加RTT。
在本步骤中,在rtt<30,lost<60%或者30<rtt<50,lost<40%时,只使用重传算法进行丢包重传,重传的是原数据包,即S201生成的多个数据包。
因此,本申请实施例在RTT较小且丢包率不大的场景下,通过使用重传策略将目标数据包重传至接收端,减少带宽的浪费,节省资源。
可选地,如上所述的方法,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为FEC和重传混合策略时,基于所述丢包率,利用里德-所罗门RS算法对所述多个数据包进行编码,得到FEC冗余包;
基于所述多个数据包和所述FEC冗余包的数量,确定重传的目标数据包,并基于所述往返延迟,利用第二算法计算重传次数,将所述目标数据包基于所述重传次数重传至接收端;所述目标数据包为FEC冗余包与多个数据包,或多个数据包;
其中,所述第二算法对应的公式为:x表示重传次数,ls表示往返延迟。
本申请实施例中,由于FEC应用的是里德-所罗门(Reed-Solomon,RS)算法,RS算法的数据包可以分原数据包和/或FEC冗余包,如果原数据包丢失,则需要使用FEC冗余包对其进行恢复,所以原数据包的重要性在传输中尤其重要,可以通过重传算法保护FEC的原数据包传输,根据公式(4)可以分析出:
在30ms<rtt<50ms,lost>40%时,重传和FEC可以同时使用,当只重传FEC的原数据包时,可以达到带宽小,且网络延迟少的目的。
在本步骤中,当30ms<rtt<50ms,lost≥40%时,重传和FEC可以同时使用,根据当前的丢包率对数据包进行FEC的RS算法编码,使得携带的FEC冗余数据包为只使用FEC编码的一半。
可选的,根据当前的丢包率对数据包进行FEC的RS算法编码时,携带的FEC冗余数据包还可以使用FEC编码的其他占比比例,本申请实施例对此不作具体限定。
进一步的,可以根据多个数据包和FEC冗余包的数量,确定重传的目标数据包,即当FEC解码时,FEC的原数据包加FEC冗余包的数量不足,没有满足传输条件,导致无法将数据包全部恢复,则采用只重传FEC的原数据包的策略恢复数据,不重传FEC冗余包,否则,可以重传FEC冗余包与多个数据包。
其中,在重传目标数据包前,还需基于第二算法,即公式(3)确定重传次数,进而基于重传次数重传目标数据包。
需要说明的是,FEC和重传混合策略规定了对于在发送端先对FEC进行编码,后对FEC原数据包进行重传;对于在接收端先处理重传数据包,后进行FEC的解码的顺序,可以保证在接收端的同一个RTP包只解一次FEC,就可以控制整个网络接收到的数据包的延迟在一个值以下,使得网络延迟的可控,以达到降低网络延迟的目的。
因此,本申请实施例通过使用FEC和重传混合策略,根据当前的丢包率对数据包进行FEC的RS算法编码,携带的冗余数据包为只使用FEC编码的一半,同时在FEC编码的基础上,重传算法只重传FEC原数据包,从而大大的降低网络的携带率,大大缓解网络拥塞。
可选地,如上所述的方法,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为FEC策略时,获取所述音视频数据的应用需求,并基于所述应用需求确定目标分辨率和目标帧率;
分别将音视频传输的分辨率和帧率调整至目标分辨率和目标帧率,并基于所述目标分辨率和所述目标帧率将所述目标数据包重传至接收端;所述目标数据包为FEC冗余包与多个数据包;所述FEC冗余包基于FEC算法计算得到。
本申请实施例中,所述目标分辨率和目标帧率为提前定义好的可以满足用户需求以及应用环境的最低音视频的分辨率和帧率,本申请实施例对目标分辨率对应的具体数值不作限定,其可以基于用户需求以及应用环境确定,也可以人为设定。
在本步骤中,由于在大丢包和大延迟的条件下,重传算法对网络的恢复的可能性已经很小,因此,采用重传算法会大大的增加网络延迟,同时对网络带宽也会造成压力,所以,当rtt≥50ms,lost≥40%,可以将音视频的分辨率和帧率调整到最低,进一步的,只使用FEC算法将目标数据包重传至接收端,这样可以达到在大延迟下也能流畅观看视频的目的。
具体的,当rtt≥50ms,lost≥40%时,将音视频的分辨率和帧率调整到最低,得到目标分辨率和目标帧率,并根据目标分辨率和目标帧率,对RTP包进行FEC编码,得到目标数据包,进而将目标数据包重传至接收端。
这样,在单独使用FEC策略时,可以对FEC算法进行修改,通过大量降低帧率和码率来总体降低FEC发包的码率,以达到降低缓解网络拥塞的作用。
可选地,如上所述的方法,将所述多个数据包发送至接收端,包括:
针对每一数据包,进行压缩和编码处理,得到第一数据包;
基于异步传输方式将所述第一数据包发送至接收端。
本申请实施例中,可以将原始音视频信号切割成若干个小块或小片段,进而针对每个块或片段单独进行处理和传输。
具体的,可以先将每个小块/片段的序列号和冗余数据进行压缩和编码,进一步的,采用特定的传输协议进行异步传输,本申请实施例对特定的传输协议不作具体限定,其可以参照现有的描述。
这样,即使出现某个块/片段数据丢失或错误,也不会影响其它块/片段的传输和处理,从而提高了数据包传输的容错率和稳定性。
可选地,如上所述的方法,将所述多个数据包发送至接收端,包括:
针对每一数据包,创建多个副本,并将所述多个副本发送至接收端的多个接收端口;
当确定目标接收端口接收任意一个副本后,将所述多个数据包发送至目标接收端口。
本申请实施例中,还可以为每个数据包提供多份副本,并使用不同的端口来发送,以确定合适的接收端口。
具体的,在发送端可以将一个数据包同时发给多个接收端口,进而在接收端等待所有的副本数据包到达或者确认其中一个副本数据包到达时,将正确的数据包输出给接收端。
这样,即使某个端口出现故障或丢失数据,也可以通过其它端口的副本数据包进行前向纠错和恢复,从而减少了因单一端口失效而导致的死循环问题。
可选地,如上所述的方法,所述方法还包括:
基于重叠编码组合的方式对获取的音视频数据进行处理,得到冗余数据,将所述音视频数据和所述冗余数据传输至接收端。
具体的,基于网络编码的方法,在音视频数据进行数据传输时,利用重叠编码组合等网络编码技术对音视频数据进行处理,得到冗余数据,进一步的,将音视频数据和冗余数据传输至接收端。
需要说明的是,上述步骤可以单独执行,也可以和图2所示实施例同时执行,提高音视频传输丢包恢复的成功率。
这样,通过加入额外冗余数据,增强数据的容错能力,从而保证音视频数据的稳定性和连续性。
可选地,如上所述的方法,所述方法还包括:
基于快速起始算法调整获取的音视频数据的传输参数;所述传输参数包括帧率和码率;
基于所述传输参数将所述音视频数据传输至接收端。
具体的,在执行S201-S204之前,可以基于实时码流传输协议的方法将音视频数据直接传输过去,如通过对实时码流传输协议进行改进和优化,即使用快速起始(FastStart)技术、调整媒体数据的帧率、码率等参数,得到传输参数进行音视频数据传输,提高音视频传输的成功率,在音视频传输成功后,便可以不执行S201-S204;而当发生丢包问题时,可以执行S201-S204。
这样,通过改进和优化的实时码流传输协议进行音视频数据传输,实现高质量、低延迟的音视频传输效果。
综合上述分析,本申请实施例还可以自适应计算速度、异步处理机制和端口冗余等优化方案,通过配合自适应计算速度、异步处理机制、端口冗余等多种优化措施,进一步提升音视频传输的效率和质量,从而具有显著的实用价值和创新特色。
结合上述实施例,图3为本申请实施例提供的一种发送端的音视频传输丢包恢复方法的流程示意图,如图3所示,为一种可能的实现方式,该方法应用于发送端,对应的执行步骤包括:
步骤1:输入音视频信号(音视频数据),将音视频数据按照预设的顺序分割成若干个数据包,并为每个数据包添加序列号,进一步的,探测当前网络的丢包率ls和往返延迟rtt,基于ls和rtt的大小选择网络丢包恢复策略。
步骤2:当rtt<30且lost<60%时,或当30<rtt<50且lost<40%时,完全使用重传策略,基于重传策略发送数据包;当30ms<rtt<50ms,且lost≥40%时,使用FEC和重传混合策略,并基于FEC和重传混合策略进行FEC编码,减少携带冗余包的数量,在FEC的原数据包加冗余包数量不足的情况下,只对FEC的原数据包进行重传;当rtt≥50ms,且lost≥40%时,选择FEC策略进行数据包的发送。
因此,本申请实施例可以自适应网络丢包恢复机制,通过当前网络的不同状态,选取对应的重传策略,FEC策略,重传和FEC混合策略对网络丢包进行恢复,并给出了一系列的计算公式及边界值来实现自动化的算法切换,从而到达抗丢包的同时,减少网络的再次拥塞,同时还可以降低网络的延迟。
可选地,本申请还提供一种音视频传输丢包恢复方法,应用于接收端,所述方法包括:
接收发送端发送的多个数据包,并将所述多个数据包按照预设的顺序进行排列,以确定所述多个数据包的丢包数据;
将所述丢包数据发送至发送端后,接收发送端重传的目标数据包;
基于所述目标数据包确定接收端选择的网络丢包恢复策略,并基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
其中,接收端选择网络丢包恢复策略的过程包括:基于所述丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略。
在本步骤中,接收端在接收发送端发送的多个数据包后,可以使用缓存池暂存未接收完整的数据包,并利用序列号信息确定数据包的顺序;进一步的,当发现丢包、损坏或者误码等问题时,生成丢包数据,用于指示未收到的数据包,进一步的,将丢包数据发送至发送端后,接收发送端重传的目标数据包。
进一步的,接收端可以根据当前收到的目标数据包是FEC包,重传包还是重传和FEC的混合包对其进行解包,得到恢复后的数据包,并将恢复后的数据包输出给客户端,保证音视频的稳定和连续;其中,目标数据包的类型基于接收端选择的网络丢包恢复策略确定。
需要说明的是,应用接收端的音视频传输丢包恢复方法的具体实现原理和效果可以参见上述应用发送端的实施例对应的相关描述和效果,此处不做过多赘述。
可选地,在接收端,还可以设置缓存池,用于暂存尚未接收完整的数据包,当接收端探测到丢包、损坏或者误码等问题时,就可以通过缓存池中已经保存的序号信息及其前后相邻的数据包信息,对当前丢失的数据包进行前向纠错并填充,从而保证音视频传输的稳定性和连续性。
因此,本申请实施例基于缓存池管理与前向纠错算法相结合的方法,在接收端,利用缓存池管理方式,结合前向纠错算法实现了对音视频数据包的高效恢复和填充,极大地提高了音视频传输的容错能力和鲁棒性。
可选地,如上所述的方法,所述方法还包括:
利用经验模态分解算法,对接收的发送端发送的多个数据包进行分解、滤波和重构处理,得到恢复后的数据包。
具体的,基于经验模态分解(Empirical Mode Decomposition,EMD)算法:通过对音视频数据进行分解、滤波和重构等处理,即将音视频数据进行分解,确定丢失的数据包,通过对丢失的数据包的相邻数据包进行滤波处理,预测得到补充数据包,将补充数据包和多个数据包重构,得到恢复后的数据包。
这样,可以实现对丢失或损坏的数据包的恢复和填充,提高音视频数据传输的稳定性和连续性。
可选地,如上所述的方法,所述方法还包括:
基于反向纠错算法,对接收的发送端发送的多个数据包进行数据恢复,得到恢复后的数据包。
具体的,在音视频传输过程中,还可以采用基于反向纠错算法的方法进行数据包恢复,得到恢复后的数据包。
这样,虽然反向纠错算法与基于序列间关系的前向纠错算法不同,但是,反向纠错算法也可以实现恢复丢失或损坏的音视频数据,提高应用的灵活性。
结合上述实施例,图4为本申请实施例提供的一种接收端的音视频传输丢包恢复方法的流程示意图;如图4所示,为一种可能的实现方式,该方法应用于接收端,对应的执行步骤包括:
步骤A:接收音视频信号对应的数据包,并将数据包记录暂存在接收端的缓存池中,判断是否发生丢包,当确定发生丢包后,生成丢包数据,以通知发送端出现丢包,进而接收端接收发送端重传的数据包。
步骤B:接收端根据当前收到的数据包是FEC包,重传包还是重传和FEC的混合包对其进行解包,得到恢复后的数据包,进一步的,进行FEC解码,得到音视频输出给客户端;其中,客户端即接收端的前端。
结合图3和图4的实施例发现,本申请通过利用前向纠错和重传算法的各自的优势进行了一系列优化措施的综合应用,提高音视频传输的稳定性和连续性。具体来说,发送端将数据分割为多个小包,然后按照一定策略排序并依次编号,进而通过网络传输给接收端,而当网络出现异常产生丢包时,发送端可以利用算法判断网络所处的丢包场景,自适应的采用重传、前向纠错或者重传前向纠错混用等策略进行原始数据的编码,发送给接收端;在接收端,可以对数据包先进行缓存暂存,并根据接收的数据包的类型自动的采用对应的算法进行解码,进而对未完整接收的数据进行恢复。
同时,本申请是配合特定场景进行单独重传、特定场景进行重传和FEC共同抗丢包的方法,进行网络传输优化,减少了音视频数据丢失和延迟问题,并通过前向纠错技术和一系列优化措施,提高了传输效率和质量。
在前述实施例中,对本申请实施例提供的音视频传输丢包恢复方法进行了介绍,而为了实现上述本申请实施例提供的方法中的各功能,作为执行主体的电子设备可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。
例如,图5为本申请实施例提供的一种音视频传输丢包恢复装置的结构示意图,应用于发送端,所述装置包括:获取模块501,计算模块502,选择模块503和确定模块504;其中,所述获取模块501,用于获取音视频数据,将所述音视频数据按照预设的顺序分成多个数据包,并将所述多个数据包发送至接收端;
所述计算模块502,用于基于接收端发送的所述多个数据包的丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
所述选择模块503,用于当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
所述确定模块504,用于基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,以使所述接收端基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包。
可选地,如上所述的装置,所述第一算法对应的公式为:
其中,y表示重传时间,rtt表示丢包率,ls表示往返延迟。
可选地,如上所述的装置,所述选择模块503,具体用于:
当所述丢包率小于第一阈值,且所述往返延迟小于第二阈值,或,所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟小于第四阈值时,选择的网络丢包恢复策略为重传策略;所述第二阈值大于所述第四阈值;
当所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC和重传混合策略;
当所述丢包率大于或等于第三阈值,且所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC策略。
可选地,如上所述的装置,所述确定模块504,具体用于:
当选择的网络丢包恢复策略为重传策略时,确定重传的目标数据包为多个数据包,并基于所述重传时间将所述多个数据包重传至接收端。
可选地,如上所述的装置,所述确定模块504,具体用于:
当选择的网络丢包恢复策略为FEC和重传混合策略时,基于所述丢包率,利用里德-所罗门RS算法对所述多个数据包进行编码,得到FEC冗余包;
基于所述多个数据包和所述FEC冗余包的数量,确定重传的目标数据包,并基于所述往返延迟,利用第二算法计算重传次数,将所述目标数据包基于所述重传次数重传至接收端;所述目标数据包为FEC冗余包与多个数据包,或多个数据包;
其中,所述第二算法对应的公式为:x表示重传次数,ls表示往返延迟。
可选地,如上所述的装置,所述确定模块504,具体用于:
当选择的网络丢包恢复策略为FEC策略时,获取所述音视频数据的应用需求,并基于所述应用需求确定目标分辨率和目标帧率;
分别将音视频传输的分辨率和帧率调整至目标分辨率和目标帧率,并基于所述目标分辨率和所述目标帧率将所述目标数据包重传至接收端;所述目标数据包为FEC冗余包与多个数据包;所述FEC冗余包基于FEC算法计算得到。
可选地,如上所述的装置,所述获取模块501,具体用于:
针对每一数据包,进行压缩和编码处理,得到第一数据包;
基于异步传输方式将所述第一数据包发送至接收端。
可选地,如上所述的装置,所述获取模块501,具体用于:
针对每一数据包,创建多个副本,并将所述多个副本发送至接收端的多个接收端口;
当确定目标接收端口接收任意一个副本后,将所述多个数据包发送至目标接收端口。
可选地,如上所述的装置,所述装置还包括处理模块,所述处理模块,用于:
基于重叠编码组合的方式对获取的音视频数据进行处理,得到冗余数据,将所述音视频数据和所述冗余数据传输至接收端。
可选地,如上所述的装置,所述装置还包括传输模块,所述传输模块,用于:
基于快速起始算法调整获取的音视频数据的传输参数;所述传输参数包括帧率和码率;
基于所述传输参数将所述音视频数据传输至接收端。
本申请实施例提供的应用于发送端的音视频传输丢包恢复装置的具体实现原理和效果可以参见上述实施例对应的相关描述和效果,此处不做过多赘述。
可选地,本申请还提供一种音视频传输丢包恢复装置,应用于接收端,图6为本申请实施例提供的另一种音视频传输丢包恢复装置的结构示意图,所述装置包括:接收模块601,发送模块602和恢复模块602;其中,所述接收模块601,用于接收发送端发送的多个数据包,并将所述多个数据包按照预设的顺序进行排列,以确定所述多个数据包的丢包数据;
所述发送模块602,用于将所述丢包数据发送至发送端后,接收发送端重传的目标数据包;
所述恢复模块603,用于基于所述目标数据包确定接收端选择的网络丢包恢复策略,并基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
其中,接收端选择网络丢包恢复策略的过程包括:基于所述丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略。
可选地,如上所述的装置,所述装置还包括重构模块;所述重构模块,用于:
利用经验模态分解算法,对接收的发送端发送的多个数据包进行分解、滤波和重构处理,得到恢复后的数据包。
可选地,如上所述的装置,所述装置还包括反向纠错模块,所述反向纠错模块,用于:
基于反向纠错算法,对接收的发送端发送的多个数据包进行数据恢复,得到恢复后的数据包。
本申请实施例提供的应用于接收端的音视频传输丢包恢复装置的具体实现原理和效果可以参见上述实施例对应的相关描述和效果,此处不做过多赘述。
本申请实施例还提供了一种电子设备的结构示意图,图7为本申请实施例提供的一种电子设备的结构示意图,如图7所示,该电子设备可以包括:处理器701以及与所述处理器通信连接的存储器702;该存储器702存储计算机程序;该处理器701执行该存储器702存储的计算机程序,使得该处理器701执行上述任一实施例所述的方法。
其中,存储器702和处理器701可以通过总线703连接。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序执行指令,计算机执行指令被处理器执行时用于实现如本申请前述任一实施例中的所述的方法。
本申请实施例还提供了一种运行指令的芯片,该芯片用于执行如本申请前述任一实施例中由电子设备所执行的前述任一实施例中所述的方法。
本申请实施例还提供了一种计算机程序产品,该程序产品包括计算机程序,该计算机程序被处理器执行时可实现如本申请前述任一实施例中由电子设备所执行的前述任一实施例中所述的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(Central Processing Unit,简称CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速随机存取存储器(Random Access memory,简称RAM),也可能还包括非不稳定的存储器(Non-volatile Memory,简称NVM),例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,简称ISA)总线、外部设备互连(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
进一步需要说明的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。上述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求书指出。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。
Claims (17)
1.一种音视频传输丢包恢复方法,其特征在于,应用于发送端,所述方法包括:
获取音视频数据,将所述音视频数据按照预设的顺序分成多个数据包,并将所述多个数据包发送至接收端;
基于接收端发送的所述多个数据包的丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,以使所述接收端基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包。
2.根据权利要求1所述的方法,其特征在于,所述第一算法对应的公式为:
其中,y表示重传时间,rtt表示丢包率,ls表示往返延迟。
3.根据权利要求1所述的方法,其特征在于,基于所述丢包率和所述往返延迟选择网络丢包恢复策略,包括:
当所述丢包率小于第一阈值,且所述往返延迟小于第二阈值,或,所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟小于第四阈值时,选择的网络丢包恢复策略为重传策略;所述第二阈值大于所述第四阈值;
当所述丢包率大于或等于第一阈值,且所述丢包率小于第三阈值,所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC和重传混合策略;
当所述丢包率大于或等于第三阈值,且所述往返延迟大于或等于第四阈值时,选择的网络丢包恢复策略为FEC策略。
4.根据权利要求1所述的方法,其特征在于,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为重传策略时,确定重传的目标数据包为多个数据包,并基于所述重传时间将所述多个数据包重传至接收端。
5.根据权利要求1所述的方法,其特征在于,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为FEC和重传混合策略时,基于所述丢包率,利用里德-所罗门RS算法对所述多个数据包进行编码,得到FEC冗余包;
基于所述多个数据包和所述FEC冗余包的数量,确定重传的目标数据包,并基于所述往返延迟,利用第二算法计算重传次数,将所述目标数据包基于所述重传次数重传至接收端;所述目标数据包为FEC冗余包与多个数据包,或多个数据包;
其中,所述第二算法对应的公式为:x表示重传次数,ls表示往返延迟。
6.根据权利要求1所述的方法,其特征在于,基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,包括:
当选择的网络丢包恢复策略为FEC策略时,获取所述音视频数据的应用需求,并基于所述应用需求确定目标分辨率和目标帧率;
分别将音视频传输的分辨率和帧率调整至目标分辨率和目标帧率,并基于所述目标分辨率和所述目标帧率将所述目标数据包重传至接收端;所述目标数据包为FEC冗余包与多个数据包;所述FEC冗余包基于FEC算法计算得到。
7.根据权利要求1所述的方法,其特征在于,将所述多个数据包发送至接收端,包括:
针对每一数据包,进行压缩和编码处理,得到第一数据包;
基于异步传输方式将所述第一数据包发送至接收端。
8.根据权利要求1所述的方法,其特征在于,将所述多个数据包发送至接收端,包括:
针对每一数据包,创建多个副本,并将所述多个副本发送至接收端的多个接收端口;
当确定目标接收端口接收任意一个副本后,将所述多个数据包发送至目标接收端口。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
基于重叠编码组合的方式对获取的音视频数据进行处理,得到冗余数据,将所述音视频数据和所述冗余数据传输至接收端。
10.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
基于快速起始算法调整获取的音视频数据的传输参数;所述传输参数包括帧率和码率;
基于所述传输参数将所述音视频数据传输至接收端。
11.一种音视频传输丢包恢复方法,其特征在于,应用于接收端,所述方法包括:
接收发送端发送的多个数据包,并将所述多个数据包按照预设的顺序进行排列,以确定所述多个数据包的丢包数据;
将所述丢包数据发送至发送端后,接收发送端重传的目标数据包;
基于所述目标数据包确定接收端选择的网络丢包恢复策略,并基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
其中,接收端选择网络丢包恢复策略的过程包括:基于所述丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
利用经验模态分解算法,对接收的发送端发送的多个数据包进行分解、滤波和重构处理,得到恢复后的数据包。
13.根据权利要求11所述的方法,其特征在于,所述方法还包括:
基于反向纠错算法,对接收的发送端发送的多个数据包进行数据恢复,得到恢复后的数据包。
14.一种音视频传输丢包恢复装置,其特征在于,应用于发送端,所述装置包括:
获取模块,用于获取音视频数据,将所述音视频数据按照预设的顺序分成多个数据包,并将所述多个数据包发送至接收端;
计算模块,用于基于接收端发送的所述多个数据包的丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
选择模块,用于当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
确定模块,用于基于选择的网络丢包恢复策略,确定重传的目标数据包,并将所述目标数据包重传至接收端,以使所述接收端基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包。
15.一种音视频传输丢包恢复装置,其特征在于,应用于接收端,所述装置包括:
接收模块,用于接收发送端发送的多个数据包,并将所述多个数据包按照预设的顺序进行排列,以确定所述多个数据包的丢包数据;
发送模块,用于将所述丢包数据发送至发送端后,接收发送端重传的目标数据包;
恢复模块,用于基于所述目标数据包确定接收端选择的网络丢包恢复策略,并基于选择的网络丢包恢复策略,对所述目标数据包进行解包,得到恢复后的数据包;所述网络丢包恢复策略包括:重传策略、向前纠错FEC和重传混合策略以及FEC策略;所述重传策略为仅重传数据包的策略,所述FEC和重传混合策略为基于数据包和FEC冗余包的数量,重传FEC冗余包与数据包,或仅重传数据包的策略;所述FEC策略为调整音视频传输的分辨率和帧率,且重传FEC冗余包与数据包的策略;
其中,接收端选择网络丢包恢复策略的过程包括:基于所述丢包数据,利用预定义算法计算当前网络的丢包率和往返延迟,并基于所述丢包率和所述往返延迟,利用第一算法计算所述多个数据包的重传时间;
当所述重传时间不满足预设条件时,基于所述丢包率和所述往返延迟选择网络丢包恢复策略。
16.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至13中任一项所述的方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311667922.3A CN117675118A (zh) | 2023-12-06 | 2023-12-06 | 音视频传输丢包恢复方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311667922.3A CN117675118A (zh) | 2023-12-06 | 2023-12-06 | 音视频传输丢包恢复方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117675118A true CN117675118A (zh) | 2024-03-08 |
Family
ID=90085983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311667922.3A Pending CN117675118A (zh) | 2023-12-06 | 2023-12-06 | 音视频传输丢包恢复方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117675118A (zh) |
-
2023
- 2023-12-06 CN CN202311667922.3A patent/CN117675118A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11489621B2 (en) | Forward error correction for streaming data | |
CN101061659B (zh) | 自适应前向纠错的方法和设备 | |
US9225357B2 (en) | Data packet transmission/reception apparatus and method | |
US7957307B2 (en) | Reducing effects of packet loss in video transmissions | |
US9490850B1 (en) | Method and apparatus for decoding packetized data | |
US8365034B2 (en) | Forward error correction (FEC) encoding and decoding method of variable length packet based on three-dimensional storage apparatus | |
US20110085602A1 (en) | Video Communication System, Device and Method Based on Feedback Reference Frames | |
US10320520B2 (en) | Communication device, system and method | |
KR101983032B1 (ko) | 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법 | |
US10015486B2 (en) | Enhanced video decoding with application layer forward error correction | |
CN105681342A (zh) | 一种基于h264的多路视频会议系统的抗误码方法及系统 | |
CN111181700A (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN111385055B (zh) | 一种数据传输方法和装置 | |
CN109587488B (zh) | 一种基于率失真优化和丢帧预测的长参考帧的选取方法 | |
CN112804028B (zh) | 一种数据包的传输方法、设备及存储介质 | |
KR101953580B1 (ko) | 영상회의 시스템에서 데이터 송수신 장치 및 방법 | |
CN117675118A (zh) | 音视频传输丢包恢复方法、装置、设备及存储介质 | |
CN116318545A (zh) | 视频数据传输方法、装置、设备及存储介质 | |
WO2021164405A1 (zh) | 数据编解码方法、相关设备及系统 | |
CN112055165B (zh) | 视频通信方法、装置、系统、服务器、客户端及存储介质 | |
CN115550459A (zh) | 语音数据的发送和接收方法以及相关设备 | |
CN114900716B (zh) | 云视频数据的传输方法、云平台、云终端及介质 | |
CN115086285B (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
US20230224486A1 (en) | Method and system for live video streaming with integrated encoding and transmission semantics | |
Moid et al. | Heuristics for jointly optimizing FEC and ARQ for video streaming over IEEE802. 11 WLAN |
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 |