Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1699025
  • 博文数量: 1279
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 13084
  • 用 户 组: 普通用户
  • 注册时间: 2018-03-07 16:26
个人简介

Linux学习小标兵,专注Linux资讯分享,技术文章分享

文章分类

全部博文(1279)

文章存档

2023年(236)

2022年(285)

2021年(265)

2020年(248)

2019年(213)

2018年(32)

我的朋友

分类: LINUX

2020-04-20 23:03:24

导读 随着 4G、5G 通信技术发展,网络通话越来越盛行。但是网络不稳定是常态,所以通话中我们时不时可能会蹦出一句,“你能再重复一遍吗,刚刚网络不太好。”

DeepMind技术加持,谷歌用 WaveNetEQ 改善 Duo 音频丢包情况DeepMind技术加持,谷歌用 WaveNetEQ 改善 Duo 音频丢包情况

为了提高通话质量,谷歌近期在视频聊天应用 Duo 中应用了一种新技术 WaveNetEQ ,在出现音频丢包情况时,该技术会判断丢失的音频数据可能是什么,并替换掉它,背后的技术支持来自谷歌声名在外的 DeepMind 团队。

一个完整的在线呼叫,数据经常会被分成多个小块,每小块就是一个数据包 packet 。然而,在这些“数据包”从发送方传输到接收方的过程中,数据包通常会以错误的顺序到达,从而产生抖动相关问题,或者直接丢失,造成音频空白。

谷歌给出一份资料显示, Duo 99% 的通话都有数据包丢失、过度抖动或网络延迟情况。20% 的通话丢失了超过 3% 的音频,10% 的通话丢包率超过 8% ,也就是说每次通话都有很多音频需要替换。

每个视音频 app 都会用某种方式处理丢包。谷歌表示,这些数据包丢失隐藏 (PLC) 过程可能很难更好地填补 60 毫秒或更长时间的空白。过去常用算法是 NetEQ ,这是 webRTC 中音频技术方面的两大核心技术之一(另一核心技术是音频的前后处理,包括 AEC、ANS、AGC 等)。webRTC 是谷歌收购 GIPS 再开源的,是目前影响力极大的实时音视频通信解决方案,但用它处理丢包,大多情况下听起来像机器人或机械重复。

谷歌就用了大量的语音数据,训练出了基于 DeepMind WaveRNN 技术的 WaveNetEQ 模型。训练数据集来自 100 多名、48 种不同语言的志愿者,也就是说它可以自动填补 48 种语言的丢包情况。

WaveNetEQ 是一种用于语音合成的递归神经网络模型,由两部分组成,即自回归网络(autoregressive network)和条件网络(conditioning network)。自回归网络的作用是保持信号的平稳流动,而条件网络控制和影响自回归网络以保持音频一致性。

谷歌用 WaveNetEQ 取代了原来的 NetEQ PLC 组件,相对于 NetEQ ,它在声音质感方面无疑有提升,而且 WaveNetEQ 模型跑得足够快,可以在手机上运行,如此也可以规避用户可能担心的数据隐私问题。谷歌称所有的处理都是在设备上进行,因为 Duo 的通话默认情况下就是端到端加密。一旦通话的真实音频恢复,将无缝地切换到现实对话。

不过,WaveNetEQ 替换的内容和时长有限制。目前是支持在 120 毫秒以内的空白,之后会逐渐消失并归零;WaveNetEQ 不是生成完整的单词,而是简单的音节。

目前 WaveNetEQ 已经应用到 Pixel 4 手机上的 Duo APP 中,谷歌表示,它正在将其推广到其他安卓手机上。

雷锋网了解到,当然用机器学习处理音频丢包并不是头一遭,许多公司都在研究相关技术,以国内公司为例,有些是自身业务本就涉及视音频,比如腾讯;有些是音视频云服务商,比如阿里,还有一些是专门的音视频第三方服务商如声网等。


本文来自《Linux就该这么学》官方资讯站。
阅读(816) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~