CN113192519B - 音频编码方法和装置以及音频解码方法和装置 - Google Patents
音频编码方法和装置以及音频解码方法和装置 Download PDFInfo
- Publication number
- CN113192519B CN113192519B CN202110471563.9A CN202110471563A CN113192519B CN 113192519 B CN113192519 B CN 113192519B CN 202110471563 A CN202110471563 A CN 202110471563A CN 113192519 B CN113192519 B CN 113192519B
- Authority
- CN
- China
- Prior art keywords
- audio
- packet
- packets
- redundant
- frame
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000004044 response Effects 0.000 claims abstract description 24
- 238000004891 communication Methods 0.000 claims description 13
- 238000012937 correction Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 12
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000011084 recovery Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种音频编码方法和装置以及音频解码方法和装置,所述音频方法包括:确定由音频接收设备统计的用于传输音频包的网络的丢包率;响应于接收的丢包率低于第一阈值,将音频包编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复在该音频包之前被编码的音频包中的音频帧的信息;响应于接收的丢包率大于或等于第一阈值,将音频包编码为包括1个音频帧和多个冗余帧的音频包。
Description
技术领域
本公开涉及视频技术领域,尤其涉及一种音频编码方法和装置、音频解码方法和装置、以及相应的电子设备及计算机可读存储介质。
背景技术
音视频会议是目前应用十分广阔的一项技术。尤其最近一年受疫情影响,很多公司启动了居家办公,音视频会议就成为了公司员工之间必不可少的沟通工具。音视频会议系统主要包含视频、音频以及共享桌面等功能,而音频是其中至关重要必不可少的部分。
音频相关的整个处理流程主要包括音频采集播放、音频预处理、音频编解码、音频网络传输等功能。而在音频网络过程中,网络丢包难以避免。当发生网络丢包时,接收端听到的声音音质会很差,甚至无法听清说话人的声音。所以在音频编码传输过程中的丢包恢复是一个必要的技术。相关技术中通常在音频包中添加用于恢复在先发送的音频包中的音频帧的冗余帧,这样在发生丢包时可通过冗余帧来恢复音频帧。然而当丢包率发生变化时,使用音频包中的冗余帧可能不能有效地恢复音频帧。
发明内容
本公开提供一种视音频编码方法和装置以及音频解码方法和装置,以至少解决相关技术中的丢包恢复的问题,也可不解决任何上述问题。
根据本公开的第一方面,提供了一种音频编码方法,包括:确定由音频接收设备统计的用于传输音频包的网络的丢包率;响应于接收的丢包率低于第一阈值,将音频包编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复在该音频包之前被编码的音频包中的音频帧的信息;响应于接收的丢包率大于或等于第一阈值,将音频包编码为包括1个音频帧和多个冗余帧的音频包。
根据本公开的第一方面,所述方法还包括:以第一码率传输音频包的1个音频帧并使用第二码率传输音频包的每个冗余帧,其中,第一码率大于第二码率,其中,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。
根据本公开的第一方面,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
根据本公开的第一方面,所述方法还包括:响应于接收的丢包率大于或等于第二阈值,将被编码为包括至少一个冗余帧的音频包划分为每个组包括m个音频包的多个组,并针对每个组的m个音频包生成相应的n个冗余包,其中,第二阈值大于第一阈值,每个组的所述相应的n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。
根据本公开的第一方面,所述针对每个组的m个音频包生成相应的n个冗余包包括:通过对每个组中的m个音频包进行RS编码来生成所述相应的n个冗余包。
根据本公开的第一方面,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
根据本公开的第二方面,提供了一种音频解码方法,包括:统计接收的音频包的丢包率;将统计的丢包率提供给产生音频包的设备并接收作为响应的数据包;使用数据包中与丢失的音频包相应的冗余包来执行前向纠错以恢复丢失的音频包,并且/或者使用数据包中的音频包的冗余帧来恢复顺序在该音频包之前的音频包中的音频帧,其中,当统计的丢包率小于或等于第一阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复顺序在所述音频包之前的音频包中的音频帧的信息,当统计的丢包率大于第一阈值并小于或等于第二阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和多个冗余帧,当统计的丢包率大于第二阈值时,数据包被划分为多个组,每个组包括m个音频包和n个冗余包,所述m个音频包中的每个音频包包括音频帧和至少一个冗余帧,所述n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。
根据本公开的第二方面,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的,所述n个冗余包是通过对每个组中的m个音频包进行RS编码来生成的。
根据本公开的第二方面,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
根据本公开的第二方面,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
根据本公开的第三方面,提供了一种音频编码装置,包括:丢包率确定单元,被配置为确定由音频接收设备统计的用于传输音频包的网络的丢包率;编码单元,被配置为响应于接收的丢包率低于阈值,将音频包编码为包括1个音频帧和1个冗余帧的音频包,响应于接收的丢包率大于或等于阈值,将音频包编码为包括1个音频帧和多个冗余帧的音频包,其中,所述冗余帧包含用于恢复在该音频包之前被编码的音频包中的音频帧的信息。
根据本公开的第三方面,所述装置还包括:传输单元,被配置为以第一码率传输音频包的1个音频帧并使用第二码率传输音频包的每个冗余帧,其中,第一码率大于第二码率,其中,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。
根据本公开的第三方面,所述阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的,其中,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。
根据本公开的第三方面,编码单元还被配置为:响应于接收的丢包率大于或等于第二阈值,将被编码为包括至少一个冗余帧的音频包划分为每个组包括m个音频包的多个组,并针对每个组的m个音频包生成相应的n个冗余包,其中,第二阈值大于第一阈值,每个组的所述相应的n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。
根据本公开的第三方面,编码单元被配置为通过对每个组中的m个音频包进行RS编码来生成所述相应的n个冗余包。
根据本公开的第三方面,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
根据本公开的第四方面,提供了一种音频解码装置,包括:丢包率确定单元,被配置为统计接收的音频包的丢包率;通信单元,被配置为将统计的丢包率提供给产生音频包的设备并接收作为响应的数据包;纠错解码单元,被配置为使用数据包中与丢失的音频包相应的冗余包来执行前向纠错以恢复丢失的音频包,并且/或者使用数据包中的音频包的冗余帧来恢复顺序在该音频包之前的音频包中的音频帧,其中,当统计的丢包率小于或等于第一阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复顺序在所述音频包之前的音频包中的音频帧的信息,当统计的丢包率大于第一阈值并小于或等于第二阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和多个冗余帧,当统计的丢包率大于第二阈值时,数据包被划分为多个组,每个组包括m个音频包和n个冗余包,所述m个音频包中的每个音频包包括音频帧和至少一个冗余帧,所述n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。
根据本公开的第四方面,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的,所述n个冗余包是通过对每个组中的m个音频包进行RS编码来生成的。
根据本公开的第四方面,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
根据本公开的第四方面,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
根据本公开的第五方面,提供了一种电子设备,包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如上所述的音频编码方法和/或如上所述的音频解码方法。
根据本公开的第六方面,提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由至少一个处理器执行时,使得所述至少一个处理器能够执行如上所述的音频编码方法和/或如上所述的音频解码方法。
根据本公开的第七方面,所述计算机程序产品中的指令被至少一个处理器运行以执行如上所述的音频编码方法和/或如上所述的音频解码方法。
本公开的实施例提供的技术方案至少带来以下有益效果:能够根据网络的丢包率动态调整音频包的冗余度的方案,能够在丢包率较大的情况下更好地恢复音频包中的音频信息,保证音频接收端的音频质量。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是示出实施根据本公开的示例性实施例的音频编码方法和音频解码方法的系统环境的示图。
图2是示出根据本公开的示例性实施例的音频编码方法的流程图。
图3是示出根据本公开的示例性实施例的用于确定冗余帧的数量的音质-丢包率的曲线图。
图4是示出根据本公开的示例性实施例的冗余包的数量与网络丢包率和实际丢包率的关系的示意图。
图5是示出根据本公开的示例性实施例的音频编码方法所产生的音频包的示意图。
图6是示出根据本公开的示例性实施例的音频解码方法的流程图。
图7是示出根据本公开的示例性实施例的音频编码装置的框图。
图8是示出根据本公开的示例性实施例的音频解码装置的框图。
图9是示出根据本公开的示例性实施例的用于音频编码和/或音频解码的电子设备的示意图。
图10是示出根据本公开的另一示例性实施例的用于音频编码和/或音频解码的电子设备的示意图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括A和B之中的至少一个”即包括如下三种并列的情况:(1)包括A;(2)包括B;(3)包括A和B。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
在对本公开的实施例进行详细说明以前,先对本公开的实施例可能涉及到的一些术语或缩略语进行说明。
图1是示出实施根据本公开的示例性实施例的音频编码方法和音频解码方法的系统环境的示图。该环境例如可以由在音视频会议中由用户使用的终端设备100和服务器200以及连接终端设备和服务器的网络构成。
如图1所示,终端设备100可以是具有音视频处理功能的终端设备,例如,本公开实施例中的终端设备100可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、上网本、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备。在终端设备100上可运行各种音视频应用,诸如直播应用、社交应用、视频会议应用等。当终端设备100在运行这些应用时,可采集由用户生成的语音,并对采集的语音进行预处理之后编码生成包括音频包的音频流,然后通过网络与服务器200连接并进行通信,从而使用由服务器200将音频流提供给其他终端设备。如果产生音频流的终端设备(例如,100-1)检测到网络中存在的丢包率高于阈值,则该终端设备100-1可采用以下将要说明的根据本公开的示例性实施例的音频编码方法来产生音频包并将产生的音频包通过服务器发送到接收端设备,从而保证接收音频包的终端设备可在出现丢包的情况下使用音频包中用于恢复音频包的冗余帧或冗余包来恢复音频包。
下面将参照图2-图7来说明根据本公开的各种示例性实施例的音频编码方法。
图2是示出根据本公开的示例性实施例的音频编码方法的流程图。
如图2所示,在步骤S210,确定由音频接收设备统计的用于传输音频包的网络的丢包率。根据本公开的示例性实施例,可通过在音频包的接收端统计的丢包率来确定丢包率。例如,接收端可根据接收到的音频包的序号来统计丢包率,并将统计的丢包率信息发送给产生和发送音频包的装置(例如,音视频会议的主控设备)。例如,接收端可按照固定周期将统计的丢包率信息发送给音频包的发送端,即执行音频编码的设备。
接下来,响应于接收的丢包率低于第一阈值,在步骤S220将待发送的音频包编码为包括1个音频帧和1个冗余帧的音频包。响应于接收的丢包率大于或等于第一阈值,在步骤S230将音频包编码为包括1个音频帧和多个冗余帧的音频包,其中,所述冗余帧包含用于恢复在该音频包之前被发送的音频包中的音频帧的信息。
根据本公开的示例性实施例,所述多个冗余帧的数量可以为2。也就是说,根据本公开的示例性实施例的音频编码方法可在丢包率低于阈值的时候在编码的音频包携带1个冗余帧,而在丢包率高于阈值时在编码的音频包中携带2个冗余帧。
根据本公开的示例性实施例,所述方法还包括:在步骤S240以第一码率传输音频包的1个音频帧并使用第二码率传输音频包的每个冗余帧,其中,第一码率大于第二码率,并且所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。这里,音频帧的重要信息可指的是音频信号中对于人的听觉较为敏感的部分,即,会影响到听觉感知的部分的信息,例如,音频信号的突变部分的信息。例如,如果一段平稳的噪声中突然出现了一个敲击声,则该敲击声可被认为是重要信息。可使用编码器以较低码率来对音频帧的重要信息进行编码。应理解,以上只是用于产生冗余帧的一个示例方式,本领域的技术人员可采用其他任何能够用于恢复音频帧的编码或算法来生成冗余帧。
根据本公开的示例性实施例,用于确定在音频包中采用的冗余帧的数量的第一阈值可根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系而预先确定。这是因为,冗余帧信息会占用传输的码率,如果原始码率是48kbps,并且使用10kbps作为上一个音频包中的音频帧的冗余信息的话,那么该音频包的音频帧的可用码率就变成了38kbps,如果携带前2帧的冗余信息的话,那么音频帧的可用码率就变成了28kbps。所以为了使收益最大化,如上所述根据本公开的实施例根据网络的实际丢包率的情况来决定携带1个还是多个冗余帧。这样在接收端,在丢包率小的情况下,大部分情况使用的是音频包的音频帧部分,此时音频帧的码率为38kbps,此音质高于2个冗余帧对应的28kbps。当丢包率增加后,由于携带2个冗余帧的方案的丢包恢复的能力优于携带1个冗余包的方案,故此时携带2帧方案的音质的下降幅度要比携带1个冗余帧的方案慢。
图3是示出根据本公开的示例性实施例的用于确定冗余帧的数量的音质-丢包率的曲线图。如图3所示,可以看出,音质(与传输音频帧的码率成正比)和丢包率成反比,其中,在音频包中采用1个冗余帧的方案的音质-丢包率曲线和在音频包中采用2个冗余帧的方案的音质-丢包率曲线具有如图所示的丢包率临界点,该临界点即为丢包率的第一阈值。也就是说,如果丢包率小于第一阈值,则采用1个冗余帧的方案的音频包在接收端得到的音质高于采用2个冗余帧的方案的音质,而如果丢包率大于第一阈值,则采用1个冗余帧的方案的音频包在接收端得到的音质会低于采用2个冗余帧的方案的音质。这里,可通过在接收端预先使用诸如POLQA的检测设备来给在不同丢包率下和不同冗余帧方案的音频包数据所产生的音质进行测量(打分),从而可以得到在如图3所示的不同冗余帧的条件下的音质-丢包率曲线,进而可确定丢包率的阈值。
通过根据丢包率来确定在音频包中的冗余帧的数量,可以在丢包率变高的时候增加传输的音频信息的冗余度,从而保证在接收端接收到的音频的质量,并且在丢包率低的时候使音频包中的音频帧的码率最大化以保证音频的音质。
当丢包率较大时,可能使用如上所述的在音频包内增加冗余帧的方案(也可称为带内方案)也不能很好地恢复丢包。根据本公开的示例性实施例,可采用冗余包的方案(带外方案)来进行更加有效的恢复。下面将结合图4来进行说明。
根据本公开的示例性实施例,返回参照图2,响应于接收的丢包率大于或等于第二阈值,在步骤S250将被编码为包括至少一个冗余帧的音频包划分为每个组包括m个音频包的多个组,并针对每个组的m个音频包生成相应的n个冗余包,其中,第二阈值大于第一阈值,每个组的所述相应的n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。也就是说,随着丢包率的增加,恢复音频包的音质所需的信息增加,此时,采用音频包之外的冗余包来恢复音频包。
根据本公开的示例性实施例,所述针对每个组的m个音频包生成相应的n个冗余包可包括:通过对每个组中的m个音频包进行RS编码来生成所述相应的n个冗余包。
根据本公开的示例性实施例,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。也就是说,n的数量需要保证只要接收到m+n个包中的任意m个数据包即可恢复出原有的m个音频包。通常m是个固定值,并且不会特别大,因为如果m较大的话,进行丢包恢复时可能会引入较大的延迟。对于音频而言,m=4是一个比较常用的选择。接下来就是n的选择,由于n越大抗丢包恢复的能力也就越大,所以n必然是随着丢包率的增加而增加的。根据本公开的示例性实施例可根据不同的网络丢包率来选择不同的n,使得在不同丢包率下可以得到近乎相等的音质,也就是说,通过调整n,使得在接收端经过丢包恢复后的得到的实际丢包率相同。
如果网络的丢包率为p,那么实际丢包率pr可根据以下等式计算:
如果取m=4,则:
可以通过该等式得到在某一个n的数值下的pr和p的关系。
图4示出的是示出根据本公开的示例性实施例的冗余包的数量与网络丢包率和实际丢包率的关系的示意图。
如图4所示,于是可以得到不同丢包率下对应的n。在图4中,每一条曲线是对应某一个n的取值的实际丢包率和网络丢包率的关系,这里,令pr<=0.004,即认为千分之四的实际丢包率下可以得到不错的音质,则与横轴平行的直线y=40(单位为万分之)与各个曲线相交于x1,x2,…,xn。那么,对于某个网络丢包率p,如果p∈[xi,xi+1],那么应当使用的冗余包个数为n=i+1。
通过使用如上所述的冗余包的方案,由于冗余包可以携带更多的音频信息,因此可以在丢包率较大的情况下更好地恢复丢失的音频包。
图5是示出根据本公开的示例性实施例的产生音频包的过程的示意图。
如图5所示,对于当前待编码的音频包,即序号为N的音频包可被编码为包括序号N的一个音频帧、用于恢复序号为N-1的音频包(即,在序号N的音频包之前被编码的音频包)的一个冗余帧N-1以及用于恢复序号为N-2的音频包的一个冗余帧。同理,如图5所示,序号N-1的音频包可被编码为包括N-1的音频帧、用于恢复序号N-2的音频包的一个冗余帧和用于恢复序号N-3的音频包的一个冗余帧,以此类推。也就是说,如果丢包率较大,则需要采用更多的冗余信息(即,采用多个冗余帧)来恢复丢失的音频帧。在生成了序号为N、N-1、N-2的音频包之后,通过预定方式生成与其相应的冗余包1、冗余包2…、冗余包n。这样,在接收端,可通过相反的操作来恢复音频包和音频帧。如图5所示,如果在接收端出现了丢包,可首先利用冗余包1、冗余包2…、冗余包n恢复序号为N、N-1、N-2的音频包,然后音频包中的冗余帧来前向恢复先前的音频包中的音频帧。
通过以上的音频编码方案,可以针对不同的丢包率的情况采取不同的冗余编码策略,从而可以在保证音质的前提下灵活地确定编码所需要的资源和时间,达到最好的编码效率和质量。
下面将参照图6来说明根据本公开的示例性实施例的音频解码方法。应理解,根据本公开的示例性实施例的音频解码方法在接收音频的设备(例如,在接收音视频会议的终端设备)上实现。
如图6所示,首先,在步骤S610,统计接收的音频包的丢包率。
这里,例如可根据接收的音频包的序号来确定是否存在丢包。例如,如果存储在缓存器中的音频包的序号为N、N-1、N-2、N-4、N-6…,则可确定存在丢包并可根据接收到的音频包的序号来统计丢包率。
接下来,在步骤S620,将统计的丢包率提供给产生音频包的设备并接收作为响应的数据包。例如,音频接收设备可通过预定的通信协议将统计的丢包率信息发送给产生音频包的设备,从而使音频包产生设备能够了解当前的丢包率情况并相应地确定其抗丢包编码策略,然后在后续的音频包编码过程中使用确定的编码策略来对音频包进行编码作为对于接收到的丢包率信息的响应。
然后,在步骤S630,使用数据包中与丢失的音频包相应的冗余包来执行前向纠错以恢复丢失的音频包,并且/或者使用数据包中的音频包的冗余帧来恢复顺序在该音频包之前的音频包中的音频帧,其中,当统计的丢包率小于或等于第一阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复顺序在所述音频包之前的音频包中的音频帧的信息;当统计的丢包率大于第一阈值并小于或等于第二阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和多个冗余帧;当统计的丢包率大于第二阈值时,数据包被划分为多个组,每个组包括m个音频包和n个冗余包,所述m个音频包中的每个音频包包括音频帧和至少一个冗余帧,所述n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。
根据本公开的示例性实施例,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的,所述n个冗余包是通过对每个组中的m个音频包进行RS编码来生成的。
根据本公开的示例性实施例,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
根据本公开的示例性实施例,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
如上所述,由于可以根据丢包率来调整在音频包中包含的冗余信息的量,所以可以在网络的情况发生变化时保持音频质量。
图7是示出根据本公开的示例性实施例的音频编码装置的框图。应理解,根据本公开的示例性实施例的音频编码装置可以以硬件、软件以及软件和硬件的组合的形式实现在具有音频编码能力的设备中。
如图7所示,音频编码装置700可包括丢包率确定单元710、编码单元720和传输单元730。
丢包率确定单元710被配置为确定由音频接收设备统计的用于传输音频包的网络的丢包率。
编码单元720被配置为:响应于接收的丢包率低于第一阈值,将音频包编码为包括1个音频帧和1个冗余帧的音频包,响应于接收的丢包率大于或等于第一阈值,将音频包编码为包括1个音频帧和多个冗余帧的音频包,其中,所述冗余帧包含用于恢复在该音频包之前被编码的音频包中的音频帧的信息。
传输单元730被配置为以第一码率传输音频包的1个音频帧并使用第二码率传输音频包的每个冗余帧,其中,第一码率大于第二码率,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。
根据本公开的示例性实施例,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。以上已经参照图2对产生冗余帧的过程进行了详细说明,在此不再重复描述。
根据本公开的示例性实施例,编码单元720还被配置为:响应于接收的丢包率大于或等于第二阈值,将被编码为包括至少一个冗余帧的音频包划分为每个组包括m个音频包的多个组,并针对每个组的m个音频包生成相应的n个冗余包,其中,第二阈值大于第一阈值,每个组的所述相应的n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。
根据本公开的示例性实施例,编码单元720被配置为通过对每个组中的m个音频包进行RS编码来生成所述相应的n个冗余包。
根据本公开的示例性实施例,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
以上已经参照图2-图4对确定n的数值的过程进行了详细说明,在此不再重复描述。
图8是示出根据本公开的示例性实施例的音频解码装置的框图。应理解,根据本公开的示例性实施例的音频解码装置可以以硬件、软件以及软件和硬件的组合的形式实现在具有音频解码能力的设备中。
如图8所示,音频编码装置800可包括丢包率确定单元810、通信单元820和纠错解码单元830。
丢包率确定单元810被配置为统计接收的音频包的丢包率。
通信单元820被配置为将统计的丢包率提供给产生音频包的设备并接收作为响应的数据包。
纠错解码单元830被配置为使用数据包中与丢失的音频包相应的冗余包来执行前向纠错以恢复丢失的音频包,并且/或者使用数据包中的音频包的冗余帧来恢复顺序在该音频包之前的音频包中的音频帧,
这里,当统计的丢包率小于或等于第一阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复顺序在所述音频包之前的音频包中的音频帧的信息;
当统计的丢包率大于第一阈值并小于或等于第二阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和多个冗余帧;
当统计的丢包率大于第二阈值时,数据包被划分为多个组,每个组包括m个音频包和n个冗余包,所述m个音频包中的每个音频包包括音频帧和至少一个冗余帧,所述n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数。
根据本公开的示例性实施例,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的,所述n个冗余包是通过对每个组中的m个音频包进行RS编码来生成的。
根据本公开的示例性实施例,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
根据本公开的示例性实施例,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
通过以上的音频编解码方法和装置,可以根据丢包率灵活地配置音频包的冗余信息的编码方案,从而可以应对不同的网络状况,保证接收端设备的丢包恢复能够实现预期的音质。
图9是示出根据本公开的示例性实施例的一种用于音频编解码的电子设备900的结构框图。该终端设备900例如可以是:智能手机、平板电脑、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。电子设备900还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端设备900包括有:处理器901和存储器902。
处理器901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器901可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器901可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器901还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器901所执行以实现本公开的如图2和/或图6所示的方法。
在一些实施例中,终端设备900还可选包括有:外围设备接口903和至少一个外围设备。处理器901、存储器902和外围设备接口903之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口903相连。具体地,外围设备包括:射频电路904、触摸显示屏905、摄像头906、音频电路907、定位组件908和电源909中的至少一种。
外围设备接口903可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器901和存储器902。在一些实施例中,处理器901、存储器902和外围设备接口903被集成在同一芯片或电路板上;在一些其他实施例中,处理器901、存储器902和外围设备接口903中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路904用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路904通过电磁信号与通信网络以及其他通信设备进行通信。射频电路904将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路904包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路904可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路904还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本公开对此不加以限定。
显示屏905用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏905是触摸显示屏时,显示屏905还具有采集在显示屏905的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器901进行处理。此时,显示屏905还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏905可以为一个,设置在终端设备900的前面板;在另一些实施例中,显示屏905可以为至少两个,分别设置在终端设备900的不同表面或呈折叠设计;在再一些实施例中,显示屏905可以是柔性显示屏,设置在终端设备900的弯曲表面上或折叠面上。甚至,显示屏905还可以设置成非矩形的不规则图形,也即异形屏。显示屏905可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件906用于采集图像或视频。可选地,摄像头组件906包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件906还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路907可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器901进行处理,或者输入至射频电路904以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端设备900的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器901或射频电路904的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路907还可以包括耳机插孔。
定位组件908用于定位终端设备900的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件908可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源909用于为终端设备900中的各个组件进行供电。电源909可以是交流电、直流电、一次性电池或可充电电池。当电源909包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端设备900还包括有一个或多个传感器910。该一个或多个传感器910包括但不限于:加速度传感器911、陀螺仪传感器912、压力传感器913、指纹传感器914、光学传感器915以及接近传感器916。
加速度传感器911可以检测以终端设备900建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器911可以用于检测重力加速度在三个坐标轴上的分量。处理器901可以根据加速度传感器911采集的重力加速度信号,控制触摸显示屏905以横向视图或纵向视图进行用户界面的显示。加速度传感器911还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器912可以检测终端设备900的机体方向及转动角度,陀螺仪传感器912可以与加速度传感器911协同采集用户对终端设备900的3D动作。处理器901根据陀螺仪传感器912采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器913可以设置在终端设备900的侧边框和/或触摸显示屏905的下层。当压力传感器913设置在终端设备900的侧边框时,可以检测用户对终端设备900的握持信号,由处理器901根据压力传感器913采集的握持信号进行左右手识别或快捷操作。当压力传感器913设置在触摸显示屏905的下层时,由处理器901根据用户对触摸显示屏905的压力操作,实现对UI上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器914用于采集用户的指纹,由处理器901根据指纹传感器914采集到的指纹识别用户的身份,或者,由指纹传感器914根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器901授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器914可以被设置终端设备900的正面、背面或侧面。当终端设备900上设置有物理按键或厂商Logo时,指纹传感器914可以与物理按键或厂商Logo集成在一起。
光学传感器915用于采集环境光强度。在一个实施例中,处理器901可以根据光学传感器915采集的环境光强度,控制触摸显示屏905的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏905的显示亮度;当环境光强度较低时,调低触摸显示屏905的显示亮度。在另一个实施例中,处理器901还可以根据光学传感器915采集的环境光强度,动态调整摄像头组件906的拍摄参数。
接近传感器916,也称距离传感器,通常设置在终端设备900的前面板。接近传感器916用于采集用户与终端设备900的正面之间的距离。在一个实施例中,当接近传感器916检测到用户与终端设备900的正面之间的距离逐渐变小时,由处理器901控制触摸显示屏905从亮屏状态切换为息屏状态;当接近传感器916检测到用户与终端设备900的正面之间的距离逐渐变大时,由处理器901控制触摸显示屏905从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图9中示出的结构并不构成对电子设备900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图10所示为另一种电子设备1000的结构框图。例如,电子设备1000可以被提供为一服务器。参照图4,电子设备1000包括一个或多个处理处理器1010以及存储器1020。存储器1020可以包括用于执行以上的音频编码和/或音频解码方法的一个或一个以上的程序。电子设备1000还可以包括一个电源组件1030被配置为执行电子设备1000的电源管理,一个有线或无线网络接口1040被配置为将电子设备1000连接到网络,和一个输入输出(I/O)接口1050。电子设备1000可以操作基于存储在存储器1020的操作系统,例如WindowsServerTM、Mac OS XTM、UnixTM、LinuxTM、FreeBSDTM或类似。
根据本公开的实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开的音频编码和/或音频解码方法。这里的计算机可读存储介质的示例包括:只读存储器(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 (16)
1.一种音频编码方法,其特征在于,包括:
确定由音频接收设备统计的用于传输音频包的网络的丢包率;
响应于接收的丢包率低于第一阈值,将音频包编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复在该音频包之前被编码的音频包中的音频帧的信息;
响应于接收的丢包率大于或等于第一阈值,将音频包编码为包括1个音频帧和多个冗余帧的音频包;
响应于接收的丢包率大于或等于第二阈值,将被编码为包括至少一个冗余帧的音频包划分为每个组包括m个音频包的多个组,并针对每个组的m个音频包生成相应的n个冗余包,其中,第二阈值大于第一阈值,每个组的所述相应的n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数,
其中,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
2.如权利要求1所述的方法,其特征在于,还包括:以第一码率传输音频包的1个音频帧并使用第二码率传输音频包的每个冗余帧,其中,第一码率大于第二码率,
其中,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。
3.如权利要求1所述的方法,其特征在于,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
4.如权利要求1所述的方法,其特征在于,所述针对每个组的m个音频包生成相应的n个冗余包包括:通过对每个组中的m个音频包进行RS编码来生成所述相应的n个冗余包。
5.一种音频解码方法,其特征在于,包括:
统计接收的音频包的丢包率;
将统计的丢包率提供给产生音频包的设备并接收作为响应的数据包;
使用数据包中与丢失的音频包相应的冗余包来执行前向纠错以恢复丢失的音频包,并且/或者使用数据包中的音频包的冗余帧来恢复顺序在该音频包之前的音频包中的音频帧,
其中,当统计的丢包率小于或等于第一阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复顺序在所述音频包之前的音频包中的音频帧的信息,
当统计的丢包率大于第一阈值并小于或等于第二阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和多个冗余帧,
当统计的丢包率大于第二阈值时,数据包被划分为多个组,每个组包括m个音频包和n个冗余包,所述m个音频包中的每个音频包包括音频帧和至少一个冗余帧,所述n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数,
其中,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
6.如权利要求5所述的方法,其特征在于,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的,所述n个冗余包是通过对每个组中的m个音频包进行RS编码来生成的。
7.如权利要求5所述的方法,其特征在于,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
8.一种音频编码装置,其特征在于,包括:
丢包率确定单元,被配置为确定由音频接收设备统计的用于传输音频包的网络的丢包率;
编码单元,被配置为响应于接收的丢包率低于第一阈值,将音频包编码为包括1个音频帧和1个冗余帧的音频包,响应于接收的丢包率大于或等于第一阈值,将音频包编码为包括1个音频帧和多个冗余帧的音频包,响应于接收的丢包率大于或等于第二阈值,将被编码为包括至少一个冗余帧的音频包划分为每个组包括m个音频包的多个组,并针对每个组的m个音频包生成相应的n个冗余包,其中,第二阈值大于第一阈值,每个组的所述相应的n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数,
其中,所述冗余帧包含用于恢复在该音频包之前被编码的音频包中的音频帧的信息,
其中,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
9.如权利要求8所述的装置,其特征在于,还包括:传输单元,被配置为以第一码率传输音频包的1个音频帧并使用第二码率传输音频包的每个冗余帧,其中,第一码率大于第二码率,
其中,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。
10.如权利要求8所述的装置,其特征在于,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的,
其中,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的。
11.如权利要求8所述的装置,其特征在于,编码单元被配置为通过对每个组中的m个音频包进行RS编码来生成所述相应的n个冗余包。
12.一种音频解码装置,其特征在于,包括:
丢包率确定单元,被配置为统计接收的音频包的丢包率;
通信单元,被配置为将统计的丢包率提供给产生音频包的设备并接收作为响应的数据包;
纠错解码单元,被配置为使用数据包中与丢失的音频包相应的冗余包来执行前向纠错以恢复丢失的音频包,并且/或者使用数据包中的音频包的冗余帧来恢复顺序在该音频包之前的音频包中的音频帧,
其中,当统计的丢包率小于或等于第一阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和1个冗余帧,所述冗余帧包含用于恢复顺序在所述音频包之前的音频包中的音频帧的信息,
当统计的丢包率大于第一阈值并小于或等于第二阈值时,数据包仅包括音频包,并且音频包被编码为包括1个音频帧和多个冗余帧,
当统计的丢包率大于第二阈值时,数据包被划分为多个组,每个组包括m个音频包和n个冗余包,所述m个音频包中的每个音频包包括音频帧和至少一个冗余帧,所述n个冗余包包括用于恢复该组中的m个音频包的信息,m、n为正整数,
其中,n的数量是根据m的值、网络的丢包率和目标丢包率确定的,m的值为预先设定的固定值。
13.如权利要求12所述的装置,其特征在于,所述冗余帧是通过对当前被编码的音频包之前被编码的音频包中的音频帧的重要信息执行编码而得到的,所述n个冗余包是通过对每个组中的m个音频包进行RS编码来生成的。
14.如权利要求12所述的装置,其特征在于,所述第一阈值是根据丢包率与包括1个冗余帧的音频包的音质和包括多个冗余帧的音频包的音质的关系确定的。
15.一种电子设备,其特征在于,包括:
至少一个处理器;
至少一个存储计算机可执行指令的存储器,
其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1到4中的任一权利要求所述的音频编码方法和/或如权利要求5-7中任一权利要求所述的音频解码方法。
16.一种计算机可读存储介质,当所述计算机可读存储介质中的指令由至少一个处理器执行时,使得所述至少一个处理器能够执行如权利要求1到4中的任一权利要求所述的音频编码方法和/或如权利要求5-7中任一权利要求所述的音频解码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110471563.9A CN113192519B (zh) | 2021-04-29 | 2021-04-29 | 音频编码方法和装置以及音频解码方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110471563.9A CN113192519B (zh) | 2021-04-29 | 2021-04-29 | 音频编码方法和装置以及音频解码方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113192519A CN113192519A (zh) | 2021-07-30 |
CN113192519B true CN113192519B (zh) | 2023-05-23 |
Family
ID=76980405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110471563.9A Active CN113192519B (zh) | 2021-04-29 | 2021-04-29 | 音频编码方法和装置以及音频解码方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113192519B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114301884B (zh) * | 2021-08-27 | 2023-12-05 | 腾讯科技(深圳)有限公司 | 音频数据的发送方法、接收方法、装置、终端及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102016104665A1 (de) * | 2016-03-14 | 2017-09-14 | Ask Industries Gmbh | Verfahren und Vorrichtung zur Aufbereitung eines verlustbehaftet komprimierten Audiosignals |
CN106101094A (zh) * | 2016-06-08 | 2016-11-09 | 联想(北京)有限公司 | 音频处理方法、发送端设备、接收端设备及音频处理系统 |
CN108011686B (zh) * | 2016-10-31 | 2020-07-14 | 腾讯科技(深圳)有限公司 | 信息编码帧丢失恢复方法和装置 |
CN109524015B (zh) * | 2017-09-18 | 2022-04-15 | 杭州海康威视数字技术股份有限公司 | 音频编码方法、解码方法、装置及音频编解码系统 |
CN111371957B (zh) * | 2020-05-26 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 一种冗余度控制方法、装置、电子设备和存储介质 |
-
2021
- 2021-04-29 CN CN202110471563.9A patent/CN113192519B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113192519A (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113347435B (zh) | 预测模式的解码、编码方法及装置 | |
CN110022489B (zh) | 视频播放方法、装置及存储介质 | |
CN108966008B (zh) | 直播视频回放方法及装置 | |
US11388403B2 (en) | Video encoding method and apparatus, storage medium, and device | |
CN110830819B (zh) | 编码、解码方法、编码端和解码端 | |
CN110149491B (zh) | 视频编码方法、视频解码方法、终端及存储介质 | |
CN110166776B (zh) | 视频编码方法、装置及存储介质 | |
CN112911337B (zh) | 用于配置终端设备的视频封面图片的方法和装置 | |
CN113192519B (zh) | 音频编码方法和装置以及音频解码方法和装置 | |
CN111586433B (zh) | 码率调整方法、装置、设备及存储介质 | |
CN110113669B (zh) | 获取视频数据的方法、装置、电子设备及存储介质 | |
CN113709524B (zh) | 选择音视频流的比特率的方法及其装置 | |
CN114332709A (zh) | 视频处理方法、装置、存储介质以及电子设备 | |
CN111064782B (zh) | 传输数据的方法、装置、电子设备及存储介质 | |
CN113891090A (zh) | 视频编码方法、装置、存储介质及电子设备 | |
CN116366885A (zh) | 多媒体资源的码率确定方法、装置、电子设备及存储介质 | |
CN114360555A (zh) | 音频处理方法、装置、电子设备及存储介质 | |
CN114362887A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |