从单声道、立体声、环绕声发展到三维声,音频回放技术的迭代演进是为了还原真实世界的声音。其中,三维声技术使用信号处理的方法对到达两耳的声音信号进行模拟,将声场还原为三维空间,更接近真实世界。凭借这个技术,各厂商在游戏、影视、音乐等场景中为用户创造更真实自然且沉浸的听觉体验,也实现了更好的用户订阅增长。

传统3D音频的制作需获取原始的分轨素材(如录制的人声、钢琴声等),并使用专业的数字音频工作站(DAW)和3D混音插件手工制作,因此制作周期长、生产效率低、成本高、门槛高。此外,开发者由于没有歌曲的原始分轨,因此通过传统方法进行3D音频制作的难度很大。HMS Core音频编辑服务(Audio Editor Kit)提供了音源分离(获取分轨)、空间音频渲染能力,开发者仅需输入立体声,就能快速生成3D音频内容,提升用户音频体验和提升产品竞争力!



HMS Core音频编辑服务3D音频生成示意图

音源分离技术

由于我们当前接触到的音频大都是立体声,所有音频对象(如音乐中的人声、钢琴、吉他等)都已经混合在左右两个声道当中,无法轻易地分开,更不要提将其渲染放置在不同的空间位置,因此将立体声中的特定元素分离是3D化的一个核心技术。

华为算法团队通过对大量的音乐进行深度学习建模,并结合传统信号处理能力最终实现音源分离:首先利用短时傅里叶变换(STFT)将一维的音频信号变换到二维的时频谱;然后将得到的二维的时频谱与原始的一维时域信号一起作为双流输入,通过多层的残差编码及大量数据的训练,获得目标乐器的隐空间表达;最后进一步通过一系列的变换矩阵最终还原成原始的对象立体声信号。

上述处理过程中使用的变换矩阵和网络结构是华为的独特技术,是针对不同的乐器音色特点专门设计的,能够确保每一个乐器都能尽可能的分离完整且干净,为3D化提供足够优质的分轨素材。其涉及的核心能力包括:

1、 音频信号特征提取:包括通过编码器从时域信号直接提取特征,以及通过短时傅里叶变换从时域信号提取时频谱特征;

2、 深度学习模型构建:加入残差模块与注意力机制,增强对不同乐器谐波建模能力与时序关联能力;

3、 多通道维纳滤波:结合传统信号处理的能力,通过深度学习建模预测对象与非对象功率谱关系,构建与处理滤波系数。

音频分离技术示意图

目前,HMS Core已对外开放了12种音源分离的能力(人声、伴奏、鼓、小提琴、贝斯、钢琴、木吉他、电吉他、弦乐、主唱、带伴唱伴奏和管弦乐),帮助开发者快速地提取出自己想要的乐器进行3D化编辑。

空间音频渲染技术

仅通过两只耳朵收听外部声音,人类为什么可分辨声源的位置呢?这是由于从声源传递到两只耳朵的声音实际上存在细微的差异,包括到达时间、接收到的能量、以及相位差等信息。而这些信息差综合体现在一系列传递函数,称为头相关传递函数(HRTF)。通过将HRTF叠加到单点声源,我们就可以虚拟出真实世界中声音的方位直达声的部分。为解决因头型、肩宽等人体体征的差异带来的HRTF因人而异的难题,我们通过大量数据的分析,设计了一套较普适的HRTF,可以让每个人都能享受到3D音频。另外为了营造空间中声音的反射、散射、干涉等物理现象,我们还通过叠加一系列的房间相应函数(RIR)来构建真实的空间,形成所谓的混响。因此,通过一系列的HRTF和RIR对声源进行滤波,我们就可以将之前分离的素材进行3D化,形成3D音乐。

空间音频渲染技术示意图

目前,HMS Core音频编辑服务提供的音源分离、空间音频渲染服务这套组合拳已经应用在华为音乐的高级音效当中,用户可以进入华为音乐音效页面,在高级音效栏目中选择声空音效或声乐纯享,感受3D音频的魅力。

华为音乐声空音效与声乐纯享功能

以上技术来自华为2012实验室,通过HMS Core音频编辑服务面向开发者开放,在音乐音频领域为用户带来差异化的3D音频体验。其他更多关于HMS Core音频编辑服务的信息,请访问华为开发者联盟-HMS Core音频编辑服务官网

了解更多详情>>

访问华为开发者联盟官网

获取开发指导文档

华为移动服务开源仓库地址:GitHubGitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

HMS Core音频编辑服务音源分离与空间音频渲染,助力快速进入3D音频的世界的更多相关文章

  1. 全场景AI推理引擎MindSpore Lite, 助力HMS Core视频编辑服务打造更智能的剪辑体验

    移动互联网的发展给人们的社交和娱乐方式带来了很大的改变,以vlog.短视频等为代表的新兴文化样态正受到越来越多人的青睐.同时,随着AI智能.美颜修图等功能在图像视频编辑App中的应用,促使视频编辑效率 ...

  2. HMS Core 视频编辑服务开放模板能力,助力用户一键Get同款酷炫视频

    前言 短视频模板,是快捷创作短视频的一种方式,一般由专业设计师或模板创作人制作,用户只需替换视频模板中的部分素材,便可生成一支与模板一样的创意视频.这种省时省力.无需"烧脑"构思创 ...

  3. 如何让照片中的人物笑起来?HMS Core视频编辑服务一键微笑功能,让人物笑容更自然

    最近一键"露齿笑"席卷全网,无论是短视频用户还是社交App用户都在使用这项黑科技.当三两好友聚会拍集体照留念时,为了处理个别人的表情"瑕疵",让大家都尽量保持微 ...

  4. 华为音频编辑服务(Audio Editor Kit),快速构建应用音频编辑能力

    音频编辑服务(Audio Editor Kit)是华为为开发者开放的各类场景音频处理能力的集合,汇聚了华为在音乐.语音等相关音频领域的先进技术.音频编辑服务提供基础编辑.伴奏提取.空间渲染.变声降噪等 ...

  5. 对抗噪音,一键清晰,HMS Core音频编辑服务给你“录音棚”般的体验

    短视频时代来临,一部手机就可以玩转多种花样,所以越来越多的自由创作者加入这个行业,平时生活中用手机拍短视频.街头唱歌的非专业从业者随处可见.离开了录音棚,没有专业.统一的录音设备,无论在家里还是在路边 ...

  6. HMS Core音频编辑服务3D音频技术,助力打造沉浸式听觉盛宴

    2022年6月28日,HDD·HMS Core.Sparkle影音娱乐沙龙在线上与开发者们见面.HMS Core音频编辑服务(Audio Editor Kit)专家为大家详细分享了基于分离的3D音乐创 ...

  7. HMS Core音频编辑服务支持7种音频特效,助力一站式音频处理

    多媒体时代,音频作为内容传播中的重要形式,因其不受空间限制.认知负担小.声音元素多样化等特点,广泛应用于短视频制作.儿童在线教育.有声阅读.游戏等领域产品,在各种形式的音频呈现过程中,合理添加音效能够 ...

  8. 【FAQ】接入HMS Core推送服务过程中一些常见问题总结

    HMS Core 推送服务(Push Kit)是华为提供的消息推送平台,建立了从云端到终端的消息推送通道.开发者通过集成推送服务,可以向客户端应用实时推送消息,构筑良好的用户关系,提升用户的感知度和活 ...

  9. 【FAQ】HMS Core推送服务与本地创建通知消息如何相互覆盖?

    我们知道,单独使用HMS Core推送服务或本地创建通知消息,都可以实现通知消息的覆盖,方式分别为: 1.本地创建通知消息(简称本地通知消息) 通过notificationManager.notify ...

随机推荐

  1. 理解ASP.NET Core - 发送Http请求(HttpClient)

    注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 前言 在.NET中,我们有很多发送Http请求的手段,如HttpWebRequest.WebC ...

  2. Go基础3:函数、结构体、方法、接口

    目录 1. 函数 1.1 函数返回值 同一种类型返回值 带变量名的返回值 函数中的参数传递 函数变量 1.2 匿名函数--没有函数名字的函数 在定义时调用匿名函数 将匿名函数赋值给变量 匿名函数用作回 ...

  3. vue大型电商项目尚品汇(前台篇)day02

    现在正式回归,开始好好做项目了,正好这一个项目也开始慢慢的开始起色了,前面的准备工作都做的差不多了. 而且我现在也开始慢慢了解到了一些项目才开始需要的一些什么东西了,vuex.router这些都是必备 ...

  4. 今天才发现ThinkPad的触摸板简直好用!傻乎乎的自己

    最近经常看到这句话,天下武功,唯快不破. 今天才发现ThinkPad的触摸板简直好用! 今天才发现,傻乎乎的自己. 前一阵鼠标不好用了,没有滚轮,一直傻瓜式操作点击浏览器的滚动条... 遇到没有滚动条 ...

  5. 深度学习与CV教程(2) | 图像分类与机器学习基础

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...

  6. 【可视化分析案例】用python分析B站Top100排行榜数据

    一.数据源 之前,我分享过一期爬虫,用python爬取Top100排行榜: 最终数据结果,是这样的: 在此数据基础上,做python可视化分析. 二.数据读取 首先,读取数据源: # 读取csv数据 ...

  7. 解决WIN7无法安装高版本Node.js问题

    网上很多文章都让去安装低版本node 由于业务需求,低版本node npm 有一些包支持的不好 npm出cb() never call 本着更新npm 顺带弄个高版本的node 单独更新npm npm ...

  8. 实验一:在FW上配置静态路由实现互通

    实验:在FW上配置静态路由实现互通 网络拓扑图 一.配置步骤 1.配置IP地址 R1: FW: ISP:       2.配置路由 ①在R2上面配置静态路由 ②在ISP上面配置静态路由 3.在FW上配 ...

  9. 竟然还有人说ArrayList是2倍扩容,今天带你手撕ArrayList源码

    ArrayList是我们开发中最常用到的集合,但是很多人对它的源码并不了解,导致面试时,面试官问的稍微深入的问题,就无法作答,今天我们一起来探究一下ArrayList源码. 1. 简介 ArrayLi ...

  10. 将 Ubuntu 16.04 LTS 的 Unity 启动器移动到桌面底部命令

    将 Ubuntu 16.04 LTS 的 Unity 启动器移动到桌面底部命令: gsettings set com.canonical.Unity.Launcher launcher-positio ...