0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么做一款抗丢包音频编解码器?

BYXG_shengwang 来源:声网Agora 2019-11-19 16:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

10 月 24 日,RTC 2019 第五届实时互联网大会在北京悠唐皇冠假日酒店如期举行。在下午的编解码技术专场上,声网Agora技术VP高泽华正式宣布,开源声网自研抗丢包音频编解码器Agora SOLO。

目前,编解码器的源代码已经开源在 Github

为什么做一款抗丢包音频编解码器?

在近些年比较火的应用场景有这么几类:游戏,比如多人在线对战游戏、狼人杀等,多人组队,还需要实时语音;互动直播,比如主播与观众连麦、主播与其他主播进行跨直播间连麦,需要实时的互动;在线教育,其中有很多细分的场景,1 对 1、1 对多、双师等,在当前互动网络教育中最难解决的问题还是实时性,就是老师跟学生怎么能够更好的互动。 以上这些实时互动场景,在当前网络环境下,给技术提出了更高的要求,既要低延时,又要实现高质量的音视频互动。但是,如果承载信息的包没有按时到达,即出现丢包,就会产生声音断断续续、音质低等情况,直接影响实时互动的质量。然而,传统的抗丢包策略不是会浪费带宽,就是会影响音频质量,所以我们结合信源和信道编码的特点,利用充分包交换网络的特性,基于此,研发出了声网新的编解码器——Agora SOLO。

Agora SOLO 是什么?

Agora SOLO(以下简称“SOLO”)是由声网Agora自主研发的一款面向不稳定网络的音频编解码器,它以 Silk 为基础,融合了带宽扩展(BWE)和多描述编码(MDC)等技术,使其能在较低复杂度下拥有弱网对抗能力。SOLO 编解码器兼容WebRTC,可集成到基于 WebRTC 自主研发的产品中。

图 1. SOLO编码器架构

图2. SOLO解码器架构

SOLO的抗丢包策略与传统方法不同。从通信原理来说,信源编码是尽可能去追求高压缩比,去冗余。而信道编码是追求强纠错,靠加冗余来实现纠错。Agora SOLO就是把加冗余和减冗余结合起来,不重要的地方减冗余,重要的地方加冗余。 在传输过程中,它会将一个包拆分为两个进行传输,如果对端收到其中一个,则解码恢复出一个有限失真的信号;如果对端收到两个包,则可解码恢复出一个高质量的信号。即 SOLO不需要等待对当前网络丢包状态的统计,只需要直接把抗丢包做到编解码内部。好处有三点:1.可实现更低延时;2.可实现更高质量,当收到一个包时质量达到的普通编解码器水平,收到两个包达到高质量编解码水平;3. 可面向多人环境。

SOLO 关键技术

01 带宽扩展

SOLO 使用带宽扩展的主要原因是希望减少计算复杂度,在 Silk WB 模式中,16khz 的信号都会进入后续处理模块,而对于语音来说,8khz 以上的信息是非常少的,这部分信息进入到后续处理模块,会带来一定的计算资源浪费。MDC 因为要引入额外分析模块处理多条码流,又会引入额外的复杂度,这是 MDC 在近些年来落地不顺畅的重要原因之一。为了减少复杂度,我们在编码宽带信号前,将其分为 0-8k 的窄带信息和 8-16k 的高频信息。只有窄带信息会进入到后续正常分析、编码流程中,这样后续的计算量就减少了一半,同时得益于带宽扩展算法,整体质量不会有明显下降。高频信息部分,SOLO 使用独立的分析与编码模块,默认将高频信息压缩成 1.6kbps 的码流。这部分高频信息可以在解码器内结合低频信号恢复出高频信号。

02 结合 delay-decision 的 MDC

在 Silk 中,delay-decision 模块是一个滞后计算编码误差的模块,它可以从多个候选码流中选择误差最小的码流作为编码输出,一定程度上来说,它使得标量量化拥有了矢量量化的性能。SOLO 利用 delay-decision 模块,实现了多描述码流的分析与构建。SOLO 的MDC主要作用于滤波器输出的残差信号, SOLO 会根据当前信号状态,对残差信号做多增益控制:计算出 MD 增益 a(0

图 3. 多描述残差信号产生

随后,这两段残差信号会进入到新的 delay-decision 模块中,每个残差信号使用不同的抖动和量化方法,一共可以产生 8 种不同的备选状态,两两组合起来共有 64 种备选合成状态,新的 delay-decision 模块会对每个残差信号的独立误差和两个残差信号的合成误差进行加权求和,决定出最佳的两个残差信号进入到编码模块。

03 输出码流组包

图 4. 编码器码流整合及组包

SOLO 默认配置为每次输入 40ms(2 帧),输出两段互补的多描述码流,解码器接收到任一段码流,即可解码出 40ms 的信号。为了方便接收端区分码流的顺序,码流第一个字节的右数第 4 个 bit 是码流顺序标志位,第一段码流标志位的值是 0,第二段码流标志位的值是 1。接收端在进行码流处理时,可依据此标志位进行码流顺序判断。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 解码器
    +关注

    关注

    9

    文章

    1204

    浏览量

    42894
  • 音频
    +关注

    关注

    31

    文章

    3137

    浏览量

    84972

原文标题:声网Agora开源抗丢包音频编解码器Agora SOLO

文章出处:【微信号:shengwang-agora,微信公众号:声网Agora】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于E203 RISC-V的音频信号处理系统 -CODEC(音频编解码器)配置

    CODEC介绍 本设计采用的音频编解码器是WM8731,该编解码器可以通过I2C进行寄存配置,可以调节主从模式、数据位数可设置为16bit、24bit、32bit。可以设置的传输模
    发表于 10-28 06:29

    集成了32位RISC处理和SPDIF音频接口的音频编解码

    音频编解码器的工作原理主要涉及将音频信号转换为数字格式并进行压缩处理,以实现高效存储和传输。
    的头像 发表于 10-11 09:52 513次阅读
    集成了32位RISC处理<b class='flag-5'>器</b>和SPDIF<b class='flag-5'>音频</b>接口的<b class='flag-5'>音频</b><b class='flag-5'>编解码</b>

    新唐科技推出低延迟音频编解码器NAU88L21C

    Audio CODEC (Audio Coder-Decoder) 是音频编解码器”,主要功能是进行音频信号的编码(压缩)和解码(解压)。在音频
    的头像 发表于 09-30 09:25 5671次阅读
    新唐科技推出低延迟<b class='flag-5'>音频</b><b class='flag-5'>编解码器</b>NAU88L21C

    增强T-BOX设计,新唐编解码器的重要作用

    。 T-BOX音频架构: T-BOX 音频架构的主要特点包括: 独立电源管理系统 双麦克风音频处理 编解码器、D类音频放大器和车载信
    发表于 09-05 06:26

    如何使用 M487 微控制和外部音频编解码器NAU88L25将 AMR 格式的声音录制到 MicroSD 卡中?

    使用 M487 微控制和外部音频编解码器NAU88L25将 AMR 格式的声音录制到 MicroSD 卡中
    发表于 08-20 06:28

    一款低功耗、高质量的24位立体声编解码器-CJC8972

    24位立体声编解码器通过数字信号处理实现高精度音频编码与解码,核心在于对立体声信号的数字化处理及还原。
    的头像 发表于 08-07 09:22 1041次阅读
    <b class='flag-5'>一款</b>低功耗、高质量的24位立体声<b class='flag-5'>编解码器</b>-CJC8972

    Texas Instruments TAC5x42接口编解码器数据手册

    Texas Instruments TAC5x42接口编解码器包括低功耗立体声音频模数转换 (ADC) 和音频数模转换器 (DAC),集成了丰富的功能。这些支持时分复用 (TDM)、
    的头像 发表于 07-14 14:43 578次阅读
    Texas Instruments TAC5x42接口<b class='flag-5'>编解码器</b>数据手册

    Texas Instruments TAC5311-Q1汽车单声道音频编解码器数据手册

    Texas Instruments TAC5311-Q1汽车单声道音频编解码器一款低功耗单声道编解码器,具有10V~RMS ~差分输入、104dB ADC和2V~RMS~ 差分输出、
    的头像 发表于 07-09 15:35 703次阅读
    Texas Instruments TAC5311-Q1汽车单声道<b class='flag-5'>音频</b><b class='flag-5'>编解码器</b>数据手册

    CYW20721内置的所有编解码器类型有哪些?

    您能告诉我们 CYW20721 内置的所有编解码器类型吗? LDAC、LC3(LE 音频)、AAC、SBC 等。
    发表于 06-27 08:03

    AI玩具爆发,音频编解码器如何满足语音交互需求

    电子发烧友网综合报道,在AI玩具已经开始逐渐爆发的当下,人机交互已经成为标配功能,而最重要的便是语音控制。而语音控制的第步,便需要让AI玩具听懂你在说什么这就需要用到音频编解码器。   音频
    的头像 发表于 06-20 01:07 6937次阅读

    TPS65950 集成电源管理 IC (PMIC),具有 3 个 DC/DC、11 个 LDO、音频编解码器、USB HS收发数据手册

    TPS65950 器件是一款高度集成的电源管理和音频编码/解码器编解码器)集成电路 (IC),支持 OMAP™ 应用处理
    的头像 发表于 04-28 14:38 650次阅读
    TPS65950 集成电源管理 IC (PMIC),具有 3 个 DC/DC、11 个 LDO、<b class='flag-5'>音频</b><b class='flag-5'>编解码器</b>、USB HS收发<b class='flag-5'>器</b>数据手册

    TWL6040 用于便携式应用的 8 通道高质量低功耗音频编解码器数据手册

    TWL6040 设备是具有高集成度的音频编码/解码器编解码器),可为便携式应用程序提供模拟音频编解码
    的头像 发表于 04-27 17:52 774次阅读
    TWL6040 用于便携式应用的 8 通道高质量低功耗<b class='flag-5'>音频</b><b class='flag-5'>编解码器</b>数据手册

    TWL6041 用于便携式应用的 8 通道高质量低功耗音频编解码器数据手册

    TWL6041 是种具有高集成度的音频编解码器,为便携式应用程序提供模拟音频编解码器功能,如 所示。该设备包含多个
    的头像 发表于 04-27 14:55 811次阅读
    TWL6041 用于便携式应用的 8 通道高质量低功耗<b class='flag-5'>音频</b><b class='flag-5'>编解码器</b>数据手册

    国芯思辰| 单声道音频编解码器SC2601应用于录音笔,替换ES8311

    国芯思辰| 单声道音频编解码器SC2601应用于录音笔,替换ES8311
    的头像 发表于 01-07 10:33 1138次阅读
    国芯思辰| 单声道<b class='flag-5'>音频</b><b class='flag-5'>编解码器</b>SC2601应用于录音笔,替换ES8311

    TLV320AIC28音频编解码器评估模块

    电子发烧友网站提供《TLV320AIC28音频编解码器评估模块.pdf》资料免费下载
    发表于 12-20 16:02 0次下载
    TLV320AIC28<b class='flag-5'>音频</b><b class='flag-5'>编解码器</b>评估模块