算法原理: Speex的AEC是以NLMS(Normalized Least Mean Square)为基础,用MDF(multidelay block frequency domain)频域实现,最终推导出最优步长估计:残余回声与误差之比.最优步长等于残余回声方差与误差信号方差之比. 只有改与泄露系数相关部分的代码,才是对效果影响最大的地方,因为根据泄露系数,最终会估计出滤波器的最优步长. 使用实例: 测试代码: #include "speex/speex_echo.h" #incl…
本文系作者原创.如转载,请注明出处. 谢谢! 音频软件开发同其他软件开发一样,都需要去调试.音频软件调试同其他软件调试方法有相同的地方,也有不同的地方,同时调试时还需要借助一些专门的工具,有了这些方法和工具,就能快速的定位问题和解决问题.下面我们就谈谈这些方法和工具. 1,方法 1)log 这是软件调试中最常用的方法,音频调试也不例外.在写代码时加上一定的log, 在出问题时就打开这些log,通过log分析问题出在什么地方.一个好的log体现在如下几点: a)    要有时间和日期,有时候时间戳…
WebRTC提供一套音频处理引擎, 包含以下算法: AGC自动增益控制(Automatic Gain Control) ANS噪音抑制(Automatic Noise Suppression) AEC是声学回声消除(Acoustic Echo Canceller for Mobile) VAD是静音检测(Voice Activity Detection) 这是一套非常经典,以及值得细细品阅学习的音频算法资源. 在前面分享的博文,也有提及音频相关知识点. 一些算法优化的知识点,由于历史的原因, W…
博客地址:http://blog.csdn.net/kevindgk GitHub地址:https://github.com/KevinDGK/MyAudioDemo 一简介 二局域网语音配置 三Speex 1 简介 2 技术特点 3 开发-语音压缩 4 相关计算 四Opus - 音频编解码器中的瑞士军刀 1 简介 2 技术 3 开发插件 4 版本信息 libopus 113稳定发行版 5 对比 6 模块API文档 61 Opus Encoder 类型定义 方法 详细描述 类型定义文档 方法文档…
http://blog.csdn.net/chenyusiyuan/article/details/8710462 OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波 2013-03-23 17:44 16963人阅读 评论(28) 收藏 举报  分类: 机器视觉(34)  版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   KAZE系列笔记: OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波 OpenCV学习笔记…
本文通过示例详细分析rsync算法原理和rsync的工作流程,是对rsync官方技术报告和官方推荐文章的解释. 以下是本文的姊妹篇: 1.rsync(一):基本命令和用法 2.rsync(二):inotify+rsync详细说明和sersync 3.rsync技术报告(翻译) 4.rsync工作机制(翻译) 5.man rsync翻译(rsync命令中文手册) 本文目录: 1.1 需要解决的问题 1.2 rsync增量传输算法原理 1.3 通过示例分析rsync算法 1.4 rsync工作流程分…
作者: shawnzhao,QQ音乐技术团队一员 一.前言 在 Android 中进行图片压缩是非常常见的开发场景,主要的压缩方法有两种:其一是质量压缩,其二是下采样压缩. 前者是在不改变图片尺寸的情况下,改变图片的存储体积,而后者则是降低图像尺寸,达到相同目的. 由于本文的篇幅问题,分为上下两篇发布. 二.Android 质量压缩逻辑 在Android中,对图片进行质量压缩,通常我们的实现方式如下所示: ByteArrayOutputStream outputStream = new Byte…
HanLP中人名识别分析 在看源码之前,先看几遍论文<基于角色标注的中国人名自动识别研究> 关于命名识别的一些问题,可参考下列一些issue: 名字识别的问题 #387 机构名识别错误 关于层叠HMM中文实体识别的过程 HanLP参考博客: 词性标注 层叠HMM-Viterbi角色标注模型下的机构名识别 分词 在HMM与分词.词性标注.命名实体识别中说: 分词:给定一个字的序列,找出最可能的标签序列(断句符号:[词尾]或[非词尾]构成的序列).结巴分词目前就是利用BMES标签来分词的,B(开头…
本文通过示例详细分析rsync算法原理和rsync的工作流程,是对rsync官方技术报告和官方推荐文章的解释.本文不会介绍如何使用rsync命令(见rsync基本用法),而是详细解释它如何实现高效的增量传输. 以下是rsync系列篇: 1.rsync(一):基本命令和用法 2.rsync(二):inotify+rsync详细说明和sersync 3.rsync算法原理和工作流程分析 4.rsync技术报告(翻译) 5.rsync工作机制(翻译) 6.man rsync翻译(rsync命令中文手册…
HanLP中人名识别分析详解 在看源码之前,先看几遍论文<基于角色标注的中国人名自动识别研究> 关于命名识别的一些问题,可参考下列一些issue: l ·名字识别的问题 #387 l ·机构名识别错误 l ·关于层叠HMM中文实体识别的过程 HanLP参考博客: 词性标注 层叠HMM-Viterbi角色标注模型下的机构名识别 分词 在HMM与分词.词性标注.命名实体识别中说: 分词:给定一个字的序列,找出最可能的标签序列(断句符号:[词尾]或[非词尾]构成的序列).结巴分词目前就是利用BMES…