写点什么

Lyra- 为移动互联网下一个十亿用户群体启用语音通话

Andrew Storus & Michael Chinen

  • 2021-04-12
  • 本文字数:1290 字

    阅读完需:约 4 分钟

Lyra-为移动互联网下一个十亿用户群体启用语音通话

北京时间 4 月 6 日,谷歌开源了 Lyra。Lyra 是一种新型的音频编码解码器,用于语音的编码和解码。与传统基于 DSP(数字信号处理)技术的编解码器相比,主要优势在于其可以利用机器学习产生高质量的语音呼叫,同时将音频压缩到最小 3 kbps。


据谷歌开源博客介绍,过去一年,由于新冠疫情等原因,在线语音已经变得至关重要并且随处可见,于是在今年 2 月推出了 Lyra。现在,为了让 Lyra 惠及更多人,谷歌选择将 Lyra 开源,以此让更多开发人员可以便捷地使用这一最佳编解码器,增强各类音频应用的功能,同时,推动 Lyra 更快地发展。


目前开源的版本为开发人员提供了所必须的工具,以使用 Lyra 进行音频编码和解码。同时,这一版本针对 Linux 上的 64 位 ARM Android 平台进行了优化。未来将会与社区一起扩展此代码库并开发对更多平台的支持。

Lyra 的架构

Lyra 的架构分为编码器和解码器两部分。当某人对着电话讲话时,编码器先从语音中捕获独特的语音属性(Feature),将这些属性提取为 40ms 的块然后压缩转换成字节流,通过网络发送。字节流传到电话另一端之前,解码器会通过生成模型将语音属性解码回可以在听众电话扬声器里播放的波形。这里的生成模型是一种特殊的机器学习模型,非常适合基于有限的语音属性重新创建完整的音频波形。



(图片来自 Google 开源博客)


Lyra 架构与传统的音频编解码器十分相似,传统的音频编解码器作为互联网通信的骨干力量已经有数十年了,而 Lyra 才诞生。相比之下,传统的编解码器基于数字信号处理技术(DSP)重建语音信号,而 Lyra 基于生成模型重建语音信号,后者优势显著。

Lyra 开源版本详解

为了速度更快,效率更高以及更好的软硬件交互性,Lyra 的开发团队基于 Bazel 构建项目,使用 C++ 编写代码,并使用 GoogleTest 框架做测试。Lyra 的核心 API 提供了可以在文件和数据包级别进行编码和解码的接口。还提供了完整的信号处理工具链,其中包括各种滤波器和变换器。


谷歌开源博客介绍到,我们的 Demo 集成了 Android NDK,展示了如何将本机 Lyra 代码集成到基于 Java 开发的 android 应用程序中,还提供了运行 Lyra 所需的矢量量化器等基础设施。


对于本次版本发布的用意,谷歌开源博客介绍道,我们今天将 Lyra 作为 Beta 版本发布是希望内部开发人员尽快获得使用反馈。除了 KML(核心数学内核库)之外,Lyra 将会根据 Apache 开源协议开放所有运行 Lyra 的代码。

开源之后

在过去十年中,伴随着移动设备的爆发式增长,计算能力的增长已经使得高速无线基础架构的可靠性受到威胁。对于存在这种反差的地区,尤其是发展中国家,当下一个十亿互联网用户群体需要接入网络,他们之间能紧密联系的可能性将会很低。即使在连接高度可靠的地区,远程办公的出现也加剧了移动数据传输的带宽限制。虽然 Lyra 可以将原始音频压缩到 3 kbps,并使其质量优于其他编解码器(例如 Opus),但它的目标不是成为一个完整的替代方案,而是可以在高压缩比,高质量的情况下节省有意义的带宽。


这些趋势为 Lyra 提供了动力,也是开发团队专注于实时语音通信的原因。除此外,Lyra 还有其他一些非常独特的应用,例如存档大量语音,借助高效计算的 Lyra 编码器节省电池,缓解多人试图同时拨打电话的紧急情况下的网络拥塞等等。

2021-04-12 15:117996
用户头像

发布了 74 篇内容, 共 28.9 次阅读, 收获喜欢 83 次。

关注

评论

发布
暂无评论
发现更多内容

并发工具之Semaphore与Exchanger

爱好编程进阶

Java 面试 后端开发

你必须懂也可以懂的微服务系列三:服务调用

爱好编程进阶

Java 面试 后端开发

CDF全球调查:软件交付性能停滞不前

SoFlu-JavaAI开发助手

大爆料!Github上100%好评的Java多线程池面试题

爱好编程进阶

Java 面试 后端开发

Module-3:外包学生管理系统架构设计文档

Jadedev

架构训练营

Oceanbase 和 TiDB 粗浅对比之 - 执行计划

TiDB 社区干货传送门

为拿几家大厂Offer,“闭关修炼

爱好编程进阶

Java 面试 后端开发

开发者工具 Top 100 名单

爱好编程进阶

Java 面试 后端开发

10分钟快速入门RDS

乌龟哥哥

4月月更

不同研发协作模式在云效中的应用

阿里云云效

云计算 阿里云 云原生 研发 研发协作

刚拿的字节跳动offer“打水漂”

爱好编程进阶

Java 面试 后端开发

分布式shiro权限验证 二

Rubble

4月日更

移动平台WorkPlus集成化办公,打造企业全场景业务生态

WorkPlus

再谈企业信息化的本质

秋去冬来春未远

信息化本质

「內元宇宙」革命 聯載

因田木

元宇宙 我富國 創世紀 陰陽五行 股權去中心化

为什么switch里的case没有break不行

爱好编程进阶

Java 面试 后端开发

别找了,这是迄今为止把微服务讲的最清楚的一篇!没有之一

爱好编程进阶

Java 面试 后端开发

工作总结!日志打印的15个建议

爱好编程进阶

Java 面试 后端开发

性能调优篇:困扰我半年之久的RocketMQ timeout exception 终于破解了

爱好编程进阶

Java 面试 后端开发

你知道Java是如何解决可见性和有序性问题的吗?

爱好编程进阶

Java 面试 后端开发

华为18级大牛整理总结:微服务设计和分布式服务框架原理实践文档

爱好编程进阶

Java 面试 后端开发

大数据基础处理框架

爱好编程进阶

Java 面试 后端开发

大量示例彻底搞懂Linux查找,which,whereis

爱好编程进阶

Java 面试 后端开发

字节奋战7年,回头一看只剩下这份1857页的算法笔记了

爱好编程进阶

Java 面试 后端开发

基于华为云图像识别标签

乌龟哥哥

4月月更

观测云登陆阿里云计算巢,共建ISV新生态

观测云

可观测性 可观测

历经4轮2小时,终于斩下美团offer!

爱好编程进阶

Java 面试 后端开发

图文并茂 教你在IDEA中如何一键生成代码,提高开发效率!

爱好编程进阶

Java 面试 后端开发

LAXCUS分布式操作系统冗余容错之节点篇

LAXCUS分布式操作系统

分布式系统 冗余 集群容灾

单例模式你不得不知道的底层原理

爱好编程进阶

Java 面试 后端开发

哪路神仙写的421页MySQL高级笔记,涵盖MySQL所有技术!太香了

爱好编程进阶

Java 面试 后端开发

Lyra-为移动互联网下一个十亿用户群体启用语音通话_语言 & 开发_InfoQ精选文章