首页 > 其他分享 >SoundStream VS Lyra: 谷歌今年新推出的两款AI音频编解码器有何不同?

SoundStream VS Lyra: 谷歌今年新推出的两款AI音频编解码器有何不同?

时间:2023-06-13 13:35:14浏览次数:77  
标签:音频 比特率 有何 SoundStream 编解码器 语音 Lyra


作者 | Teresa、王晶

技术审校 | 王晶、王立众

SoundStream

 影音探索

#001#

近日,谷歌又推出了一款基于人工智能的音频编解码器—— SoundStream ,它是一款端到端的神经音频编解码器,可以提供更高质量的音频,同时编码不同的声音类型,包括干净的语音、嘈杂和混响的语音、音乐和环境声音。并且,谷歌宣布这是第一个支持语音和音乐的AI编解码器,同时能够在智能手机CPU上实时运行。

 

早在今年2月份的时候谷歌就已推出了 Lyra ,一种用于低比特率语音的编解码器,也是基于人工智能对音频进行压缩的(我们在《在3kbps的带宽下还能清晰地语音聊天?》这篇文章中介绍过,大家可以回顾一下)。并在4月份,谷歌宣布对Lyra Android版进行开源,我们正好通过邮件采访到了负责这个项目的产品经理Jamieson Brettle以及主管工程师Jan Skoglund(采访内容大家可以查看《Google Lyra Android版开源 支持3kbps语音聊天》)。

SoundStream V.S. Lyra

现在时隔4个月,谷歌新推出的SoundStream与其之前发布的Lyra又有什么不同呢?

1.网络条件

首先,Lyra强调的是即使在恶劣的网络条件下,也能进行清晰的实时语音通信。所以它更关注在窄带通信情况下的语音传输。(Lyra在3kbps带宽下对比Opus@6kbps,语音输出的质量效果明显优于后者)

 

而SoundStream不仅关注低比特率传输带宽,并且能在广泛的比特率范围内提供高质量的音频输出。(这里列出了Lyra与SoundStream同样在3kbps带宽下,对语音和音乐的处理对比示例)

语音:

 

音乐:

这里可以明显感受到在比特率(3kbps)相同的网络条件下,无论是语音还是音乐,SoundStream的输出效果都更优于Lyra。另外,谷歌还表示比特率为3kbps的SoundStream的语音质量要优于12kbps的Opus,并且接近9.6kbps的EVS,而与此同时它的压缩效率还提升了3.2-4倍,这意味着在使用SoundStream进行音频编码时可以输出与Opus和EVS同样的音频质量,而所使用的传输带宽量却比这二者要低得多。

 

2.编解码器架构

在听完SoundStream和Lyra在相同网络条件下音频效果的对比后,我们来聊一聊二者的架构有何不同。尽管谷歌将SoundStream作为Lyra的一个扩展版本,但它们在压缩音频的过程中却有很大的区别。

 

  • SoundStream

SoundStream VS Lyra: 谷歌今年新推出的两款AI音频编解码器有何不同?_人工智能

SoundStream 模型架构图

 

简单来说,SoundStream由包含编码器、解码器和矢量量化器的神经网络组成,都是以端到端的模式去训练。神经编码器将输入的音频流转换为编码信号,再使用特定的矢量量化器进行流数据压缩,最后使用解码器将其转换回音频。SoundStream主要创新点在于使用了残差矢量量化器(Residual Vector Quantizers, RVQ)进行数据压缩,全卷积编码器所生成的向量会带有无限的数量值,为了使得其能够以有限数量的比特流传输到解码器进行解码,必须进行矢量量化,而简单的矢量量化解决不了3 kbps的情景下的超量的码本存储问题,所以SoundStream团队提出的RVQ从第二层开始,每一层都处理前一层的残差,实现层级递进的量化过程,不同数量层的RVQ可以在不同程度上大幅度减少码本的大小,由于量化层可扩展,研究者也可以分别通过添加或删除量化层来轻松增加或减少比特率。在模型训练过程中,SoundStream采用重构损失和对抗损失的组合损失函数对模型参数进行优化,计算损失函数组合的鉴别器使恢复的声音尽可能接近原始未压缩音频。一旦训练完成,编码器和解码器都能够在单独的客户端上运行,并通过网络去高效地传输高质量音频。所以在模型推理部署上,编码器和矢量量化器在发送端,发送压缩后的比特流到接收端,然后接收端的解码器再对音频信号进行解码形成高质量音频。

  

  • Lyra

SoundStream VS Lyra: 谷歌今年新推出的两款AI音频编解码器有何不同?_深度学习_02

Lyra 模型架构图

 

Lyra的架构相对来说比较简单。它主要是由编码器和解码器组成,与传统的参数音频编解码器非常相似。不同的是它会每40ms从输入的语音中提取一次特征或独特的语音属性,然后对其进行量化,最后通过生成模型对这些量化后的语音特征来重新创建语音信号,输出音频。Lyra旨在提取少量的语音数据来重建语音,并在保证低比特率的同时实现高质量的语音传输。另外,谷歌推出的新生成模型也是Lyra中的一大亮点。这里用到的新生成模型是一种低成本的递归生成模型,是一种WaveRNN的变体,它以较低的速率工作,但在不同的频率范围内能够并行生成多个信号,然后在特定的采样率下将这些信号合并成单个输出信号。此生成模型在数千小时的语音数据中进行训练,并像WaveNet一样进行优化,以准确地再现输入音频。

 

通过对SoundStream和Lyra在模型架构中的分析可以看出,SoundStream更注重在编码端对编码信号使用残差矢量量化压缩;Lyra则是既关注编码端对语音特征的提取,又关注解码端使用生成模型重建语音。

 

从AI建模角度来看,Lyra主要通过生成模型重建高质量语音信号,而SoundStream借鉴了自编码网络,构建一种端到端的模型,两者都是从数据驱动角度出发,不依赖于传统的信号处理。Lyra目前看只是针对语音信号进行设计,而在SoundStream的框架下可以同时进行语音和音频信号的压缩和增强。

 

3.支持类型&目前情况

SoundStream相比Lyra有一些新的特点,例如压缩效率更高,支持语音和音乐等多种类型信号,可同时兼顾压缩和增强,尤其在低比特率下性能表现更好。Lyra则仅针对语音信号的处理。

 

目前,Lyra已对Android进行开源,而SoundStream仍处于试验阶段。谷歌计划将SoundStream整合到下一个版本的Lyra 中,并认为这种集成将利用现有的 API 和工具让开发人员在他们的项目中获得更好的音质和灵活性。

 

传统 V.S. 人工智能音频编解码器

关于传统音频编解码器与AI音频编解码器的最大区别在于前者依赖于传统的数字信号处理技术和语音生成模型;后者是从数据驱动角度、从大批量声音数据中学习和预测,因此AI音频编解码器很大程度上依赖于模型训练与测试的完备性。

 

    小结

自从谷歌推出Lyra就引起业界的关注,尤其引起了AI语音编码的研究热点。其在3kbps的低比特率下表现出比传统编码器更优的性能,可以将音频压缩到3kbps左右而保持与其他音频编解码器类似的质量,属于一种低比特率的神经网络语音编码器。

 

这次谷歌又推出的SoundStream仍然是基于神经网络编码方式,在低比特率下有优势,是首个可以处理语音和音乐的AI编码器。据谷歌的发布情况看,它的复杂度应该有较大降低,可以运行在智能手机,推动了AI编码器的实际应用。

 

SoundStream集成了Lyra在低比特率“语音”方面的能力,还具有对更多声音类型的编码支持,包括清晰的语音、嘈杂的语音、带有回声的语音、音乐和环境声音等。在相同的比特率下,从谷歌目前的测试结果来看SoundStream的性能比当前版本的Lyra效果更好,并且优于同等比特率下的其它多种编解码方式如Opus、EVS等,甚至超过传统编码器在更高速率下的效果。从文献上来看,目前对SoundStream编码器的性能测试使用最多的还是合成语音的数据库,比较期待其对于手机语音通信等场景下的广泛测试和对比结果。

 

未来是单纯的数据驱动AI建模效果好,还是传统信号处理与AI建模相结合的方式好,还有待于深入研究和广泛测试。另外很期待看到SoundStream的实际应用表现。

参考文章:

 

https://ai.googleblog.com/2021/08/soundstream-end-to-end-neural-audio.html

 

https://ai.googleblog.com/2021/02/lyra-new-very-low-bitrate-codec-for.html

 

https://venturebeat.com/2021/08/12/googles-soundstream-codec-simultaneously-suppresses-noise-and-compresses-audio/

 

https://fossbytes.com/google-soundstream-neural-audio-codec/

特别说明:本文部分内容来自北京理工大学信息与电子学院 副教授,博士 王晶,并为此文进行技术审校,特此感谢。此外,还要感谢业内人士 王立众老师对本文进行技术审校。


标签:音频,比特率,有何,SoundStream,编解码器,语音,Lyra
From: https://blog.51cto.com/u_13530535/6469047

相关文章

  • 从Satin到Lyra 为何微软、谷歌都盯向音频编解码器?
    回顾今年的2月份,可以说是音频编解码器最为热闹的一个月。先是微软宣布推出最新款由AI支持的音频编解码器——Satin。仅一周后,谷歌推出了用于语音压缩的新型超低比特率音频编解码器——Lyra,并且Android版本已开源。在此,也非常感谢来自国内音频领域的知名业内人士对本文发表评论及审......
  • ptr->a()和 (*ptr).a()有何不同
    标准中对于类成员访问有如下说明:3IfE1hasthetype“pointertoclassX,”thentheexpressionE1->E2isconvertedtotheequivalentform(*(E1)).E2;即对于指向classX类型的指针,E1->E2会被转化成等价的形式(*(E1)).E2,那么对于编译器而言会产生相同的代码,对于机器而言就......
  • 渗透测试、漏洞扫描、代码审计指什么?三者有何区别?
    在网络安全体系中,渗透测试、漏洞扫描、代码审计都是非常重要的存在,属于三种不同的安全评估类型,那么渗透测试、漏洞扫描、代码审计三者区别是什么?本文为大家简单介绍一下。漏洞扫描是指基于漏洞数据库,通过扫描等手段对指定的远程或者本地计算机系统的安全脆弱性进行检测,发......
  • 市场规模超百亿 低代码与传统IT开发有何不同
    近年来,低代码开发作为软件开发方法的趋势十分显眼。据统计低代码开发市场到2025年预计将实现28.1%的大幅增长率,达到455亿美元的价值。这一显著增长表明各种行业和各种规模的应用对低代码平台的青睐十分明显。与此同时,关于低代码的话题甚嚣尘上,不少人将低代码开发与传统IT开发相提并......
  • 好用的统计软件是哪些?这个软件有何优势,以下列举几个常见的
    好用的统计软件有很多,以下列举几个常见的:Datainside:数据中心低代码搭建平台,个人用户免费使用。SPSS:SPSS是一个专业的统计软件,界面简洁易用,功能强大。它可以进行多种统计分析,包括描述性统计、方差分析、T检验、回归分析等,适合于各个领域的数据分析和研究。SAS:SAS也是一个广泛......
  • hashmap怎么解决哈希冲突问题?红黑树和AVL树有何区别?
    链地址法hashmap是一种基于数组和链表(或红黑树)的数据结构,它可以通过hash函数将任意长度的键映射到一个固定长度的索引,从而实现快速的存取操作。但是,由于hash函数的结果是有限的,而键的数量是无限的,所以可能存在不同的键映射到同一个索引的情况,这就叫做哈希冲突。为了解决哈希冲突,has......
  • LayerZero有何发展潜力?空投热潮和大额融资双重加持!
    前言近期Arbitrum的如愿空投再次点燃了市场「刷空投」的热情,除了ZK系的zkSync、Starknet及Scroll,也有部分用户将注意力投向了估值30亿美元的LayerZero。而 LayerZero刚刚完成的1.2亿美元B轮融资也让其市场热度持续攀升,在「空投热潮」及「大额融资」双向加持下,LayerZero有何发展潜......
  • HTML 里 img 元素的 src 和 srcset 属性有何区别?
    在HTML中,img元素通常用于在网页中插入图片。img元素有两个相关的属性:src和srcset。src属性指定图像的URL,它是必需的。浏览器将使用该URL加载图像并将其显示在页面上。srcset属性允许您指定一系列不同大小或分辨率的图像文件,以便浏览器可以根据设备的像素密度和屏幕大......
  • 白酒生产智能监控及数字化管理平台有何功能
    白酒是我国特有的酒种,各区不同的生产工序营造了不同的口味,受到不同消费者的喜爱。随着工业技术的进一步发展,酿酒行业逐步将自动化技术引入到传统的酿酒工艺中,在甄配料、蒸煮馏酒、摊凉加曲及包装等工段都实现自动化控制,对于提高生产效率、提升产品品质都有积极作用。自动化基础逐渐......
  • Rust、Go 和 Swift 在性能和并发性方面有何差异?
    Rust是一种系统编程语言,旨在快速、安全和并发。其性能令人印象深刻,可以生成快速高效的机器代码。Rust 的编译器使用 LLVM 基础架构,它针对目标架构优化了代码。此外,Rust 的所有权和借用系统确保内存得到有效管理,没有任何运行时开销。Rust的并发模型是基于actor模型的,也就是说并......