CN118414662A - 自适应预测编码 - Google Patents

自适应预测编码 Download PDF

Info

Publication number
CN118414662A
CN118414662A CN202180105041.5A CN202180105041A CN118414662A CN 118414662 A CN118414662 A CN 118414662A CN 202180105041 A CN202180105041 A CN 202180105041A CN 118414662 A CN118414662 A CN 118414662A
Authority
CN
China
Prior art keywords
codec
bit rate
mode
encoder
predictive
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
Application number
CN202180105041.5A
Other languages
English (en)
Inventor
E·诺维尔
F·詹森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN118414662A publication Critical patent/CN118414662A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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 using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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 using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding

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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种在编码器(300)中执行的用于选择针对当前帧的编解码模式的方法包括获取(725)针对绝对编解码和预测编解码的比特率。该方法包括基于所获取的比特率来计算(730)比特率差。该方法包括对比特率差进行低通滤波(735)。该方法包括基于比特率差、经低通滤波的比特率差以及预测模式计数器来选择(740)编解码模式。

Description

自适应预测编码
技术领域
本公开一般涉及通信,并且更具体地涉及支持无线通信的通信方法及相关设备和节点。
背景技术
在通信网络中,对于给定的通信协议、其参数以及其中部署通信网络的物理环境,获得良好的性能和容量可能存在挑战。
例如,尽管电信网络的容量不断增加,但限制每个用户所需的资源使用仍然是重要的。在移动电信网络中,每次呼叫所需的资源使用较少意味着移动电信网络可以并行地服务更多数目的用户。降低资源使用还可以降低用户侧设备(诸如终端设备)和网络侧设备(诸如网络节点)的功耗。这意味着对于网络运营方的能源和成本节约,同时使终端设备能够拥有延长的电池寿命以及增加的通话时间。
一种用于减少移动电信网络中针对语音通信应用的所需资源使用的机制是利用语音中的自然停顿。更详细地,在大多数对话中,一次只有一方处于活动,因此一个通信方向上的语音停顿通常会占据一半以上的信号。一种利用这一特性来减少所需资源使用的方法是采用不连续传输(DTX)系统,其中主动信号编码在语音停顿期间是不连续的。
在语音停顿期间,通常会传输极低比特率编码的背景噪声,以便接收端的舒适噪声生成器(CNG)系统能够利用与原始噪声具有相似特性的背景噪声来填充停顿。因为背景噪声被保留,并且不会与语音一起打开和关闭,所以与语音停顿中的静默相比,CNG使声音更加自然。语音停顿中的完全静默通常被认为是令人恼火的,并且经常会导致呼叫已被断开的误会。
DTX系统可能进一步依赖声音活动检测器(VAD),它向发送设备指示使用主动信号编码或者低速率背景噪声编码。在这方面,发送设备可能被配置为通过使用(通用)声音活动检测器(GSAD或SAD)来区分其他源类型,该声音活动检测器不仅可以从背景噪声中区分语音,还可能被配置为检测音乐或其他被认为相关的信号类型。
通过支持立体声或多通道音频传输,通信服务可以被进一步增强。在这些情况下,DTX/CNG系统还可能考虑信号的空间特性,以提供听起来愉悦的舒适噪声。
生成舒适噪声的常见机制是传输有关语音停顿中背景噪声的能量和频谱形状的信息。这可以使用比常规的语音段编解码少得多的比特数目来完成。
在接收设备侧,通过创建伪随机信号,然后基于从发送设备接收到的信息使用滤波器对信号的频谱进行整形,舒适噪声被生成。信号生成和频谱整形可以在时域或频域中执行。
对于立体声操作,附加参数被传输到接收侧。在典型的立体声信号中,通道对表现出高度的相似性或相关性。当前最先进的立体声编解码方案通过采用参数编解码来利用这种相关性,其中单个通道以高质量来编码并补充有允许重建完整立体声像的参数描述。将通道对减少为单个通道的过程通常被称为下混合,并且所得到的通道被称为下混合通道。下混合过程通常在混合通道之前尝试通过对齐通道间时间差(ITD)和通道间相位差(IPD)来维持能量。为了保持输入信号的能量平衡,通道间等级差(ILD)进一步被测量。然后,ITD、IPD和ILD被编码,并且可以在解码器处重构立体声通道对时在反向上混合过程中被使用。
大多数音频编解码系统按段(通常称为帧)来处理输入音频信号。对于稳定的音频场景,相邻帧之间的立体声参数将表现出高度的相似性。为了利用这种相似性,预测编解码方案通常被应用。在这种方案中,当前帧参数的预测是基于过去解码的参数而得出的,并且与真实参数的差异是被编码并在发送器和接收器之间被传输的内容。一种简单但有效的预测是使用最后解码的参数作为预测,在这种情况下,预测编解码方案也可以被称为差分编码方案。
发明内容
一般来说,预测编解码方案的一个问题是它们对误差敏感。如果预测序列的一个或多个元素丢失,则解码器将出现预测误差,该预测误差可能在误差发生后持续很长时间。这个问题被称为误差传播,是全部预测编解码方案的已知问题。一种补救措施是强制以固定的时间间隔进行非预测编解码,这将终止误差传播。然而,这将具有以下缺点:非预测编码可能导致参数的编码效率较低,从而增加编码器的总比特率和/或允许针对其他参数的编码的比特更少。
本公开及其实施例的某些方面可以为这些或其他挑战提供解决方案。在编码器中执行的用于选择针对当前帧的编解码模式的方法包括获取针对绝对编解码和预测编解码的比特率,而不是强制针对特定参数以固定的时间间隔进行非预测编解码。该方法包括基于所获取的比特率来计算比特率差。该方法包括对比特率差进行低通滤波。该方法包括基于比特率差、经低通滤波的比特率差以及预测模式计数器来选择编解码模式。
各种实施例考虑另一个参数的先前编码的特征使仅当第二参数的编码可能需要更少的比特时针对第一参数的强制非预测编解码才被调用,从而增加总比特消耗低于固定级别的可能性。
一种编码器适于执行操作,该操作包括获取针对绝对编解码和预测编解码的比特率。该操作包括基于所获取的比特率来计算比特率差。该操作包括对比特率差进行低通滤波。该操作包括基于比特率差、经低通滤波的比特率差以及预测模式计数器来选择编解码模式。
一种编码器(300),包括:处理电路(401);以及与处理电路耦合的存储器(403),其中存储器包括指令,指令在由处理电路执行时使编码器(300)执行操作,操作包括获取针对绝对编解码和预测编解码的比特率。该操作包括基于所获取的比特率来计算比特率差。该操作包括对比特率差进行低通滤波。该操作包括基于比特率差、经低通滤波的比特率差以及预测模式计数器来选择编解码模式。
提供了一种计算机程序,包括将由编码器(300)的处理电路(401)执行的程序代码,由此程序代码的执行使编码器(300)执行操作,该操作包括获取针对绝对编解码和预测编解码的比特率。该操作包括基于所获取的比特率来计算比特率差。该操作包括对比特率差进行低通滤波。该操作包括基于比特率差、经低通滤波的比特率差以及预测模式计数器来选择编解码模式。
提供了一种计算机程序产品,包括非暂态存储介质,非暂态存储介质包括将由编码器的处理电路(401)执行的程序代码,由此程序代码的执行使编码器执行操作,该操作包括获取针对绝对编解码和预测编解码的比特率。该操作包括基于所获取的比特率来计算比特率差。该操作包括对比特率差进行低通滤波。该操作包括基于比特率差、经低通滤波的比特率差以及预测模式计数器来选择编解码模式。
某些实施例可以提供以下(多个)技术优势中的一项或多项。各种实施例可以利用一个参数的预测编解码来减少误差传播问题,同时最大限度地减少对其他参数的编码的负面影响。
附图说明
所附附图示出了发明构思的某些非限制性实施例,被包括的附图提供对本公开的进一步理解并且被并入本申请中并构成本申请的一部分。在附图中:
图1是误差传播的图示;
图2是示出了根据本公开的一些实施例的立体声编码器和解码器的组件的框图;
图3是示出了根据本公开的一些实施例的编码器和解码器系统的示例环境的框图,编解码模式的选择可以在其中被执行;
图4是示出了根据本公开的一些实施例的立体声编码器的组件的框图;
图5是示出了根据本公开的一些实施例的立体声解码器的组件的框图;
图6是根据本公开一些实施例的虚拟化环境的框图;
图7是示出了根据本公开的一些实施例的编码器的操作的流程图;
图8是示出了根据本公开的一些实施例的执行图8中示出的操作的图4的编码器的另外的组件的框图;
图9-图10是示出了根据本公开的一些实施例的编码器的操作的流程图;以及
图11是根据本公开的一些实施例的决策阈值的图示。
具体实施方式
现在将参考所附附图更全面地描述本文设想的一些实施例。通过示例的方式提供实施例以向本领域技术人员传达主题的范围,其中显示了发明构思的实施例的示例。然而,发明构思可以以许多不同的形式来体现,并且不应被解释为限于本文中阐述的实施例。相反,提供这些实施例使本公开将是全面且完整的,并且将本发明构思的范围充分地传达给本领域技术人员。还应该注意的是,这些实施例并不相互排斥。来自一个实施例的组件可以被默认地假定在另一个实施例中存在/使用。
如前所述,预测编解码方案的一个问题是误差传播。图1图示了误差传播的示意图。绝对编解码帧在连续的预测编解码帧的序列之前丢失,这可以被称为预测编解码条纹。在帧丢失(或损坏)时,坏帧指示符会发出信号。由于存储器因帧丢失而损坏,因此误差将在整个预测编解码条纹(由“P”表示)期间持续,并且仅在新的绝对编解码帧(由“A”表示)被接收到时终止。对合成信号的影响可能是错误地感知到的源的位置,该错误感知持续整个预测编解码条纹。
这里描述的各种实施例不是针对特定参数以固定的时间间隔强制非预测编解码,而是考虑以固定的时间间隔强制非预测编解码的估计比特消耗,并尝试通过以下方式抓住较低比特率消耗的机会:获取针对非预测(即绝对)编解码和预测编解码的比特率;基于所获取的比特率来计算比特率差;对比特率差进行低通滤波;以及基于比特率差、经低通滤波的比特率差以及预测模式计数器来选择编解码模式。
根据一些实施例,另一个参数的先前编码的特征使仅当第二参数的编码可能需要更少的比特时针对第一参数的强制非预测编解码才被调用,从而增加总比特消耗低于固定级别的可能性。
根据各种实施例中的一些实施例,编码和解码包括对第一参数进行编码和解码,其中第一参数基于帧间和帧内预测被编码,并且这些预测使用权重因子α来组合。
各种实施例利用一个参数的预测编解码来减少误差传播问题,同时最大限度地减少对其他参数编码的负面影响。
在下面的描述中,各个实施例在如图2所示的立体声编码器和解码器系统的立体声编码器中运行。立体声编码器210以被称为帧的段来处理输入的左通道和右通道。立体声分析和下混合框212进行参数分析并产生下混合。对于给定的帧m,输入通道可以被写为:
其中n=0,1,2,…,N-1表示帧m中的样本编号,N是分析帧的长度。在各种实施例中,分析帧在编码器中通过重叠来提取,使解码器可以使用重叠相加策略来重建立体声信号。输入通道使用合适的加窗函数w(n)进行加窗,并变换到离散傅立叶变换(DFT)域,可以被写为:
注意,这里可以使用其他频域表示,诸如正交镜像滤波器(QMF)滤波器组、混合QMF滤波器组或奇数DFT(ODFT)表示,它由改进的离散余弦变换(MDCT)和改进的离散正弦变换(MDST)变换组件组成。
对于参数分析,频谱被划分为频带b,其中每个频带对应于一系列频率系数
k=kstart(b)…kend(b),b=0,1,2,…Nbands-1
其中Nbands表示波段总数目。波段限制通常被设置为反映人类听觉感知的分辨率,这表明针对低频的频带较窄,针对高频的频带较宽。注意,不同的频带分辨率可以被用于不同的参数。
然后在参数分析模块中对信号进行分析,以提取ITD、IPD和ILD参数。值得注意的是,ILD对声音的感知位置有重大影响。因此,高精度地重建ILD参数来保持稳定和正确的位置至关重要。
另外,通道相干性可以被分析,并且ICC参数可以被导出。针对帧m的立体声参数集可以被表示为P(m),其包含参数表示中所使用的ITD、IPD、ILD和ICC参数的完整集。参数由参数编码器218编码并被添加到比特流中,以便被存储或传送给解码器。
在产生下混合通道之前,针对ITD和IPD进行补偿是有益的,以减少抵消并最大化下混合的能量。ITD补偿既可以在频率变换之前在时域中实现,也可以在频域中实现,但其本质上是对一个或两个通道执行时移以消除ITD。相位对齐可以以不同的方式实现,但目的是对齐相位从而最大限度地减少抵消。这确保了下混合中的最大能量。ITD和IPD调整可以在频带中或在全频谱上进行,并且应该优选地使用量化的ITD和IPD参数来进行,以确保修改可以在解码器阶段中被逆转。
下面描述的实施例独立于IPD和ITD参数分析和补偿的实现。换句话说,实施例不依赖于如何分析或补偿IPD和ITP。在这样的实施例中,ITD和IPD调整通道可以利用撇号(′)表示:
然后,ITD和IPD调整的输入通道可以由参数分析和下混合框212下混合以产生中/侧表示,也被称为下混合/侧表示。一种执行下混合的方法是使用信号的和与差:
下混合信号XM(m,k)由下混合编码器214编码以被存储或传送给解码器。该编码可以在频域中完成,但也可以在时域中完成。在这种情况下,需要DFT合成阶段来生成下混合信号的时域版本,然后该时域版本转而被馈送给下混合编码器。然而,到时域的变换可能会引入与立体声参数的延迟不对齐,这需要特殊处理。这可以通过引入附加的延迟或通过对参数进行插值来解决,以确保下混合和立体声参数的解码器合成是对齐的。
侧信号XS(m,k)的重建可以通过局部参数合成根据下混合和所获取的立体声参数来生成。侧信号预测可以基于下混合信号来导出:
其中p(·)是预测函数。预测残差可以根据下式形成:
然后由残差编码器216进行编码。下混合、立体声参数和潜在的残余信号的编码表示被传输或存储以便由解码器220重建。下混合解码器224重构解码的下混合信号,重构的参数由参数解码器228获取,并且潜在地重构的残差信号由残差解码器226生成。重构的下混合信号、重构的参数和残差信号被输入到立体声合成器222以产生重构的立体声信号。
图3示出了可被用于对本文所描述的对多通道比特流进行编码和解码的编码器300和解码器302的示例操作环境。编码器300从网络304和/或从存储器306和/或从录音机308接收音频,并将音频编码成如下所述的比特流,并经由网络310将经编码的音频发送给解码器302。存储设备306可以是多通道音频信号的存储库的一部分,诸如存储或流音频服务的存储库、单独的存储组件、移动设备的组件等。解码器302可以是具有媒体播放器314的设备312的一部分。设备312可以是移动设备、机顶设备、台式计算机等。在其他实施例中,解码器300可以被体现在独立服务器、云实现的服务器、分布式服务器的硬件和/或软件中或者体现为服务器群中的处理资源。例如,解码器可以是云实现的电话会议应用的一部分。解码器300接收经由网络的传输层发送的经编码的比特流。如本文所述,在操作期间,解码器300接收并处理比特流的帧。
图4是示出根据发明构思的一些实施例的被配置为对音频帧进行编码的编码器300的元件的框图。如图所示,编码器300可以包括被配置为提供与其他设备/实体/功能/等的通信的网络接口电路405(也被称为网络接口)。编码器300还可以包括耦合到网络接口电路405的处理器电路401(也被称为处理器)以及耦合到处理器电路的存储器电路403(也被称为存储器)。存储器电路403可以包括计算机可读程序代码,在由处理器电路401执行时,该计算机可读程序代码使处理器电路执行根据本文公开的实施例的操作。
根据其他实施例,处理器电路401可以被定义为包括存储器,使得不需要单独的存储器电路。如本文所讨论的,编码器300的操作可以由处理器401和/或网络接口405执行。例如,处理器401可以控制网络接口405向解码器302发送通信和/或通过网络接口405从一个或多个其他网络节点/实体/服务器(诸如其他编码器节点、存储服务器等)接收通信。此外,模块可以被存储在存储器403中,并且这些模块可以提供指令,使在模块的指令被处理器401执行时,处理器401执行相应的操作。
图5是示出根据发明构思的一些实施例的被配置为对音频帧进行编码的解码器302的元件的框图。如图所示,解码器302可以包括被配置为提供与其他设备/实体/功能等通信的网络接口电路505(也被称为网络接口)。解码器302还可以包括耦合到网络接口电路505的处理器电路501(也被称为处理器)以及耦合到处理器电路的存储器电路503(也被称为存储器)。存储器电路503可以包括计算机可读程序代码,在由处理器电路501执行时,该计算机可读程序代码使处理器电路执行根据本文公开的实施例的操作。
根据其他实施例,处理器电路501可以被定义为包括存储器,使得不需要单独的存储器电路。如本文所讨论的,解码器302的操作可以由处理器501和/或网络接口505执行。例如,处理器501可以控制网络接口505向解码器302发送通信和/或通过网络接口505从一个或多个其他网络节点/实体/服务器(诸如其他编码器节点、存储服务器等)接收通信。此外,模块可以被存储在存储器503中,并且这些模块可以提供指令,使在模块的指令被处理器501执行时,处理器501执行相应的操作。
图6是示出了虚拟化环境600的框图,其中由一些实施例实现的功能可以被虚拟化。在本上下文中,虚拟化意味着创建装置或设备的虚拟版本,其可以包括虚拟化硬件平台、存储设备和网络资源。如本文所使用的,虚拟化可以被应用于本文所描述的任何设备或其组件,并且涉及其中功能的至少一部分被实现为一个或多个虚拟组件的实现方式。本文描述的一些或全部功能可以被实现为由一个或多个虚拟机(VM)执行的虚拟组件,该一个或多个虚拟机(VM)在由一个或多个硬件节点(诸如运行为网络节点、用户设备(UE)、核心网络节点或主机的硬件计算设备)托管的一个或多个虚拟环境600中实现。此外,在虚拟节点不需要无线电连接(例如,核心网络节点或主机)的实施例中,则节点可以被完全虚拟化。
应用602(其可以替代地被称为软件实例、虚拟装置、网络功能、虚拟节点、虚拟网络功能等)在虚拟化环境600中运行以实现此文所公开的一些实施例的特征、功能和/或优点中的一部分。
硬件604包括处理电路、存储可由硬件处理电路执行的软件和/或指令的存储器、和/或本文描述的其他硬件设备,诸如网络接口、输入/输出接口等等。软件可以由处理电路执行以实例化一个或多个虚拟化层606(也被称为管理程序或虚拟机监视器(VMM)),提供VM608A和VM 608B(其中一个或多个通常可以被称为VM 608),和/或执行与本文描述的一些实施例有关的描述的任何功能、特征和/或益处。虚拟化层606可以向VM 608呈现看起来像网络硬件的虚拟操作平台。
VM 608包括虚拟处理、虚拟存储器、虚拟网络或接口以及虚拟存储,并且可以由对应的虚拟化层606运行。虚拟装置602的实例的不同实施例可以在VM 608中的一个或多个VM上实现,并且可以以不同的方式进行实现。硬件的虚拟化在某些情况下被称为网络功能虚拟化(NFV)。NFV可被用于将许多网络设备类型整合到行业标准大容量服务器硬件、物理交换机和物理存储上,这些设备可以位于数据中心和客户端设备中。
在NFV的上下文中,VM 608可以是运行程序的物理机器的软件实现,就该程序以在物理的、非虚拟化的机器上执行的方式运行。VM 608中的每个VM以及执行该VM的硬件604的部分(无论是专用于该VM的硬件和/或该VM与其他VM共享的硬件)形成单独的虚拟网络元件。仍然在NFV的上下文中,虚拟网络功能负责处理在硬件604之上的一个或多个VM 608中运行并且对应于应用602的特定网络功能。
硬件604可以在具有通用或特定组件的独立网络节点中实现。硬件604可以经由虚拟化来实现一些功能。备选地,硬件604可以是较大硬件集群(例如在数据中心或客户驻地设备(CPE)中)的一部分,其中许多硬件节点协同工作并经由管理和编排610进行管理,管理和编排610除其他外,还监督应用程序的生命周期管理602。在一些实施例中,硬件604被耦合到一个或多个无线电单元,每个无线电单元包括一个或多个发射器和可以被耦合到一个或多个天线的一个或多个接收器。无线电单元可以经由一个或多个适当的网络接口直接与其他硬件节点通信,并且可以与虚拟组件结合使用以向虚拟节点(诸如无线电接入节点或基站)提供无线电能力。在一些实施例中,可以使用控制系统612来提供一些信令,控制系统612可以替代地被用于硬件节点和无线电单元之间的通信。
返回到参数编码器218,侧信号预测器可以被实现为单个预测因子g,其最小化侧信号和预测的侧信号之间的均方误差(MSE)。此外,预测将优选地被应用于频带,并且涉及针对每个频带b的预测参数。
如果带b的系数被写为列向量XS,b(m)和XM,b(m),最小MSE预测器可以被导出为
然而,该表达式可以被简化以产生更稳定的预测参数。尽管预测参数gb(m)并不直接表示级别差,但它可以控制路由到左通道和右通道的下混合信号的部分。因此,对于ILD参数来说,它对感知的声音位置有显着的影响。有关预测参数的更多背景技术,请参阅PCT申请号PCT/EP2019/058650(公开号WO2019/193156)。预测参数gb(m)依次使用帧间预测编解码方案进行编码,其中考虑了帧m之间的差。对于每个带b,根据下式计算与先前帧的重构参数的差
编码器300可以选择编码gb(m)或Δgb(m),这取决于它们中的哪一个产生最低比特消耗。在实施例中,gb(m)和Δgb(m)可以使用标量量化器进行量化,该标量量化器跟着量化器索引上的熵编码器。算术编解码、霍夫曼编解码和哥伦布-赖斯(Golomb-Rice)编解码是可以被用作熵编码器的示例。在典型场景中,熵编码器会将较小的码字分配给小的变化,即Δgb(m)的较小值。这意味着针对稳定的音频场景使用Δgb(m)的预测编解码可能需要少量的比特nbitspred(m)。对于快速场景变化,导致较大的Δgb(m),针对gb(m)的编码的比特消耗nbitsabs(m)可能较低。编码方案有两种模式,它们是:
1)绝对(ABSOLUTE):gb(m)的编码,以及
2)预测(PREDICTIVE):Δgb(m)的编码。
编码模式gmode(m)∈{ABSOLUTE,PREDICTIVE}需要针对每个帧m进行编码,使解码器302知道编码值是否是
1)ABSOLUTE:gb(m),或
2)
在本公开的范围内,该编码方案的进一步变化是可能的。例如,如果预测参数gb(m)显示出与另一参数(诸如残差编解码能量或对应表示的)的高相关性,则联合编码这些参数可能是有益的。重要的部分是编码方案具有预测模式和绝对编解码模式,并且该决定被编码并用信号发送给解码器。连续的PREDICTIVE编解码模式的序列可以被称为“预测编解码条纹”或“预测条纹”并且通常对于场景稳定的音频段被观察到。如果预测条纹开始时的音频帧丢失,则参数可能会在整个条纹期间遭受误差传播(参见图1中的图示)。
ABSOLUTE和PREDICTIVE编解码模式也可能各自表示具有共同属性的模式的子集,即它们分别是绝对编解码模式或预测编解码模式。例如,绝对编解码模式可以依赖于帧内预测、参数的熵编解码或者简单地表示具有固定宽度索引的可能参数的枚举。对于预测编解码模式的子集,它们都依赖于先前编码和解码的参数。
当在编码器和解码器之间经历分组丢失时,为了减少gb(m)的解码中的误差传播的影响以形成重构的对应物ABSOLUTE编解码可以被强制在有规律的间隔,有效地将预测条纹限制在最大时间长度内。然而,这可能导致针对ABSOLUTE编解码被强制的帧的gb(m)的编码效率较低。该编码方案可以根据下式实现:
其中pred_allowed(m)是表示是否允许预测编解码的可选标志。
pred_allowed(m)至少基于自最后的ABSOLUTE编解码帧以来的帧的数目,以便在达到最大预测帧数目时PREDICTIVE模式被禁用,例如
其中predcount(m)是自最后的ABSOLUTE编解码帧以来的帧的数目。predallowed(m)的可选实施例可以根据以下方式获取:
或者
其中使用“≤”或“=”将使有效预测条纹等于
MAX_PRED_STREAK_M1+1,或者换句话说:
MAX_PRED_STREAK=MAX_PRED_STREAK_M1+1
pred_allowed(m)可以进一步被修改以反映预测模式应被允许或不允许的情况,例如在编解码模式的切换之后或在预测条纹应该被打破的其他情况下。
predcount(m)变量可以在启动时被初始化为零,然后根据下式来更新:
注意,由于predcount(m)取决于当前帧m的gmode(m),因此pred_allowed(m)通常基于先前帧m-1的predcount(m-1)。这需要在MAX_PRED_STREAK常数中考虑,以便实现预测条纹中所需的帧的数目。MAX_PRED_STREAK的典型值可以是MAX_PRED_STREAK=10,这在20ms帧步长的情况下对应于200ms。在产生舒适噪声的情况下,帧率可以被降低并且帧可能会例如每160毫秒(对应于在活跃信号的编解码中每8帧)传输一次。在这种情况下,predcount(m)可以用更大的步长来更新,以在舒适噪声期间具有类似的恢复时间。例如,predcount(m)可以根据下式以更大的步长更新:
上述模式选择的缺点在于,在绝对编解码被强制时,如果MAX_PRED_STREAK被达到,选择绝对编解码而不是预测编解码的成本可能会很大。
现在将根据本公开的一些实施例参考图7的流程图来讨论编码器300(使用图4和图8的框图的结构来实现)的操作。例如,模块可以被存储在图4的存储器403中,并且这些模块可以提供指令,使模块的指令在由相应编码器处理电路401执行时,编码器300执行流程图的相应操作。
选择哪种编解码模式(即,gmode(m))的决定基于nbitsabs(m)和nbitspred(m)之间的估计平均差。在图8中,框802和框804执行框725以获得针对绝对编解码nbitsabs(m)和预测编解码nbitspred(m)的比特率。nbitspred(m)的计算基于参数存储器806。在计算nbitsabs(m)时,超过一种绝对编解码模式可以被考虑,并且nbitsabs(m)应该被设置为这些绝对编解码模式中的最小值。例如,熵编解码方法在一些情况下可能导致比以二进制格式直接编码索引更大的比特率。在这种情况下,优选选择直接索引编码作为后备解决方案。
在框730中,编码器300基于所获取的比特率来计算比特率差。在图8中,框808计算比特率差bitdiff(m)。在一些实施例中,比特率差是根据下式计算:
bitdiff(m)=nbitsabs(m)-nbitpred(m)
在框735中,编码器300对比特率差进行低通滤波。在图8中,框812执行低通滤波。在一些实施例中,编码器300根据下式对比特率差进行低通滤波:
bitdiffLP(m)=γbitdiff(m)+(1-γ)bitdiffLP(m-1)
其中γ是低通滤波器系数,针对该系数合适的值可以是γ=0.06或在γ∈[0.01,0.20]范围内。
注意,如果比特差是恒定的(例如,bitdiff(m)=常数D),则在MAX_PRED_STREAK的间隔内定期强制绝对编解码的平均成本将为D/MAX_PRED_STREAK。如果想抓住机会在predcount(m)帧之后编解码绝对帧,这应产生较低或相等的成本,即
bitdiff(m)/predcount(m-1)≤D/MAX_PRED_STREAK
等价地,这可以被表达为仅当绝对编解码的成本严格大于定期强制间隔的估计成本时选择预测模式的条件,即
bitdiff(m)/predcount(m-1)>D/MAX_PRED_STREAK
在一些实施例中,常数D可以使用低通滤波比特率差bitdiffLP(m)来近似,方程变为
bitdiff(m)
>bitdiffLP(m)·predcount(m-1)/MAX_PRED_STREAK
这对应于决策阈值,如图9所示。如果需要更保守的方法,调谐常数C可以被添加。例如,调谐常数C可以根据下式与常数D一起使用:
bitdiff(m)
>C·bitdiffLP(m)·predcount(m-1)/MAX_PRED_STREAK
其中C∈[0,1]。注意,C=0给出了在所需比特低于或等于预测编解码bitsabs(m)≤bitdiff(m)时仅选择绝对编解码的原始行为,或者等效地,在bitsabs(m)>bitsdiff(m)时选择预测编解码。虽然C=1给出了针对常数bitdiffLP(m)=D的理论最佳值,但可以通过设置C=0.8,针对实际变化bitdiffLP(m)的稍微保守的方法可以被找到。注意,取决于pred_allowed(m)如何被计算,表达式可以根据以下来写出:
在框740中,编码器300基于比特率差、经低通滤波的比特率差和预测模式计数器来选择编解码模式。在一些实施例中,编解码模式的选择是基于将具有调谐常数C的表达式与编解码模式选择器816根据下式进行的gmode(m)选择相结合:
如果pred_allowed(m)标志不存在,则表达式可以根据下式写作:
另一个实施例尝试在MAX_PRED_STREAK可以根据下式被实现之前考虑针对绝对编解码的可能选项:
其中A是常数,例如A=0.4或在A∈(0,2]范围内。这样,如果成本(nbitsabs(m)-nbitspred(m))被发现足够低,预测条纹被保持在限制MAX_PRED_STREAK之内,同时仍然允许在达到该限制之前编解码模式被切换到ABSOLUTE模式。这可以被视为随着自最后的绝对编解码模式以来帧的数目增加,选择绝对编解码模式的紧迫性也在增加。在给定特定类型的材料并与MAX_PRED_STREAK帧后强制的绝对编解码相比的情况下,通过适当地设置常数A,可以降低预测条纹的平均比特率和平均长度。
如果预测模式由编码器300选择,如框745所示,则编码器300在框750中将编解码模式设置为预测模式,并且在框755中递增预测模式计数器(例如,predcount(m))。在图8中,参数编码器818在框750中将编解码模式设置为预测模式。预测帧计数器框810执行预测模式计数器的递增。
如果如框745所示,预测模式未由编码器300选择,则在框715中编码器300将编解码模式设置为绝对编解码模式,并在框720中将预测模式计数器重置(或设置)为初始值(例如,predcount(m))。初始值可以是0、1或任何其他值。在图8中,在框750中参数编码器818将编解码模式设置为绝对模式。预测帧计数器框810执行预测模式计数器的重置/设置。
在一些其他实施例中,针对特定帧的预测编解码可能不被允许。因此,在这些实施例中,编码器300确定预测编解码是否被允许。图9对此进行了说明。
转向图9,框715-755在上面图7中被描述并且在此将不再重复。在框910中,编码器300确定预测编解码是否被允许。一种对此进行确定的方法是检查pred_allowed(m)指示符。如上所述,pred_allowed(m)指示符基于预测模式计数器predcount(m)(例如,predcount(m-1))。该确定是在图8的框814中执行的。如上所述,在一些实施例中,在predcount(m-1)小于预测帧被允许的最大数目时,预测编解码被允许。换句话说,在predcount(m-1)大于预测帧被允许的最大数目时,预测编解码不被允许。在其他实施例中,在predcount(m-1)大于或等于预测帧被允许的最大数目时,预测编解码不被允许。在其他实施例中,在predcount(m-1)小于或等于预测帧被允许的最大数目时,预测编解码被允许。由于predcount(m)按帧增加一,因此条件可以通过检查predcount(m-1)是否等于预测帧被允许的的最大数目来评估。
在某些实施例中,pred_allowed(m)指示符是标志。图10说明了设置标志的实施例。转向图10,在框1000中,编码器300确定预测计数是否低于预测帧的最大数目。响应于确定预测计数小于预测帧的最大数目,该方法包括在框1010中设置标志以指示预测编解码被允许。响应于确定预测计数大于预测帧的最大数目,该方法包括在框1020中设置标志以指示预测编解码不被允许。在预测计数等于预测帧的最大数目时,默认可以设置标志以指示预测编解码被允许或指示预测编解码不被允许。在pred_allowed(m)为真时,其他设置可被用于设置标志,并在本文的实施例中进行了描述。
返回到图9,响应于预测编解码不被允许,在框715中编码器300将编解码模式设置为绝对编解码模式,并且如先前所描述的在框720中将预测模式计数器设置或重置为零。
在另一个实施例中,ABSOLUTE和PREDICTIVE解码模式之间的选择可能受到编解码器的第二参数的编码的影响。该选择可能与第二个参数的潜在误差恢复相关,而不是仅仅对帧进行计数。假设使用包括帧内预测Cintra(m)、帧间预测Cinter(m)和编码预测残差r(m)的组合预测对第二参数C(m)进行编码。令重构参数基于重构的帧内预测重构的帧间预测和重构的预测残差来形成。例如,重构参数可以在一些实施例中根据下式确定:
加权参数α(m)控制帧内预测(可以被视为绝对编解码)的比例,相比于帧间预测(取决于过去的帧)的比例。由于参数通常是稳定的,因此相比于残差编解码(小α(m))中的低比特率,权重α(m)平衡了快速误差恢复(大α(m))。如果发生传输误差,解码器的存储器将与编码器不同步。这可以根据下式建模为帧间预测项中的误差ε:
减去无误差解码会导致:
如果帧m中发生传输误差,则在M个帧之后的残余误差εres可以被表示为:
这可以被表示为相对误差:
使用递归定义,这可以被表示为:
注意,α(m)的序列接近1,这意味着针对帧内预测的权重较高,将使相对误差快速下降到零。对于接近于零的α(m),过去帧的帧间预测的权重将更大并且相对误差将以更低的速率减小。同样,可以将恢复参数定义为R(M)=(1-εrel(M))。它也可以根据下式计算:
通过分析相干参数的误差恢复率,侧预测参数gb(m)的绝对编解码可以被触发,使第一参数和第二参数的抗误码是平衡的。对此进行实现的一种方法是根据下式对pred_allowed(m)进行影响:
其中εTHR是针对相对误差的阈值的值。随着例如εTHR=0.01的设置,如果潜在相对误差已降至1%以下,则预测将不被允许。注意,pred_allowed(m)需要依赖于先前帧m-1的相对误差,因为更新的εrel(m)取决于当前帧m的模式选择。进一步的组合也是可能的,例如根据下式使用帧计数器和恢复分析:
注意,模式选择可以进一步被调整为使用εrel(m-1),它可以被调整为:
其中B是常数。
计算相对误差εrel(m)的备选方法是累积α(m)权重因子:
类似地,根据下式αacc(m)可以被用来影响pred_allowed(m):
其中αacc,max是与误差恢复的级别相对应的常数,或根据下式影响模式选择:
其中G是常数,在给定要被编码的输入材料和针对材料的观察到的α(m)值的情况下,它给出合适的比特余量。
在各种实施例的上述描述中,应当理解,本文中使用的术语仅是为了描述特定实施例的目的,并且不旨在限制本发明构思。除非另外定义,本文中使用的所有术语(包括技术和科学术语)具有与本发明构思所属领域的普通技术人员通常理解的相同含义。还应当理解,术语,例如在常用词典中定义的术语,应当被解释为具有与其在本说明书和相关技术的上下文中的含义一致的含义,并且不会以理想化的或过度的方式解释。除非本文明确定义,否则均为正式含义。
当元件被称为与另一元件“连接”、“耦合”、“响应”或其变体时,它可以直接连接、耦合或响应于另一元件,或者可以存在中间元件。相反,当元件被称为与另一元件“直接连接”、“直接耦合”、“直接响应”或其变体时,不存在中间元件。相似的数字在全文中指代相似的元素。此外,本文所使用的“耦合”、“连接”、“响应”或其变体可以包括无线耦合、连接或响应。如本文所用,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文清楚地另有说明。为了简洁和/或清楚起见,可能不会详细描述众所周知的功能或构造。术语“和/或”(缩写为“/”)包括一个或多个相关列出项的任一和全部组合。
应当理解,虽然本文可以使用术语第一、第二、第三等来描述各种元件/操作,但是这些元件/操作不应受到这些术语的限制。这些术语仅用于区分一个元件/操作与另一元件/操作。因此,在不脱离本发明构思的教导的情况下,一些实施例中的第一元件/操作可以被称为其他实施例中的第二元件/操作。在整个说明书中,相同的附图标记或相同的附图标记表示相同或相似的元件。
如本文所使用的,术语“包含”、“包括”、“具有”、或其变体是开放式的,且包括一个或多个所述特征、整体、元件、步骤、组件或功能,但不排除一个或多个其他特征、整体、元件、步骤、组件、功能或组的存在或添加。此外,如本文所使用的,源自拉丁语短语“exempligratia”的常用缩写“e.g.”可被用于介绍或指定先前提到的项目的一个或多个通用示例,并且不旨在限制这样的项目。源自拉丁语短语“id est”的常见缩写“i.e.”可被用于从更通用的叙述中指定特定项目。
本文参考计算机实现的方法、装置(系统和/或设备)和/或计算机程序产品的框图和/或流程图说明来描述示例实施例。应当理解,框图和/或流程图中的框、以及框图和/或流程图中的框的组合可以通过由一个或多个计算机电路执行的计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机电路、专用计算机电路和/或其他可编程数据处理电路的处理器电路以产生机器,使经由计算机的处理器执行的指令以及/或其他可编程数据处理装置、变换和控制晶体管、存储在存储器位置中的值、以及此类电路内的其他硬件组件,以实现框图和/或流程图框或多个框中指定的功能/动作,并从而创建装置(功能)和/或用于实现框图和/或(多个)流程图框中指定的功能/动作的结构。
这些计算机程序指令还可以存储在有形计算机可读介质中,其可以指导计算机或其他可编程数据处理装置以特定方式运行,使存储在计算机可读介质中的指令产生包括以下的制品:实现框图和/或流程图框中指定的功能/动作的指令。因此,本发明构思的实施例可以体现在硬件和/或在诸如数字信号处理器之类的处理器上运行的软件(包括固件、常驻软件、微代码等)中,这些处理器可以统称为数字信号处理器。作为“电路”、“模块”或其变体。
还应当注意,在一些替代实施方式中,方框中标注的功能/动作可以不按照流程图中标注的顺序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能/动作。此外,流程图和/或框图的给定框的功能可以被分成多个框和/或流程图和/或框图的两个或更多个框的功能可以至少部分地集成。最后,在不脱离本发明构思的范围的情况下,可以在示出的框之间添加/插入其他框,和/或可以省略框/操作。此外,虽然一些图包括通信路径上的箭头以示出通信的主要方向,但是应当理解,通信可以在与所描绘的箭头相反的方向上发生。
在实质上不脱离本发明构思的原理的情况下,可以对实施例进行许多变化和修改。所有这样的变化和修改旨在被包括在本发明构思的范围内。因此,以上公开的主题应被认为是说明性的而非限制性的,并且实施例的示例旨在覆盖落入本发明构思的精神和范围内的所有此类修改、增强和其他实施例。因此,在法律允许的最大范围内,本发明构思的范围由本公开的最广泛允许的解释(包括实施例及其等同物的示例)来确定,并且不应受到前述内容的约束或限制。

Claims (36)

1.一种在编码器(300)中执行的用于选择针对当前帧的编解码模式的方法,所述方法包括:
获取(725)针对绝对编解码和预测编解码的比特率;
基于所获取的所述比特率来计算(730)比特率差;
对所述比特率差进行低通滤波(735);以及
基于所述比特率差、经低通滤波的所述比特率差以及预测模式计数器来选择(740)编解码模式。
2.根据权利要求1所述的方法,还包括:
响应于选择预测编解码模式:
将所述编解码模式设置(750)为所述预测编解码模式;以及
递增(755)所述预测模式计数器。
3.根据权利要求1至2中任一项所述的方法,还包括:
响应于选择绝对编解码模式:
将所述编解码模式设置(715)为所述绝对编解码模式;以及
将所述预测模式计数器重置(720)为初始值。
4.根据权利要求1至3中任一项所述的方法,其中确定预测编解码是否被允许包括确定标志是否指示预测编解码被允许。
5.根据权利要求4所述的方法,其中确定所述标志是否指示预测编解码被允许包括:
确定(1000)预测计数是否低于预测帧的最大数目;
响应于确定所述预测计数小于预测帧的所述最大数目,设置(1010)所述标志以指示预测编解码被允许;以及
响应于确定所述预测计数大于预测帧的所述最大数目,设置(1020)所述标志以指示预测编解码不被允许。
6.根据权利要求1至4中任一项所述的方法,还包括:
确定(910)预测编解码是否被允许;
响应于确定预测编解码不被允许:
将编解码模式设置(715)为绝对编解码模式;以及
将所述预测模式计数器设置(720)为初始值。
7.根据权利要求1至6中任一项所述的方法,其中计算所述比特率差包括根据下式计算所述比特率差:
bitdiff(m)=nbitsabs(m)-nbitspred(m),
其中nbitsabs(m)是针对绝对编解码的比特率,并且nbitspred(m)是针对预测编解码的比特率。
8.根据权利要求1至7中任一项所述的方法,其中对所述比特率差进行低通滤波包括根据下式对所述比特率差进行低通滤波:
bitdiffLP(m)=γbitdiff(m)+(1-γ)bitdiffLP(m-1)
其中γ是低通滤波器系数。
9.根据权利要求1至8中任一项所述的方法,其中基于所述比特率差、经低通滤波的所述比特率差以及所述预测模式计数器来选择所述编解码模式包括根据下式选择编解码模式:
其中
bitdiff(m)=nbitsabs(m)-nbitspred(m),并且
bitdiffLP(m)=γbitdiff(m)+(1-γ)bitdiffLP(m-1)
其中gmode(m)是所述编解码模式,predcount(m-1)是自最后的绝对编解码帧以来的帧的数目,C是调谐常数,bitdiff(m)是比特率差,nbitspred(m)是估计将被用于预测编解码的比特数目,nbitsabs(m)是估计将被用于绝对编解码的比特数目,bitdiffLP(m)是经低通滤波的比特率差,γ是低通滤波器系数,并且MAX_PRED_STREAK是被允许的预测连续帧的最大数目。
10.根据权利要求9所述的方法,其中
其中SID帧是静默插入描述符帧。
11.根据权利要求9所述的方法,其中
γ∈[0.01,0.20]并且
C∈[0,1]。
12.根据权利要求9至11中任一项所述的方法,其中gmode(m)进一步根据下式基于pred_allowed(m):
其中
13.根据权利要求1至8中任一项所述的方法,其中基于所述比特率差、经低通滤波的所述比特率差以及所述预测模式计数器来选择所述编解码模式包括根据下式选择编解码模式:
其中gmode(m)是所述编解码模式,predcount(m)是自最后的绝对编解码帧以来的帧的数目,nbitspred(m)是估计将被使用于预测编解码的比特数目,nbitsabs(m)是估计将被使用于绝对编解码的比特数目,A是常数,并且MAX_PRED_STREAK是被允许的预测连续帧的最大数目。
14.根据权利要求13所述的方法,其中A∈(0,2]。
15.根据权利要求1至8中任一项所述的方法,其中基于所述比特率差、经低通滤波的所述比特率差和所述预测模式计数器来选择所述编解码模式包括根据下式选择编解码模式:
其中gmode(m)是所述编解码模式,nbitspred(m)是估计将被用于预测编解码的比特数目,nbitsabs(m)是估计将被用于绝对编解码的比特数目,G是常数,αacc(m)是加权因子,εrel(m)是相对误差,并且εTHR是针对所述相对误差的阈值的值。
16.一种用于选择针对当前帧的编解码模式的编码器(300),所述编码器适于执行操作,所述操作包括:
获取针对绝对编解码和预测编解码的比特率;
基于所获取的所述比特率来计算比特率差;
对所述比特率差进行低通滤波;以及
基于所述比特率差、经低通滤波的所述比特率差以及预测模式计数器来选择编解码模式。
17.根据权利要求16所述的编码器(300),其中所述编码器(300)适于执行进一步的操作,包括:
响应于选择预测编解码模式:
将所述编解码模式设置为所述预测编解码模式;以及
递增所述预测模式计数器。
18.根据权利要求16至17中任一项所述的编码器(300),还包括:
响应于选择绝对编解码模式:
将所述编解码模式设置为所述绝对编解码模式;以及
将所述预测模式计数器重置为初始值。
19.根据权利要求16至18中任一项所述的编码器(300),其中确定预测编解码是否被允许包括确定标志是否指示预测编解码被允许。
20.根据权利要求19所述的编码器(300),其中确定所述标志是否指示预测编解码被允许包括:
确定预测计数是否低于预测帧的最大数目;
响应于确定所述预测计数小于预测帧的所述最大数目,设置所述标志以指示预测编解码被允许;以及
响应于确定所述预测计数大于预测帧的所述最大数目,设置所述标志以指示预测编解码不被允许。
21.根据权利要求16至19中任一项所述的编码器(300),还包括:
确定预测编解码是否被允许;
响应于确定预测编解码不被允许:
将编解码模式设置为绝对编解码模式;以及
将所述预测模式计数器设置为初始值。
22.根据权利要求16至21中任一项所述的编码器(300),其中计算所述比特率差包括根据下式计算所述比特率差:
bitdiff(m)=nbitsabs(m)-nbitspred(m),
其中nbitsabs(m)是针对绝对编解码的比特率,并且nbitspred(m)是针对预测编解码的比特率。
23.根据权利要求16至22中任一项所述的编码器(300),其中对所述比特率差进行低通滤波包括根据下式对所述比特率差进行低通滤波:
bitdiffLP(m)=γbitdiff(m)+(1-γ)bitdiffLP(m-1)
其中γ是低通滤波器系数。
24.根据权利要求16至23中任一项所述的编码器(300),其中基于所述比特率差、经低通滤波的所述比特率差以及所述预测模式计数器来选择所述编解码模式包括根据下式选择编解码模式:
其中
bitdiff(m)=nbitspabs(m)-nbitspred(m),并且
bitdiffLP(m)=γbitdiff(m)+(1-γ)bitdiffLP(m-1)
其中gmode(m)是所述编解码模式,predcount(m-1)是自最后的绝对编解码帧以来的帧的数目,C是调谐常数,bitdiff(m)是比特率差,nbitspred(m)是估计将被用于预测编解码的比特数目,nbitsabs(m)是估计将被用于绝对编解码的比特数目,bitdiffLP(m)是经低通滤波的比特率差,γ是低通滤波器系数,并且MAX_PRED_STREAK是被允许的预测连续帧的最大数目。
25.根据权利要求24所述的编码器(300),其中
其中SID帧是静默插入描述符帧。
26.根据权利要求24至25中任一项所述的编码器(300),其中
γ∈[0.01,0.20]并且
C∈[0,1]。
27.根据权利要求24至26中任一项所述的编码器(300),其中gmode(m)进一步根据下式基于pred_allowed(m):
其中
28.根据权利要求16至23中任一项所述的编码器(300),其中基于所述比特率差、经低通滤波的所述比特率差以及所述预测模式计数器来选择所述编解码模式包括根据下式选择编解码模式:
其中gmode(m)是所述编解码模式,predcount(m)是自最后的绝对编解码帧以来的帧的数目,nbitspred(m)是估计将被使用于预测编解码的比特数目,nbitsabs(m)是估计将被使用于绝对编解码的比特数目,A是常数,并且MAX_PRED_STREAK是被允许的预测连续帧的最大数目。
29.根据权利要求28所述的编码器(300),其中A∈(0,2]。
30.根据权利要求16至23中任一项所述的编码器(300),其中基于所述比特率差、经低通滤波的所述比特率差和所述预测模式计数器来选择所述编解码模式包括根据下式选择编解码模式:
其中gmode(m)是所述编解码模式,nbitspred(m)是估计将被用于预测编解码的比特数目,nbitsabs(m)是估计将被用于绝对编解码的比特数目,G是常数,αacc(m)是加权因子,εrel(m)是相对误差,并且εTHR是针对所述相对误差的阈值的值。
31.一种编码器(300),包括:
处理电路(401);以及
与所述处理电路耦合的存储器(403),其中所述存储器包括指令,所述指令在由所述处理电路执行时使所述编码器(300)执行操作,所述操作包括:
获取针对绝对编解码和预测编解码的比特率;
基于所获取的所述比特率来计算比特率差;
对所述比特率差进行低通滤波;以及
基于所述比特率差、经低通滤波的所述比特率差以及预测模式计数器来选择编解码模式。
32.根据权利要求31所述的编码器(300),其中所述存储器还包括指令,所述指令在由所述处理电路执行时使所述编码器(300)执行根据权利要求2至15中任一项所述的操作。
33.一种计算机程序,包括将由编码器(300)的处理电路(401)执行的程序代码,由此所述程序代码的执行使所述编码器(300)执行操作,所述操作包括:
获取(725)针对绝对编解码和预测编解码的比特率;
基于所获取的所述比特率来计算(730)比特率差;
对所述比特率差进行低通滤波(735);以及
基于所述比特率差、经低通滤波的所述比特率差以及预测模式计数器来选择(740)编解码模式。
34.根据权利要求33所述的计算机程序,还包括将由编码器(300)的处理电路(401)执行的程序代码,由此所述程序代码的执行使所述编码器(300)执行根据权利要求2至15中任一项所述的操作。
35.一种计算机程序产品,包括非暂态存储介质,所述非暂态存储介质包括将由所述编码器(300)的处理电路(401)执行的程序代码,由此所述程序代码的执行使所述编码器(300)执行操作,所述操作包括:
获取(725)针对绝对编解码和预测编解码的比特率;
基于所获取的所述比特率来计算(730)比特率差;
对所述比特率差进行低通滤波(735);以及
基于所述比特率差、经低通滤波的所述比特率差以及预测模式计数器来选择(740)编解码模式。
36.根据权利要求35所述的计算机程序产品,其中所述非暂态存储介质包括将由所述编码器(300)的处理电路(401)执行的另外的程序代码,由此所述另外的程序代码的执行使所述编码器(300)执行根据权利要求2至15中的任一项所述的操作。
CN202180105041.5A 2021-12-15 2021-12-15 自适应预测编码 Pending CN118414662A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2021/085932 WO2023110082A1 (en) 2021-12-15 2021-12-15 Adaptive predictive encoding

Publications (1)

Publication Number Publication Date
CN118414662A true CN118414662A (zh) 2024-07-30

Family

ID=79283086

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180105041.5A Pending CN118414662A (zh) 2021-12-15 2021-12-15 自适应预测编码

Country Status (4)

Country Link
EP (1) EP4449411A1 (zh)
CN (1) CN118414662A (zh)
AU (1) AU2021479158A1 (zh)
WO (1) WO2023110082A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602004008676T2 (de) * 2004-05-17 2008-06-05 Nokia Corp. Audiocodierung mit verschiedenen codierungsmodellen
US9583117B2 (en) * 2006-10-10 2017-02-28 Qualcomm Incorporated Method and apparatus for encoding and decoding audio signals
WO2010140546A1 (ja) * 2009-06-03 2010-12-09 日本電信電話株式会社 符号化方法、復号化方法、符号化装置、復号化装置、符号化プログラム、復号化プログラム及びこれらの記録媒体
KR101848898B1 (ko) * 2014-03-24 2018-04-13 니폰 덴신 덴와 가부시끼가이샤 부호화 방법, 부호화 장치, 프로그램 및 기록 매체
US9685166B2 (en) * 2014-07-26 2017-06-20 Huawei Technologies Co., Ltd. Classification between time-domain coding and frequency domain coding
KR102675420B1 (ko) 2018-04-05 2024-06-17 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) 컴포트 노이즈 생성 지원

Also Published As

Publication number Publication date
AU2021479158A1 (en) 2024-07-04
EP4449411A1 (en) 2024-10-23
WO2023110082A1 (en) 2023-06-22

Similar Documents

Publication Publication Date Title
JP7438268B2 (ja) 快適雑音の生成のサポート
US9280976B2 (en) Audio signal encoder
KR101647576B1 (ko) 스테레오 오디오 신호 인코더
US20160111100A1 (en) Audio signal encoder
KR102717379B1 (ko) 멀티 채널 오디오 프레임에서 예측적인 코딩에서 에러 복구를 위한 방법 및 장치
CN118414662A (zh) 自适应预测编码
CN113614827B (zh) 用于预测性译码中的低成本错误恢复的方法和设备
AU2021451130B2 (en) Improved stability of inter-channel time difference (itd) estimator for coincident stereo capture
WO2024074302A1 (en) Coherence calculation for stereo discontinuous transmission (dtx)
KR20240152948A (ko) 멀티 채널 오디오 프레임에서 예측적인 코딩에서 에러 복구를 위한 방법 및 장치
WO2024194493A1 (en) Joint stereo coding in complex-valued filter bank domain

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication