直播SDK加入混响效果,创造演唱会现场沉浸感音效
发布日期:2021-06-29 03:52:18 浏览次数:2 分类:技术文章

本文共 1049 字,大约阅读时间需要 3 分钟。

前言

主播在线上直播唱歌也可以有线下演唱会的沉浸感音效?没有码农做不到的事情,这里分享一点即构团队在直播SDK中加入混响效果的经验。直播加入了混响的沉浸感音效,让主播们爽得不要不要的。

什么叫做混响?度娘告诉我们:声波在室内传播时,要被墙壁、天花板、地板等障碍物反射,每反射一次都要被障碍物吸收一些。这样,当声源停止发声后,声波在室内要经过多次反射和吸收,最后才消失,我们就感觉到声源停止发声后还有若干个声波混合持续一段时间。这种现象叫做混响,这段时间叫做混响时间。

简单地说,我们在室内听到的声音是由从声源传过来的波形,和多个由声源传播到障碍物(墙壁)反弹回来的延迟波形相叠加产生的,这种声音的效果就叫做混响。

室内空间的大小不一样,混响的效果也会不一样。比如说,从会议室,到音乐剧场,到演唱会场,混响的效果是逐步增强的。在人声沟通的模式,混响是影响沟通效果的;然而,在音乐表演(唱歌和演奏)模式,混响是能给表演效果带来增强体验的,让线上的体验逼真地重现线下的听音效果。在直播领域,唱歌等音乐表演就是典型的混响应用场景。

 直播行业的空前繁荣也带动了外部采集设备的发展,现在市面上就有外置声卡(也叫直播声卡)提供混响的效果,允许主播在唱歌模式下,唱出来的歌声显得丰满,富有层次,带有空间感,就像在开阔的音乐剧场里面一样。这就是混音效果的魅力。

 在主播们对外部声卡带来的混响效果爱不释手的时候,即构科技率先在直播SDK中加入了混响效果的实现,这属于业内首创,为线上直播场景营造出线下演唱会场才有的空间感音效。

混响功能属于语音前处理的范畴,即构科技的实现方法大致如下:

1)通过指定延迟时间和衰减程度,以原始的声音波形为输入,产生多个延迟(模拟反弹回来的)波形;

2)把多个延迟波形和原始的波形进行叠加,产生最终有混响效果的声音波形。

一般来说,延迟波形的个数比较多的话,叠加产生的声音波形就比较丰满和有层次感,混响的效果也会比较好。

然而,任何事情都有两面,增加延迟波形的个数的同时,也会增加CPU的开销,对有一些CPU性能不好的机型会造成压力。因此,为了直播SDK对各种安卓机型的普适性,即构科技的团队充分测试过有代表性的安卓机型,找到CPU开销和普适性的平衡点,确保即构的混响功能适用于各种安卓机型。

 有了即构直播SDK自带的混响功能,主播们再也不必在麦克风上接着一个像方砖般粗重的外部声卡(还要忍受各种电线缠绕)了,轻轻松松地就可以在直播间里让千万的观众听到演唱会场里空旷的音效。

<本篇完>

转载地址:https://blog.csdn.net/zego_0616/article/details/78783083 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:语音视频社交中回声消除技术是如何实现的
下一篇:实时语音视频通话SDK如何实现立体声(二)

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月22日 06时14分15秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

Atitit sumdoc t0 final index D:\BaiduNetdiskDownload\sumdoc t0 final\sumdoc t0 wps cld bek D:\Baid 2019-04-29
Atitit sumdoc t0 final index 2019-04-29
atitit 编程语言选型知识点体系.docx 编程语言选型时,你需要考虑的几个方面 目录 1. 1.2. 类型系统 5 1 2. 1.5. 语言规范 25 1 3. 1.6. 编程范式 52 2019-04-29
Atitit 编程语言语言规范总结 目录 1. 语言规范 3 2. Types 3 2.1.1. Primitive types 3 2.1.2. Compound types 4 3. State 2019-04-29
Atitit QL查询语言总结 目录 1. QL = Query Language, 是查询语言的简称 1 2. 具体实现 1 2.1. Apcl 流程控制语言 1 2.2. 脚本流程控制 2 2. 2019-04-29
Atitit 开发效率大法 v0 t025.docx Atitit 提升开发效率几大策略 目录 1. 提升效率三原则 3 1.1. 更少的代码量简化 3 1.2. 优化配置减少等待 3 1.3. 2019-04-29
Atitit mybatis的扩展使用sql udf,js java等语言 目录 1.1. 默认,mybatis使用xml,sql等语言来书写业务流程 1 2. 使用ognl调用java函数 1 3 2019-04-29
Atitit if else 选择决策流程ast对比 sql java 表达式类型 binaryExpression hase left and rit expr 目录 1.1. Sql 1 2019-04-29
Atitit 数据库存储引擎 目录 1.1. BLACKHOLE 黑洞引擎 1 1.2. Myisam innodb 1 1.3. Archive 档案类 1 1.4. Fed 连接引擎 2 1. 2019-04-29
Atitit sql注入的防范 目录 1.1. 检查数据类型 1 2. 有限操作DML 1 2.1. 限制执行函数黑名单机制 2 2.2. 限制执行系统sp 2 2.3. 限制数据查询语句类型,只能 2019-04-29
Atitit 自然语言与人工语言的语法构建ast的异同点 目录 1. 语言节点gaishu。。 2 1.1. 节点、函数数量大约200个 2 1.2. 关键词节点 是 有 的 3 1.3. 标识符 2019-04-29
Atitit 效率提升法细则 v3 t028.docx Atitit 提升效率细则 目录 1. 目标 2 1.1. 配置化增加扩展性 尽可能消除编译 方便增加 调整业务逻辑 2 1.2. 统一接口 2019-04-29
Atitit 工程师程序员技术级别对应表与主要特征 P1--p6 说明 类别 职称 对应技术标志 P5 高级工程师 工程师类 一般四五年 P6 资深开发 工程师类 78年经历 P7 P7 2019-04-29
paip.activex控件在WEB中使用流程与工具 2019-04-29
paip.软件及网站项目开发效率低下的思索与改进 2019-04-29
Atitit 可移植性之道attilax著 2019-04-29
paip.截屏功能流程说明 2019-04-29
Atiitt uke兼wag集团2017年度成果报告总结 attilax著 1. 组织机构进一步完善 8大首席部门 1 2. 事业部进一步完善,以及一百多个事业部了 1 3. 企业文化进一步完善 1 2019-04-29
Atititi ui之道 attilax著 v3 s11.docx 1. 概览 2 1.1. 软件设计可分为两个部分:编码设计与UI设计 2 2. 用户界面设计的三大原则是:置界面于用户的控制之下; 2019-04-29
Atitit 集团与个人的完整入口列表 attilax的完整入口 1. 集团与个人的完整入口列表 1 2. 流量入口概念 2 3. 流量入口的历史与发展 2 1.集团与个人的完整入口列表 2019-04-29