CN103404053A - 音频或语音信号处理器 - Google Patents
音频或语音信号处理器 Download PDFInfo
- Publication number
- CN103404053A CN103404053A CN2011800686858A CN201180068685A CN103404053A CN 103404053 A CN103404053 A CN 103404053A CN 2011800686858 A CN2011800686858 A CN 2011800686858A CN 201180068685 A CN201180068685 A CN 201180068685A CN 103404053 A CN103404053 A CN 103404053A
- Authority
- CN
- China
- Prior art keywords
- audio signal
- voice
- scaling
- time
- signal processor
- 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
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0224—Processing in the time domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/062—Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
- H04J3/0632—Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/04—Time compression or expansion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/439—Processing of audio elementary streams
- H04N21/4392—Processing of audio elementary streams involving audio buffer management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/439—Processing of audio elementary streams
- H04N21/4398—Processing of audio elementary streams involving reformatting operations of audio signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44209—Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种语音或音频信号处理器,其用于处理经由通信网络接收的所接收网络包以提供输出信号,所述语音或音频信号处理器包括:抖动缓冲器(911),其经配置以缓冲所述所接收网络包(105);语音或音频解码器(913),其经配置以对由所述抖动缓冲器(911)缓冲的所述所接收网络包(105)进行解码以获得经解码语音或音频信号;可控制的时间缩放器(917),其经配置以修正所述经解码语音或音频信号的长度以获得经时间缩放的语音或音频信号作为输出语音或音频信号;以及调适控制装置(903),其经配置以取决于处理复杂性指标来控制所述时间缩放器(917)的操作。
Description
技术领域
本发明涉及具有抖动缓冲器的音频或语音处理器。
背景技术
分组交换网络(例如局域网(LAN)或因特网)可用以载运语音、音频、视频或其它连续信号,例如因特网电话或音频/视频会议信号和例如IPTV等视听串流。在这些应用中,发送器和接收器通常根据协议彼此通信,例如在RFC 3550中描述的实时传输协议(RTP)。通常,发送器例如通过以固定或可变间隔对信号进行取样来数字化连续输入信号。发送器经由网络将一系列包发送到接收器。每一个包含有表示一个或一个以上离散信号样本的数据。通常,发送者以规则的时间间隔来发送、即编码包。接收器从接收的样本重构、即解码连续信号,且通常例如通过扬声器或在计算机的屏幕上输出经重构信号。
然而,编码器或解码器的复杂性对于与强力的桌上型计算机和其它高级装置相比具有较低计算能力的一些移动装置来说是重要问题。举例来说,不具有针对给定帧的时间缩放的解码器的复杂性定义为每帧长度的操作数目,其中帧长度是帧的持续时间,例如20ms。
因此,增加复杂性和复杂性开销导致例如语音、音频或视频信号等媒体信号中的噪声和假象的问题。
发明内容
因此本发明的目的是减少语音或音频信号经由网络遇到的延迟抖动。
此目的通过独立权利要求的特征来实现。从附属权利要求、描述内容和服务中明了另外的实施方案形式。
根据第一方面,本发明涉及一种语音或音频信号处理器,其用于处理经由通信网络接收的所接收网络包以提供输出信号,所述语音或音频信号处理器包括:抖动缓冲器,其经配置以缓冲所述所接收网络包;语音或音频解码器,其经配置以对由所述抖动缓冲器缓冲的所述所接收网络包进行解码以获得经解码语音或音频信号;可控制的时间缩放器,其经配置以修正所述经解码语音或音频信号的长度以获得经时间缩放的语音或音频信号作为输出语音或音频信号;以及调适控制装置,其经配置以取决于处理复杂性指标来控制所述时间缩放器的操作。
在根据第一方面的语音或音频信号处理器的第一可能实施方案形式中,所述调适控制装置经配置以发射指示取决于所述处理复杂性指标来修正所述经解码语音或音频信号的长度的时间缩放请求,以便控制所述可控制的时间缩放器。
在根据第一方面或根据第一方面的第一实施方案形式的语音或音频信号处理器的第二可能实施方案形式中,所述调适控制装置经配置以基于所述处理复杂性指标来确定借以修正所述经解码语音或音频信号的长度的样本数目,且将时间缩放请求发射到所述可控制的时间缩放器,且其中所述可控制的时间缩放器经配置以通过所述确定的样本数目来修正所述经解码语音或音频信号的长度。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第三可能实施方案形式中,所述处理复杂性指标是通过以下各项中的至少一者来确定:解码复杂性、经时间缩放的语音或音频信号帧的长度、位速率、取样率、指示例如高延迟或低延迟的延迟模式。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第四可能实施方案形式中,所述语音或音频信号处理器包括用于存储用于不同经解码语音或音频信号长度的不同处理复杂性指标的存储装置。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第五可能实施方案形式中,所述音频解码器经配置以将所述处理复杂性指标提供到所述调适控制装置。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第六可能实施方案形式中,所述调适控制装置经进一步配置以取决于抖动缓冲器状态来控制所述可控制的时间缩放器的操作。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第七可能实施方案形式中,所述抖动缓冲器经配置以将所述抖动缓冲器状态提供到所述调适控制装置。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第八可能实施方案形式中,所述调适控制装置经进一步配置以取决于网络包到达速率来控制所述可控制的时间缩放器的操作。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第九可能实施方案形式中,所述语音或音频信号处理器进一步包括网络速率确定器,用于确定所述网络包的包速率,且将所述包速率提供到所述调适控制装置。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第十可能实施方案形式中,所述可控制的时间缩放器经配置以通过样本数目来修正所述经解码语音或音频信号的长度。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第十一可能实施方案形式中,所述可控制的时间缩放器经配置以重叠且相加所述经解码语音或音频信号的部分以用于时间缩放。
在根据第一方面或根据第一方面的前述实施方案形式中的任一者的语音或音频信号处理器的第十二可能实施方案形式中,所述可控制的时间缩放器经配置以将时间缩放反馈提供到所述调适控制装置,所述时间缩放反馈向所述调适控制装置告知所述经时间缩放的语音或音频信号的长度。
根据第二方面,本发明涉及一种用于处理经由通信网络接收的网络包以提供输出信号的方法,所述方法包括:缓冲所述所接收网络包;
对经缓冲的所述所接收包进行解码以获得经解码语音或音频信号;取决于处理复杂性指标,以可控制方式修正所述经解码语音或音频信号的长度以获得经时间缩放的语音或音频信号作为输出语音或音频信号。
根据第二方面,本发明涉及一种计算机程序,其用于当在计算机上运行时执行根据第二方面的方法。
附图说明
关于附图描述另外实施例,其中:
图1展示在发送器侧处的恒定包流,其由于延迟抖动而导致接收侧的不规则包流;
图2展示抖动缓冲器经由网络接收经包化话音且将包转发到重放装置;
图3展示通过媒体调适单元进行的自适应抖动缓冲器管理;
图4展示通过基于音调的时间缩放进行的抖动缓冲器管理;
图5展示通过基于频域处理的时间缩放进行的抖动缓冲器管理;
图6展示通过基于音调和SID旗标的时间缩放进行的抖动缓冲器管理;
图7展示基于复杂性评估的抖动缓冲器管理;
图8展示基于其中考虑外部复杂性信息的复杂性评估的抖动缓冲器管理;
图9展示基于复杂性评估和具有音调信息的时间缩放的抖动缓冲器管理;
图10展示基于复杂性评估和频域中的时间缩放的抖动缓冲器管理;
图11展示基于复杂性评估、SID旗标和具有音调信息的时间缩放的抖动缓冲器管理;以及
图12展示基于复杂性评估和外部控制参数的抖动缓冲器管理。
具体实施方式
图1展示发送器101将包105发送到接收器103。通常,发送器101使用编码器来压缩样本,之后将包105发送到接收器103。这允许减少将发射的数据量以及发射所需的努力和资源。取决于将发射的媒体的类型,例如语音、音频或视频,使用不同的编码器来压缩数据,且减少将经由包网络107发射的内容的大小。语音编码器的实例是AMR、AMR-WB;用于一般音频信号和音乐的编码器的实例是MP3或AAC族群;且用于视频信号的实例编码器是H.263或H.264/AVC。接收器103使用对应的兼容解码器来解压缩样本,之后重构信号。
发送器101和接收器103使用时钟来控制其处理数据的速率。然而,这些时钟通常不彼此同步,且可能以不同的速度操作。此差异可造成在接收器侧103看来,发送器101过于频繁或不够频繁地发送包105,进而造成接收器103的缓冲器上溢或下溢。
此外,因特网和发送实时包的大多数其它包网络造成可变且不可预测的传播延迟,这主要是由于网络拥塞、不适当的排队或配置错误而引起。因此,包105以可变且通常不可预测的相互到达时间到达接收器103。此现象称为“抖动”或“延迟抖动”。
图1给出此效应的说明。包1、2、3和4以规则间隔在发送器侧101顺序发射。网络107中的抖动使包1、2、3和4在不同间隔中且通常无序地到达接收器侧103。
抖动缓冲器是其中可以均匀隔开的间隔将接收的包105收集、存储和转发到解码器的共享数据区域。因此,位于接收端的抖动缓冲器可视为弹性存储区域,用于补偿延迟抖动并在其输出处以正确次序将恒定包流提供到解码器。
图2展示抖动缓冲器209经由网络207接收经包化话音211且将包转发到重放装置213。为了在接收器203处适当重构语音包,抖动缓冲器209吸收延迟变化并向解码器供应规则的包流。
特定来说,图2展示在恒定位速率下操作的话音编解码器的情况。在时间过程中,发射的字节数目线性增加。然而,在接收侧203,以规则的时间间隔接收包,且接收的字节随着时间以非线性且不连续方式变化。
抖动缓冲器209补偿此不规则性,并在其输出处提供规则的包流,但具有延迟。一旦抖动缓冲器209含有一些包105,其便开始以固定速率将包供应到解码器。
大体上,抖动缓冲器209能够以固定速率连续供应包,即使来自发送器的包以可变速率到达抖动缓冲器209或即使短时期内没有包到达也是如此。
然而,如果在延长的时段内不足够数目的包到达抖动缓冲器209,例如当网络拥塞时,抖动缓冲器209可能以低状态运行,且所谓的下溢发生。空的抖动缓冲器209不能将包提供到解码器。这造成接收器203输出的理想连续信号中的不合意的间隙,直到另一包到达为止。此间隙将被解码器视为包丢失,且取决于解码器处置包丢失的方式,即所谓的包丢失消隐,例如语音或音频信号中的静默或视频信号中的空白或“静止”屏幕出现。大体上,这是不合意的情形,因为感知到的质量将受到不利影响。
然而,如果在短时期内比抖动缓冲器209可适应的包多很多的包到达抖动缓冲器209,例如当拥塞的网络突然变为较不繁忙时,抖动缓冲器209可上溢,且被迫丢弃一些到达的包。这造成一个或一个以上包的丢失。
所谓的自适应抖动缓冲器管理可取决于包的到达速率而增加或减少样本的数目。虽然自适应抖动缓冲器与固定大小抖动缓冲器相比较不可能上溢,但自适应抖动缓冲器可能经历下溢,并造成接收器输出的信号中的上述间隙。为了增加或减少样本的数目,将媒体调适单元应用于经解码信号。
图3展示通过媒体调适单元301进行的自适应抖动缓冲器管理。
在一些情况下,媒体调适单元301无法改变样本的数目或改变调适逻辑303请求媒体调适单元的确切数目,例如将改变每一单音调周期或音调周期的积分时间以保持良好的服务质量。
RTP包是具有RTP有效负载和RTP标头的包。在RTP有效负载中,存在有效负载标头和有效负载数据(经编码数据)。网络分析305将基于RTP标头信息来分析网络条件,并获得接收状态。抖动缓冲器311存储经编码数据/帧。解码器313解码经编码数据,以便恢复经解码信号。调适控制逻辑303分析接收状态并维持抖动缓冲器311,且最终确定是否请求对经解码信号的时间缩放。另外,可存在音调确定模块,其确定经解码信号的音调。此音调信息在时间缩放模块中使用以获得最终输出。
抖动缓冲器311解包传入的RTP包,并存储接收的话音帧。缓冲器状态可用作对调适控制逻辑303的输入。此外,抖动缓冲器311还链接到话音解码器313以在被请求时提供用于解码的帧。
网络分析305用以监视传入的包流并收集接收抖动缓冲调适所需的统计数据,例如抖动或包丢失。
调适控制逻辑303调整重放延迟并控制调适功能性。基于缓冲器状态,例如平均缓冲延迟、缓冲器占用以及来自网络分析305的输入,其作出关于缓冲延迟调整和所需媒体调适动作的决策。调适控制逻辑303随后将例如预期帧长度等调适请求发送到媒体调适单元301。
解码器313将把经编码数据解压缩为经解码信号以用于重放。
媒体调适单元301根据调适控制逻辑303给出的请求来缩短或延长输出信号长度,以用透明方式实现缓冲器延迟调整。在一些情况下,无法满足来自调适控制逻辑303的调适请求。举例来说,媒体调适单元303无法改变信号长度,或可仅以音调周期为单位添加或移除长度以避免假象。将此种反馈信息,例如实际的所得帧长度,发送到调适控制逻辑303。
图4展示通过基于音调的时间缩放进行的抖动缓冲器管理。抖动缓冲器管理实施方案包括媒体调适单元401、调适控制逻辑403、网络分析405、抖动缓冲器411、解码器413、音调确定单元415和时间缩放单元417。
由于音调是人声的重要性质,因此许多抖动缓冲器管理(JBM)实施方案使用基于音调的时间缩放技术来增加或减少样本的数目。时间缩放是基于音调信息。
图5展示通过基于频域处理的时间缩放进行的抖动缓冲器管理。抖动缓冲器管理实施方案包括媒体调适单元501、调适控制逻辑503、网络分析505、抖动缓冲器511、解码器513、时间缩放单元517和时间频率转换单元519。
对于一般音频信号,音调信息经常不重要或不可用。因此,媒体调适单元501的时间缩放或一般处理无法基于音调信息,而是基于一般频域时间缩放,例如使用快速傅立叶变换(FFT)或MDCT(改型离散余弦变换)。在此情况下,在时间缩放之前需要时间-频率转换单元519的时间-频率转换。
图6展示通过基于音调和SID旗标的时间缩放进行的抖动缓冲器管理。抖动缓冲器管理实施方案包括调适控制逻辑603、网络分析605、抖动缓冲器611、解码器613、时间缩放单元617和音调确定单元615。
一些编码器具有语音活动检测模块(VAD模块)。VAD模块将信号分类为静默或非静默。静默信号将经编码为静默插入描述符包/帧(SID包/帧)。音调信息对于静默信号不重要。然而,解码器确定帧由于经编码数据中的SID旗标而为静默或非静默的。如果帧是SID帧,那么音调搜索不是必要的,且时间缩放模块可针对静默信号直接增加或减少样本的数目。
编码器或解码器的复杂性对于与强力的桌上型计算机和其它高级装置相比具有较低计算能力的一些移动装置来说是重要问题。
不具有针对给定帧的时间缩放的解码器的复杂性界定为:
其中frame_length是帧的持续时间(例如,20ms),numberOfOperations(i)是给定帧的操作数目,且i是给定帧的指数。
不具有时间缩放的解码器的复杂性可根据特定译码模式或输入/输出取样率从预设表确定。预设表允许获得用于对帧进行解码的复杂性的近似估计的容易实施方案,且在原理上类似于查找表。如等式(1)中描述的复杂性涉及每秒操作数目,其准确地表示在运行解码器时的实际CPU负载。
当使用上述时间缩放用于抖动缓冲器管理时,输出信号的实际帧长度将改变,这带来不同的等式。
增加样本数目,即拉伸信号,意味着解码器将较不频繁地解码帧,且以较低频率从抖动缓冲器消耗帧。较不频繁地解码帧意味着在每秒操作方面解码器的复杂性降低,因为在某一时间周期期间需要解码较少的帧。
减小样本数目,即压缩信号,意味着解码器将较频繁地解码帧,且以较高频率从抖动缓冲器消耗帧。较频繁的帧解码意味着在每秒操作方面解码器的复杂性增加,因为在某一时间周期期间需要解码较多的帧。
具有时间缩放的解码器的复杂性等式将为
其中normalNumberOfSamples(i)是在未使用时间缩放的情况下解码器将已产生且可针对给定帧从解码器获得的样本数目,且producedNumberOfSamples(i)是在已应用时间缩放之后解码器针对给定帧产生的样本数目。
由于复杂性等式(1)未考虑时间缩放自身的复杂性,这可取决于时间缩放请求参数,因此关系实际上不是线性的。但由于通常时间缩放的复杂性比解码器复杂性小得多,因此关系非常接近于线性。
在许多应用中,计算复杂性是必须考虑的主要因素,以便确保良好性能和正确的平台尺寸确定。在例如移动应用中,计算复杂性对电池寿命具有直接影响。即使对于例如电话桥接器等插入式网络元件,硬件可支持的最大通道、即用户的数目与最差情况CPU负载成正比。因此限制最大复杂性是大体上的挑战。大体上,增加的复杂性将提高每个装置的功率消耗。这是不合意的效应,尤其是在当今针对较佳的环境和能量效率的持续努力的情况下。
因此,CompwTS应小于最大可允许的复杂性,因为否则无法控制CPU上的负载且导致例如同步性丢失等不合意的效应,这随后又将导致语音或音频信号在感知的质量上引起烦人的咯声的情况。本发明通过考虑复杂性且因此避免CPU过载的情形来避免上文提到的缺陷。
为了避免复杂性过载的问题,本发明将在发送时间缩放请求之前考虑复杂性信息。举例来说,可对时间缩放进行检查,以便总复杂性将不超过装置或硬件的计算能力。
图7展示基于复杂性评估的抖动缓冲器管理。抖动缓冲器管理实施方案包括媒体调适单元701、调适控制逻辑703、网络分析705、抖动缓冲器711、解码器713。
图8展示基于其中考虑外部复杂性信息的复杂性评估的抖动缓冲器管理。抖动缓冲器管理实施方案包括媒体调适单元801、调适控制逻辑803、网络分析805、抖动缓冲器811和解码器813。
复杂性控制也可为外部控制。举例来说,可针对例如移动电话、平板计算机、PC的复杂性控制来考虑硬件的剩余电池电力。
图9展示基于复杂性评估和具有音调信息的时间缩放的抖动缓冲器管理。抖动缓冲器管理实施方案包括调适控制逻辑903、网络分析905、抖动缓冲器911、解码器913、音调确定单元915和时间缩放单元917。
图10展示基于复杂性评估和频域中的时间缩放的抖动缓冲器管理。抖动缓冲器管理实施方案包括媒体调适单元1001、调适控制逻辑1003、网络分析1005、抖动缓冲器1011、解码器1013、时间缩放单元1017和时间频率转换单元1019。
图11展示基于复杂性评估、SID旗标和具有音调信息的时间缩放的抖动缓冲器管理。抖动缓冲器管理实施方案包括调适控制逻辑1103、网络分析1105、抖动缓冲器1111、解码器1113、音调确定单元1115和时间缩放单元1117。
如果在编码器中激活VAD,那么经编码数据包含SID旗标。对于SID帧,解码器的复杂性比正常帧低得多,且计算音调不是必要的。在此情况下,复杂性评估对于SID帧不是必要的。然而,对于正常帧,可执行复杂性评估以避免复杂性过载。
如果给定帧不是静默帧(SID帧),那么用于复杂性评估的实例如下:
1.确定复杂性参数cp,其可取决于译码模式,例如取样率、位速率或延迟模式,或者可为常数。
举例来说,cp可为常数,即cp=cp_const,
其中cp_const是常数值,例如装置或硬件的最大可接受复杂性。
如果cp取决于取样率、位速率、延迟模式,那么
cp=cp_function(sampling_rate,bitrate,delay_mode),
其中cp_function是用来获得cp的值的函数。
如果cp取决于取样率和位速率,那么
cp=cp_function(sampling_rate,bitrate).
如果cp取决于取样率,那么
cp=cp_function(sampling_rate).
如果cp取决于位速率,那么
cp=cp_function(bitrate_rate).
如果cp取决于delay_mode,例如高延迟或低延迟,那么
cp=cp_function(delay_mode).
然而,cp也可取决于其它编解码器参数或其它的编解码器参数群组。
2.对于包i,必须满足以下等式,如果考虑具有时间缩放的复杂性:
其中dec_CompwoTS(i)是不具有抖动缓冲器管理的解码器的复杂性,其可从解码器获得或通过例如cp等某个函数来估计;且
jbm_CompwoTS(i)是抖动缓冲器管理的复杂性的估计,其可包含音调确定、时间缩放、调适逻辑、缓冲、网络分析中的全部或仅一些。其可为常数或取决于取样率、位速率、延迟模式等等函数,例如cp。
则:
3.如果时间缩放将减少样本数目,那么将减少的样本数目是:
4.如果最大减少的样本数目
步骤4的替代方案可为:
如果最大减少的样本数目
其中pitch_d是小距离,例如pitch_d=1、2或3,那么样本数目将不减少。否则样本数目将减少且前进到步骤5。
5.如果步骤4确定样本数目将减少,那么针对音调确定将使用max(deltaNumberOfSamples(i))的限制作为音调的上限。然而,文献中已知存在很多方法用于确定音调,其中大多数是基于相关性分析。
6.将根据步骤5的音调确定结果来进行时间缩放。
然而,文献中已知存在许多时间缩放方法,其通常包含开窗、重叠并相加。
此外,可能与复杂性相关的一些外部信息,例如电池寿命信息或媒体控制单元MCU中的通道数目,将被馈送到调适控制逻辑以进行复杂性评估。
图12展示基于复杂性评估和外部控制参数的抖动缓冲器管理。抖动缓冲器管理实施方案包括媒体调适单元1201、调适控制逻辑1203、网络分析1205、抖动缓冲器1211、解码器1213。
一个实例类似于上文提到,其中仅有的差异在步骤1中,其中外部控制参数N是用于MCU装置的通道数目,且cp=cp_const/N。
另一实例类似于上文提到,其中仅有的差异在步骤1中,其中外部控制参数0≤bl≤1反映装置的电池寿命,且cp=cp_const·bl。
另一实例类似于上文提到,其中仅有的差异在步骤1中,其中存在两个外部控制参数bl和N,且cp=cp_const·bl/N。
Claims (15)
1.一种语音或音频信号处理器,其用于处理经由通信网络接收的所接收网络包以提供输出信号,所述语音或音频信号处理器包括:
抖动缓冲器(911),其经配置以缓冲所述所接收网络包(105);
语音或音频解码器(913),其经配置以对由所述抖动缓冲器(911)缓冲的所述所接收网络包(105)进行解码以获得经解码语音或音频信号;
可控制的时间缩放器(917),其经配置以修正所述经解码语音或音频信号的长度以获得经时间缩放的语音或音频信号作为输出语音或音频信号;以及
调适控制装置(903),其经配置以取决于处理复杂性指标来控制所述时间缩放器(917)的操作。
2.根据权利要求1所述的语音或音频信号处理器,其中所述调适控制装置(903)经配置以发射指示取决于所述处理复杂性指标来修正所述经解码语音或音频信号的长度的时间缩放请求,以便控制所述可控制的时间缩放器(917)。
3.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述调适控制装置(903)经配置以基于所述处理复杂性指标来确定借以修正所述经解码语音或音频信号的长度的样本数目,且将时间缩放请求发射到所述可控制的时间缩放器(917),且其中所述可控制的时间缩放器(917)经配置以通过所述确定的样本数目来修正所述经解码语音或音频信号的长度。
4.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述处理复杂性指标是通过以下各项中的至少一者来确定:解码复杂性、经时间缩放的语音或音频信号帧的长度、位速率、取样率、延迟模式。
5.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其进一步包括用于存储用于不同经解码语音或音频信号长度的不同处理复杂性指标的存储装置。
6.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述语音或音频解码器经配置以将所述处理复杂性指标提供到所述调适控制装置(903)。
7.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述调适控制装置(903)经进一步配置以取决于抖动缓冲器状态来控制所述可控制的时间缩放器(917)的操作。
8.根据权利要求7所述的语音或音频信号处理器,其中所述抖动缓冲器(911)经配置以将所述抖动缓冲器状态提供到所述调适控制装置(903)。
9.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述调适控制装置(903)经进一步配置以取决于网络包到达速率来控制所述可控制的时间缩放器(917)的操作。
10.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其进一步包括网络到达速率确定器,用于确定所述网络包的包到达速率,且将所述包速率提供到所述调适控制装置(903)。
11.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述可控制的时间缩放器(917)经配置以通过样本数目来修正所述经解码语音或音频信号的长度。
12.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述可控制的时间缩放器(917)经配置以重叠且相加所述经解码语音或音频信号的部分以用于时间缩放。
13.根据前述权利要求中任一权利要求所述的语音或音频信号处理器,其中所述可控制的时间缩放器(917)经配置以将时间缩放反馈提供到所述调适控制装置(903),所述时间缩放反馈向所述调适控制装置(903)告知所述经时间缩放的语音或音频信号的长度。
14.一种用于处理经由通信网络接收的网络包以提供输出信号的方法,所述方法包括:
缓冲所述所接收网络包;
对经缓冲的所述所接收包进行解码以获得经解码语音或音频信号;
取决于处理复杂性指标,以可控制方式修正所述经解码语音或音频信号的长度以获得经时间缩放的语音或音频信号作为输出语音或音频信号。
15.一种计算机程序,其用于当在计算机上运行时执行根据权利要求14所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2011/078868 WO2013026203A1 (en) | 2011-08-24 | 2011-08-24 | Audio or voice signal processor |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103404053A true CN103404053A (zh) | 2013-11-20 |
Family
ID=47745853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011800686858A Pending CN103404053A (zh) | 2011-08-24 | 2011-08-24 | 音频或语音信号处理器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20140172420A1 (zh) |
EP (1) | EP2748814A4 (zh) |
CN (1) | CN103404053A (zh) |
WO (1) | WO2013026203A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104934040A (zh) * | 2014-03-17 | 2015-09-23 | 华为技术有限公司 | 音频信号的时长调整方法和装置 |
CN105207955A (zh) * | 2014-06-30 | 2015-12-30 | 华为技术有限公司 | 数据帧的处理方法和装置 |
US10313416B2 (en) | 2017-07-21 | 2019-06-04 | Nxp B.V. | Dynamic latency control |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2964368C (en) | 2013-06-21 | 2020-03-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Jitter buffer control, audio decoder, method and computer program |
EP3321935B1 (en) | 2013-06-21 | 2019-05-29 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Time scaler, audio decoder, method and a computer program using a quality control |
CN105099795A (zh) * | 2014-04-15 | 2015-11-25 | 杜比实验室特许公司 | 抖动缓冲器水平估计 |
US9779755B1 (en) | 2016-08-25 | 2017-10-03 | Google Inc. | Techniques for decreasing echo and transmission periods for audio communication sessions |
US10290303B2 (en) * | 2016-08-25 | 2019-05-14 | Google Llc | Audio compensation techniques for network outages |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101076989A (zh) * | 2004-10-13 | 2007-11-21 | 高通股份有限公司 | 基于估计延迟的去抖动缓冲器调整 |
CN101305417A (zh) * | 2005-11-07 | 2008-11-12 | 艾利森电话股份有限公司 | 移动电信网络中的方法和装置 |
US20090164655A1 (en) * | 2007-12-20 | 2009-06-25 | Mattias Pettersson | Real-Time Network Transport Protocol Interface Method and Apparatus |
CN101675613A (zh) * | 2007-01-19 | 2010-03-17 | 诺基亚公司 | 改进的缓冲时间确定 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070263672A1 (en) * | 2006-05-09 | 2007-11-15 | Nokia Corporation | Adaptive jitter management control in decoder |
-
2011
- 2011-08-24 CN CN2011800686858A patent/CN103404053A/zh active Pending
- 2011-08-24 EP EP11871237.1A patent/EP2748814A4/en not_active Withdrawn
- 2011-08-24 WO PCT/CN2011/078868 patent/WO2013026203A1/en active Application Filing
-
2014
- 2014-02-24 US US14/187,523 patent/US20140172420A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101076989A (zh) * | 2004-10-13 | 2007-11-21 | 高通股份有限公司 | 基于估计延迟的去抖动缓冲器调整 |
CN101305417A (zh) * | 2005-11-07 | 2008-11-12 | 艾利森电话股份有限公司 | 移动电信网络中的方法和装置 |
CN101675613A (zh) * | 2007-01-19 | 2010-03-17 | 诺基亚公司 | 改进的缓冲时间确定 |
US20090164655A1 (en) * | 2007-12-20 | 2009-06-25 | Mattias Pettersson | Real-Time Network Transport Protocol Interface Method and Apparatus |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104934040A (zh) * | 2014-03-17 | 2015-09-23 | 华为技术有限公司 | 音频信号的时长调整方法和装置 |
CN105207955A (zh) * | 2014-06-30 | 2015-12-30 | 华为技术有限公司 | 数据帧的处理方法和装置 |
CN105207955B (zh) * | 2014-06-30 | 2019-02-05 | 华为技术有限公司 | 数据帧的处理方法和装置 |
US10313416B2 (en) | 2017-07-21 | 2019-06-04 | Nxp B.V. | Dynamic latency control |
Also Published As
Publication number | Publication date |
---|---|
US20140172420A1 (en) | 2014-06-19 |
EP2748814A1 (en) | 2014-07-02 |
WO2013026203A1 (en) | 2013-02-28 |
EP2748814A4 (en) | 2014-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103404053A (zh) | 音频或语音信号处理器 | |
EP2055055B1 (en) | Adjustment of a jitter memory | |
US20130185062A1 (en) | Systems, methods, apparatus, and computer-readable media for criticality threshold control | |
US20070263672A1 (en) | Adaptive jitter management control in decoder | |
CA2792898C (en) | Adaptive audio transcoding | |
US7573907B2 (en) | Discontinuous transmission of speech signals | |
KR20170082901A (ko) | 재생 지연 조절 방법 및 이를 적용한 전자 장치 | |
EP1982332B1 (en) | Controlling the time-scaling of an audio signal | |
US8270391B2 (en) | Method and receiver for reliable detection of the status of an RTP packet stream | |
CN113169904A (zh) | 处理用于针对流式网络协议的时间戳不准确 | |
Cinar et al. | Improved jitter buffer management for WebRTC | |
EP2070294B1 (en) | Supporting a decoding of frames | |
WO2013017018A1 (zh) | 一种进行语音自适应非连续传输的方法及装置 | |
KR101516113B1 (ko) | 음성 복호 장치 | |
WO2020135082A1 (zh) | 一种语音数据处理方法、装置及计算机可读存储介质 | |
Yang et al. | Multipoint communications with speech mixing over IP network | |
JP2005142757A (ja) | 受信装置および方法 | |
EP3343851B1 (en) | Method and device for regulating playing delay | |
Pang et al. | Complexity-aware adaptive jitter buffer with time-scaling | |
Huang et al. | Robust audio transmission over internet with self-adjusted buffer control | |
EP2053765A2 (en) | Apparatus and method for playout scheduling in voice over internet protocol (VoIP) System | |
Färber et al. | Adaptive Playout for VoIP based on the Enhanced Low Delay AAC Audio Codec | |
Boisvert | Minimizing state error propagation in low-bit rate speech codec for voice over IP |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131120 |