首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏BestSDK

    QttAudio推出音频SDK,可消除回音、抑制噪音等

    QttAudio创始人幸小然表示:“实现音视频通话需要解决回音消除、降噪、混音等核心技术问题,在QttAudio面世前,市面上有大致三种解决方案可供选择: 第一种是免费的开源方案WebRTC,SPEEX 中小企业无力承受其昂贵的价格,而且技术支持和服务没有本地化,交流沟通多有不便; 第三种是国内云服务厂商,比如腾讯语音云,环信等云方案,采用云方案的优点就是最快速的接入,缺点一是技术方案整体化,不灵活,一些企业只是需要回音消除模块接入现有的 有太多的企业和开发者苦恼于复杂的音频处理技术,恼人的回音啸叫等现象,而上述已存在的解决方案又都有明显的缺点。“没有一种真正优秀,站在客户角度的解决方案,这就是QttAudio诞生的原因。” QttAudio专注于为企业提供跨平台的音频解决方案,实现通话过程中的回声消除、噪音抑制、会议混音等。 团队目前8个人,基本为研发人员。

    3.8K50发布于 2018-03-01
  • 来自专栏君正T31开发实战指南

    君正T31应用开发5:回音消除

    1.什么是回音消除? 1.1.单工模式&半双工模式 如果你的设备是这两种模式的话,一般都不需要考虑回音消除的困扰。 音频通过MIC头输入音频数据,然后再通过喇叭传播音频数据出去。 如果你这边只是一台设备,那么好说,就不太需要回音消除,因为你对着MIC头传音频数据的时候,你传输结束后,你才会通过喇叭传播音频数据出去,所以这时候,你一般不会有回音的困扰。 2.君正的回音消除 君正的回音消除主要使用两个API函数,其中一个API函数是 1.1.开启回音消除 ret = IMP_AI_EnableAec(devID, chnID, 0, 0); if(ret = 0) { IMP_LOG_ERR(TAG, "Audio Record enable channel failed\n"); return NULL; } 1.2.结束回音消除 ret = 0) { IMP_LOG_ERR(TAG, "IMP_AI_DisableAecRefFrame\n"); return NULL; } 君正完整回音消除代码 static void *

    1.5K50编辑于 2023-05-14
  • 来自专栏Don的成长史

    HBUOJ 回音排版

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    1.2K20发布于 2019-11-08
  • 来自专栏吉林乌拉

    锁消除

    锁消除 锁消除的意思是说虚拟机在运行时,虽然代码进行了同步,但是如果虚拟机检测到不存在数据竞争时,虚拟机就会自动把锁进行消除。 锁消除主要的判定依据是如果堆上的所有数据都不会被其它的线程访问到,那么就可以理解为这些数据是线程私有的。既然是线程私有的,那么同步加锁也就没有存在的必要了,于是虚拟机就会将锁消除掉。 我们看一下下面具体的代码来实际验证一下锁消除的实际应用。 ? 上述代码中我们并没有添加任何同步方法。 也就是说其他线程无法访问到它,所以虽然方法是同步方法也就是添加了锁,但是虚拟机在执行时可以将锁消除掉,所以代码编译后,虚拟机执行上述代码时,就会忽略所有的同步而直接执行。

    1.6K10发布于 2019-08-14
  • 来自专栏shigen的学习笔记

    结合HashMap与Java 8的Function和Optional消除ifelse判断

    个人IP:shigen在文章的开头我们先从这些场景进入本期的问题:业务代码中各种if-else有遇到过吗,有什么好的优化方式;java8出来这么多年了,Function、Optional有经常用到吗? apply(detail)).orElseThrow(() -> new IllegalArgumentException("invalid type: " + type)); }这里用到了java8的新特性 当然常见的消除if-else代码的方式还有:借助switch-case借助枚举抽象SpringBoot的IOC能力这里先在此点一下,有时间继续分享。附:代码截图:与shigen一起,每天不一样!

    44010编辑于 2024-09-22
  • 来自专栏图像处理与模式识别研究所

    图像消除纹理

    img_result.save('C:/Users/xpp/Desktop/result.png') plt.imshow(img_result,cmap='gray') plt.show() 算法:图像消除纹理是首先将原始图像转换为灰度图像 ,随机选取和卷积核大小相同的正方形框小图像,选取多个图像取平均值来保证纹理特征能够适应整张图像,最终得到小图像之后取加权平均值,类似于高斯模糊一样的效果,这样卷积出来的结果能有效消除图像纹理。

    1.9K10编辑于 2022-05-29
  • 来自专栏geekfly

    消除类游戏

    问题描述 试题编号: 201512-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述   消除类游戏是深受大众欢迎的一种游戏 ,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。 当有多处可以被消除时,这些地方的棋子将同时被消除。   现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。    请注意:一个棋子可能在某一行和某一列同时被消除。 输入格式   输入的第一行包含两个整数n, m,用空格分隔,分别表示棋盘的行数和列数。    输出格式   输出n行,每行m个整数,相邻的整数之间使用一个空格分隔,表示经过一次消除后的棋盘。如果一个方格中的棋子被消除,则对应的方格输出0,否则输出棋子的颜色编号。

    97710编辑于 2022-05-06
  • 来自专栏人人都是极客

    浅谈网络语音技术

    而一个音频帧的大小就等于:(采样频率×采样位数×声道数×时间)/8。 通常一个采样帧的时长为10ms,即每10ms的数据构成一个音频帧。 没有回音。 下面我们就逐个说说实际网络语音对话系统中额外用到的技术。 1. 回音消除 AEC 现在大家几乎都已经都习惯了在语音聊天时,直接用PC或笔记本的声音外放功能。 当使用外放功能时,扬声器播放的声音会被麦克风再次采集,传回给对方,这样对方就听到了自己的回音。所以,实际应用中,回音消除的功能是必需的。 在得到采集的音频帧后,在编码之前的这个间隙,是回音消除模块工作的时机。 ? 其原理简单地来说就是,回音消除模块依据刚播放的音频帧,在采集的音频帧中做一些类似抵消的运算,从而将回声从采集帧中清除掉。 即使,你可以想办法绕开混音而让多路声音同时播放,那么对于回音消除的目的而言,也必需混音成一路播放,否则,回音消除最多就只能消除多路声音中的某一路。

    2.7K20发布于 2018-08-16
  • 来自专栏ccf19881030的博客

    退格键消除-栈

    退格键消除问题-栈 题目描述 输入一个字符串只包含$和小写英文字母的字符串s,如ab$$cd,每遇到一个字符$,就删除其前面的字符(如果有的话);最后输出的字符串中不包含$字符,求最后返回剩余的小写英文字符的总长度 iostream> #include <string> #include <stack> using namespace std; class Solution { public: // 借用栈先进后出的特性做消除

    1.1K20编辑于 2023-06-10
  • 来自专栏云深之无迹

    GoPro 镜头失真消除

    在这个项目中,我们将通过使用 Python 和 OpenCV 校准相机来消除失真。 校准结果后,脚本将重新加载校准图像并消除失真。按 esc 按钮在图像之间移动。这是确保校准模型准确的另一个验证步骤。如果图像看起来不正确,则校准模型可能不准确,应重新校准相机。 校准相机后,可以使用以下脚本来消除使用该相机收集的任何视频的失真。请记住,如果您更改分辨率、FOV 或环境(即水下),则会影响校准。

    2.4K20发布于 2021-07-23
  • 来自专栏一个正经的程序员

    使用 Java8 中的 Optional 类来消除代码中的 null 检查

    本文由 #公众号:一个正经的程序员 原创 作者:散淡样子 GitHub:https://github.com/LouisLiu00 00 前言 Optional 类是 Java8 新增的一个类,Optional 本篇文章将详细介绍 Optional 类,以及如何用它消除代码中的 null 检查。 本质上,这是一个包含有可选值的包装类,这意味着 Optional 类既可以含有对象也可以为空。 基于上面的原因,Java8 中引入了一个新的类 Optional,用以避免使用 null 值引发的种种问题。 = null) { // TODO ... } else { // TODO ... } 当我们从之前版本切换到 Java8 的时候,不应该还按照之前的思维方式处理 null 值,Java8 更多关于函数式编程请移步至 #公众号:一个正经的程序员 文章:一篇文章教会你使用 Java8 中的 Lambda 表达式 这里有几条关于 Optional 使用的建议: 尽量避免在程序中直接调用 Optional

    1.6K30编辑于 2023-10-23
  • 来自专栏人人都是极客

    浅谈语音技术

    而一个音频帧的大小就等于:(采样频率×采样位数×声道数×时间)/8。 通常一个采样帧的时长为10ms,即每10ms的数据构成一个音频帧。 没有回音。 下面我们就逐个说说实际网络语音对话系统中额外用到的技术。 1. 回音消除 AEC 现在大家几乎都已经都习惯了在语音聊天时,直接用PC或笔记本的声音外放功能。 当使用外放功能时,扬声器播放的声音会被麦克风再次采集,传回给对方,这样对方就听到了自己的回音。所以,实际应用中,回音消除的功能是必需的。 在得到采集的音频帧后,在编码之前的这个间隙,是回音消除模块工作的时机。 ? 其原理简单地来说就是,回音消除模块依据刚播放的音频帧,在采集的音频帧中做一些类似抵消的运算,从而将回声从采集帧中清除掉。 即使,你可以想办法绕开混音而让多路声音同时播放,那么对于回音消除的目的而言,也必需混音成一路播放,否则,回音消除最多就只能消除多路声音中的某一路。

    3.8K30发布于 2019-05-14
  • 来自专栏JAVA葵花宝典

    使用Java8中的Optional类来消除代码中的null检查

    作者:一书生VOID lw900925.github.io/java/java8-optional.html Optional类是Java 8新增的一个类,用以解决程序中常见的NullPointerException 本篇文章将详细介绍Optional类,以及如何用它消除代码中的null检查。 基于上面的原因,Java 8中引入了一个新的类Optional,用以避免使用null值引发的种种问题。扩展:如何更优雅的处理空值? = null) { // do something... } else { // do something... } 当我们从之前版本切换到Java 8的时候,不应该还按照之前的思维方式处理 null值,Java 8提倡函数式编程,新增的许多API都可以用函数式编程表示,Optional类也是其中之一。

    2.5K40发布于 2020-08-28
  • 来自专栏即时通讯技术

    即时通讯技术文集(第25期):实时音视频基础入门 [共20篇]

    [- 9 -] 即时通讯音视频开发(九):实时语音通讯的回音及回音消除概述[链接] http://www.52im.net/thread-247-1-1.html[摘要] 本文是一篇介绍实时音频通讯过程中的回音问题 ,以及回音消除技术的介绍文章。 [- 10 -] 即时通讯音视频开发(十):实时语音通讯的回音消除技术详解[链接] http://www.52im.net/thread-250-1-1.html[摘要] 本文是一篇详细介绍实时音频通讯过程中的回音消除技术的文章 ,主要描述的是回音消除技术理论和算法原理等。 H.264和VP8的发展渊源以及现时所面临的问题,相信读完此文后,对于即时通讯(IM聊天应用)的实时音视频开发中视频编码的选择会有个直观的了解。

    68610编辑于 2023-11-29
  • 来自专栏ISP图像处理相关

    图像条纹噪声消除

    图像条纹噪声消除 条纹噪声 sensor中由于传感器的差异产生固定模式噪声(FPN),FPN与条纹噪声有相似之处。 空域降噪为了不损失细节强调保边效果 感兴趣可以留言讨论,也可以参考大佬的文章 https://www.cnblogs.com/Imageshop/p/13380435.html 参考: 《基于空时域级联滤波的红外焦平面条状噪声消除算法

    3K10编辑于 2022-01-14
  • 来自专栏图像处理与模式识别研究所

    图像高光消除

    r_template_d=math.sqrt(r_template_d/r_template.shape[0]/r_template.shape[1]) r_cut=np.zeros(r.shape,dtype='uint8' r_template_u+1.25*r_template_d): r_cut[i,j]=1 image_cut=np.zeros(image.shape,dtype='uint8' off') plt.imshow(r_cut) plt.figure() plt.axis('off') plt.imshow(image_cut) plt.show() 算法:图像高光消除是进行高光提取并弱化背景区域

    72820编辑于 2022-05-29
  • 来自专栏移动开发

    Android默认padding的消除

    在android系统中会给textview中的文字,默认给于一定的padding.有时候我们想要view紧紧包裹住文字,这时可以用如下的属性进行设置

    1.8K20发布于 2018-10-18
  • 来自专栏机器学习AI算法工程

    UNet实现文档印章消除

    UNet 实现文档印章消除 Requirement pytorch==1.5 opencv-python 4.2 numpy 代码及运行教程 获取: 关注微信公众号 datayx 然后回复 印章

    2.7K20发布于 2020-11-10
  • 来自专栏shigen的学习笔记

    巧用枚举消除条件判断

    个人IP:shigen在上一篇的文章结合HashMap与Java 8的Function和Optional消除ifelse判断中有讲到如何结合HashMap与Java 8的Function和Optional 消除ifelse判断,相关的文章可以点击链接查看,这里做一些小小的改造,将不同的处理方式抽成一个方法,最终的代码是这样的:是不是看起来更加规范和清晰了。 今天讲的就是通过枚举实现if-else的消除,先上代码:定义的枚举类 public enum QuestionHandlerEnum { A() { @Override

    32210编辑于 2024-09-28
  • 来自专栏desperate633

    消除重复元素代码

    输入描述: 输入包括两行: 第一行为序列长度n(1 ≤ n ≤ 50) 第二行为n个数sequence[i](1 ≤ sequence[i] ≤ 1000),以空格分隔 输出描述: 输出消除重复元素之后的序列

    1.4K20发布于 2018-08-27
领券