对音频流进行编码制造技术

技术编号:18611664 阅读:24 留言:0更新日期:2018-08-04 23:19
音频流被编码以经由通信信道发送给接收设备。要被发送的音频流在处理器上执行的音频编码器处被接收。处理器具有一定量的可用处理资源。通信信道的可用带宽被确定。基于所确定的带宽,可用处理资源的一部分被分配给音频编码器。如果所确定的带宽低于带宽门限,则所分配的部分更大。音频编码器使用处理资源的所分配的部分对音频流进行编码,以及经由通信信道将经编码的音频流发送给接收设备。

【技术实现步骤摘要】
【国外来华专利技术】对音频流进行编码
技术介绍
音频流可以经由通信信道从发送设备(例如,用户设备或媒体服务器)发送给接收设备(例如,另一用户设备)。通信信道可以例如是在通信网络上的信道,例如基于分组的通信网络,例如因特网。例如在通过网络进行的呼叫中,传输可以基于VoIP(IP语音)技术。也就是说,音频流可以作为两个或更多个用户之间的呼叫的部分或经由网络进行的其他一些其他实时媒体通信事件来发送。为了使通信事件能够发生,接收设备的用户可以在接收设备上执行通信客户端的实例。通信客户端设立必要的VoIP连接以允许在通信事件期间与发送设备进行通信。发送设备也可以是其上通信客户端的另一实例被执行的用户设备。替代地,发送设备可以是媒体服务器;例如,在三个或更多个用户之间的群组呼叫(会议呼叫)中,每个用户可以将他们的音频流发送给媒体中继服务器,并且因此服务器可以选择性地混合接收到的音频流以发送给参加会议呼叫的其他用户。在本公开内容的上下文中,音频流意指被流式传输给接收设备的音频数据,由此当音频数据在接收设备处被接收时,可以在接收设备处播放音频数据,即使后续音频数据的传输继续发生。这与例如下载到接收设备的音频数据形成对比,其可能以小于其比特率的传输速率被发送,使得接收设备的用户在他们可以开始其播放而无需缓冲制品之前需要等待音频的全部(或至少大部分)被下载。在音频数据被流式传输的情况下,实际上可能在接收设备处存在对接收到的音频数据的一些缓冲。例如,如果音频数据是以每帧为基础被编码的,则接收的音频数据可以被缓冲以允许在它们被解码和播放之前接收整个帧。替代地或另外地,可以使用一些缓冲来为音频数据的不同片段(例如,不同的音频帧)的到达时间的变化(有时被称为抖动)提供鲁棒性。音频流可以在由音频编码器发送之前被编码。音频编码器可以用软件来实现,即被实现为在处理器上执行的代码。处理器可以由一个CPU或多个CPU构成。处理器具有一定量的可用处理资源,其指代处理器的每单位时间(例如,每秒)可用的时钟循环的数量,并且可以例如用例如Hz、MHz或GHz等来表达。音频编码器可以进行操作以通过向其应用压缩算法来降低未编码的音频流的比特率。压缩算法可以包括:无损压缩(例如,熵编码),由此信息不会由于编码而从音频流丢失;有损压缩,由此信息选择性地从音频流被丢弃;或有损和无损压缩的组合。从音频流丢弃信息允许其比特率被降低,但可能以降低经编码的音频流的感知质量(即,如由消费经编码的音频流的用户感知的音频质量)为代价。注意到,术语“编码”和“压缩”在本文中关于音频流被可交换地使用。不同的压缩算法可以是能够达成等效的比特率降低的,但是就感知质量的降低而言具有不同的代价。例如,更复杂的压缩算法可以是能够更仔细地选择如何从音频流丢弃信息的,并且因此可以是能够达成音频流的比特率的期望降低的,同时与他们较不复杂的对应物相比,使感知质量的降低最小化。另一方面,更复杂的压缩算法与他们较不复杂的对应物相比可能具有更大的算法复杂度,使得他们与他们较不复杂的对应物相比需要更大部分的可用处理资源。算法复杂度是对算法处理给定数量的输入比特所需的处理器时钟循环的数量的测量,并且可以使用所谓的“大O”记号来表达,其中,在该上下文中O(N)表示由编码器编码N比特音频所需的时钟循环的近似数量。为了简洁起见,算法复杂度在本文中简称为复杂度。某些音频编码器提供了不同复杂度的多个音频编码模式,由此,与更低复杂度模式相比,更高复杂度模式消耗更多的处理资源。具有该功能的目前可用的音频编解码器包括例如Silk和Opus编解码器。
技术实现思路
本领域中已知的是,通过将更多处理资源分配给在处理器上执行的音频编码器,例如通过在可用的情况下选择音频编码器的更高复杂度编码模式或通过一些其他资源分配单元,可能的是在一定程度上增加由编码器生成的经编码的音频流的感知质量,这是因为增加的分配允许编码器应用更复杂的压缩。然而,本公开内容认识到,虽然可以通过在编码器被限制为以相对低的输出比特率操作时增加分配给音频编码器的处理资源的量来达成经编码的音频流的感知质量的显著增加(输出比特率是由编码器生成和输出经编码的音频流比特的速率),但是作为对比,当编码器自由地以相对高的输出比特率操作时,分配的处理资源的量的等效增加可能带来感知音频质量的最佳边际改善。换言之,本公开内容认识到,以具有对感知音频质量产生极小的影响的更高输出比特率来减少被分配以供编码器使用的处理资源的量。本主题在对音频流进行编码以经由通信信道发送给接收设备的上下文中利用这一点,以在一方面使用于对音频流进行编码的处理资源的量最小化与另一方面使所得的经编码的音频流的感知质量最大化之间提供平衡。要被发送的音频流在处理器上执行的音频编码器处被接收。处理器具有一定量的可用处理资源。通信信道的可用带宽被确定。基于所确定的带宽,将可用处理资源的一部分分配给音频编码器。与如果所确定的带宽高于带宽门限相比,如果所确定的带宽低于带宽门限,则所分配的部分更大。音频编码器使用处理资源的所分配的部分对音频流进行编码,以及经由通信信道将经编码的音频流发送给接收设备。可用带宽构成经编码的音频流的经编码的音频数据可以经由通信信道被发送的最大速率,并因此对音频编码器的输出比特率(即,对每一时间单位可以由音频编码器输出并经由通信信道流式传输的经编码的音频流的经编码的音频数据的量)施加上限。随着带宽减小,上限降低。因此,在更高的带宽下,音频编码器可以自由地以更高的输出比特率操作,并且(如由本公开内容认识到的)因此能够使用更少的处理资源来使感知音频失真最小化。然而,在相对低的信道带宽下,编码器被限制以更低的输出比特率操作,并且因此需要更多的处理资源以能够保持感知音频质量的可接受的水平。换言之,编码器能够在更高的带宽处利用更少的处理资源达成感知音频质量的可接受的水平,这是因为在那种情况下更高的输出比特率可以用于编码。注意到,提供本概括是为了以简要形式介绍在以下详细描述中被进一步描述的对构思的选择。本概括并不意在标识所主张的主题的关键特征或基本特征,也不意在用于限制所主张的主题的范围。此外,虽然在本概括中阐述了本主题的某些技术效果,但是主题不在该方面受限,并且其他技术效果可以在各种实施例中被达成,例如但不限于在详细描述中描述的那些技术效果。附图说明为了更好地理解本主题并且示出可以如何实现本主题的实施例,通过示例的方式仅对以下附图进行参考,其中:图1示出了通信系统的示意性框图;图2示出了示出通信网络的分层架构的示意性框图;图3示出了由媒体服务器实现的编码系统的功能模块;图4示出了用于对音频流进行编码的方法的流程图;以及图5示出了用户设备的示意性框图。具体实施方式群组音频和视频呼叫可以被托管在服务器上。来自多个参与者的音频在服务器处被混合在一起、编码、打包并发送给参与者。利用现代编解码器(例如,Silk和Opus)的音频编码是CPU密集型的,这是因为他们旨在在低比特率下达成高感知音频质量。音频编码器的复杂度直接影响可以在服务器上托管的会议数量。以下描述了动态管理编解码器复杂度以改善服务器规模并对质量产生极小的影响的方法。该方法提供了服务器规模和音频质量之间的最佳折衷。诸如Silk和Opus之类的现代编解码器通常支持多个复本文档来自技高网
...

【技术保护点】
1.一种对音频流进行编码的方法,包括以下步骤:在处理器上执行的音频编码器处接收要经由通信信道被发送给接收设备的音频流,所述处理器具有一定量的可用处理资源;确定所述通信信道的可用带宽;基于所确定的带宽,将所述可用处理资源的一部分分配给所述音频编码器,其中,如果所确定的带宽低于带宽门限,则所分配的部分更大;由所述音频编码器使用处理资源的所分配的部分对所述音频流进行编码;以及经由所述通信信道,将经编码的音频流发送给所述接收设备。

【技术特征摘要】
【国外来华专利技术】2016.01.07 US 14/990,6581.一种对音频流进行编码的方法,包括以下步骤:在处理器上执行的音频编码器处接收要经由通信信道被发送给接收设备的音频流,所述处理器具有一定量的可用处理资源;确定所述通信信道的可用带宽;基于所确定的带宽,将所述可用处理资源的一部分分配给所述音频编码器,其中,如果所确定的带宽低于带宽门限,则所分配的部分更大;由所述音频编码器使用处理资源的所分配的部分对所述音频流进行编码;以及经由所述通信信道,将经编码的音频流发送给所述接收设备。2.根据权利要求1所述的方法,其中,通过以下操作来执行所述分配步骤:基于所确定的带宽来选择所述音频编码器的具有不同复杂度的多个编码模式中的一者,以及将所述编码器配置为在所选择的编码模式下进行操作以对所述音频流进行编码;其中,如果所确定的带宽低于所述带宽门限,则选择所述编码模式中的需要所述可用处理资源的所述更大部分的更高复杂度编码模式。3.根据权利要求1或2所述的方法,其中,响应于在所述分配之后发生的所确定的带宽的增加,所述处理资源的所分配的部分被减少。4.根据权利要求2和3所述的方法,其中,通过以下方式来减少所述可用处理资源中的被分配给所述音频编码器的所述部分:响应于所确定的带宽的所述增加,将所述音频编码器切换到所述编码模式中的仅需要所述可用处理资源中的经减少的部分的更低复杂度编码模式。5.根据权利要求3或4所述的方法,其中,如果所确定的带宽随后从低于所述带宽门限的值增加,则仅当递增的带宽达到不同的带宽门限时,才减少所述处理资源中的被分配给所述音频编码器的所述部分。6.根据权利要求3、4或5所述的方法,其中,所述音频编码器是在所述处理器上执行的通信客户端的部件,并且所述可用处理资源中的通过所分配的部分的所述减少而变得可用的至少一些处理资源被重新分配给在所述处理器上执行的所述通信客户端的另一软件模块。7.根据任一前述权利要求所述的方法,其中,所述处理资源中的被分配给所述音频编码器的所述部分以不大于独立于所述可用带宽的最大分配变化率的速率被改变。8.根据任一前述权利要求所述的方法,其中,当所述音频流初始在所述音频编码器处被接收时,所述可用处理资源的所述部分独立于所述可用带宽被初始地分配给所述音频编码器,并且然后响应于随后确定所述可用带宽低于所述带宽门限而被增加。9.一种计算机系统,其包括:网络接口,其用于经由通信信道与接收设备进行通信...

【专利技术属性】
技术研发人员:S·斯里尼瓦桑李明杰
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1