小奥的学习笔记

  • Home
  • Learning & Working
    • Speech Enhancement Notes
    • Programming language
    • Computer & DL
    • MOOC
  • Life
    • Life Time
    • Thinking & Comprehension
    • Volunteer
    • Plan
    • Travel
  • Footprints
  • GuestBook
  • About
    • About Me
    • 个人履历
    • 隐私策略
WebRTC
语音处理学习笔记

AEC个人学习串讲之AEC3:时延对齐、线性处理、非线性处理

计算参考信号和采集信号的时延:GetDelay() AEC3中的时延估计算法是使用计算滤波器能量最大块来作为延迟估计值,它是当滤波器收敛到一定程度时,计算所有滤波器系数的能量,取峰值的系数(tap)对应的delay就是对齐需要的delay。它是由步长为0.7的5个时域的NLMS滤波器组成,每个滤波器默认为32个块,每个块有16个样点,总计有32*16=512个样点,5个滤波器理论上共有512*5=2560个点,但实际上5个滤波器在时域上互相重叠8块(即输入的信号在时间上存在重叠),所以实际上5个滤波器可以估计256…

2021年10月17日 2条评论 5157点热度 8人点赞 davidcheung 阅读全文
语音处理学习笔记

AEC个人学习串讲之AEC3:概述及非核心部分

整体框图 参考信号:送往时延估计、AEC的状态计算 采集信号:送往时延估计、线性滤波器、AEC的状态计算 线性滤波器使用时延对齐后的参考信号和采集信号进行处理;线性滤波器处理后的结果送往NLP模块,最终得到处理结果。 类调用关系图 EchoCanceller3(入口) AnalyzeRender 该部分只是将AudioBuffer类型的参考信号insert到render_transfer_queue_,这是一个swapqueue,数据从结尾insert,从开头remove,这里没有什么可以说的【当然insert之前…

2021年10月17日 0条评论 3475点热度 8人点赞 davidcheung 阅读全文
语音处理学习笔记

AEC个人学习串讲之fullaec.m:非线性处理(下)

取消大小周了,周末有了更多的时间来自己学习。给自己立个flag,两周内把fullaec.m里面的线性滤波器、NLP等部分弄懂,发博客;再2~3周的时间看webrtc的AEC3的代码,同样发博客整理;然后再2~3周的时间看一下speex里面的AEC算法。 本次继续更新非线性处理部分。在学习过程中,参考了《实时语音处理实践指南》相关内容和网上有关博客的内容,在此对相关作者表示感谢。 非线性处理部分 计算完hnled,接下来开始计算ovrd。 hnlLocalMin是对hnlPrefAvgLow的最小值跟踪,其初始值为1…

2021年8月22日 1条评论 2205点热度 3人点赞 davidcheung 阅读全文
语音处理学习笔记

AEC个人学习串讲之fullaec.m:非线性处理(上)

取消大小周了,周末有了更多的时间来自己学习。给自己立个flag,两周内把fullaec.m里面的线性滤波器、NLP等部分弄懂,发博客;再2~3周的时间看webrtc的AEC3的代码,同样发博客整理;然后再2~3周的时间看一下speex里面的AEC算法。 本次更新非线性处理部分。在学习过程中,参考了《实时语音处理实践指南》相关内容和网上有关博客的内容,在此对相关作者表示感谢。 非线性处理 非线性处理的主要思想: WebRTC是利用信号之间的频域相干性c(0<=c<=1)来衡量误差信号中残留回声的大小的。首…

2021年8月15日 2条评论 2815点热度 4人点赞 davidcheung 阅读全文
Life Time

AEC个人学习串讲之fullaec.m:线性处理部分

取消大小周了,周末有了更多的时间来自己学习。给自己立个flag,两周内把fullaec.m里面的线性滤波器、NLP等部分弄懂,发博客;再2~3周的时间看webrtc的AEC3的代码,同样发博客整理;然后再2~3周的时间看一下speex里面的AEC算法。然后再2~3周吃一吃公司的算法,但是这个整理只是自己学习用,不会做任何公开发布。 所以下面开始第一个flag的内容。这周只有空看完了线性部分,仿佛没有看到这里面有DTD的部分,所以先发一下线性部分,后面整理一下非线性部分。在学习过程中,参考了《实时语音处理实践指南》相…

2021年8月8日 1条评论 1991点热度 0人点赞 davidcheung 阅读全文
语音处理学习笔记

《实时语音处理实践指南》第五章学习笔记

第一节 回声消除原理 声学回声消除主要用来解决双端通信中回声干扰的问题。如下图所示,A、B两段正在进行远程语音通话,B端语音被麦克风采集后转换成电信号,经过网络传输到达A端,由A端扬声器播放出来,如果在A端没有做AEC处理,那么这个声音就会被A端的麦克风采集传回到B段,从而干扰正常的语音通信。 AEC目前已经形成了以自适应滤波处理联合回声后处理为主的技术方案。其中,自适应滤波器用来模拟和追踪真实的“回声路径”,并由收敛出的“回声路径”(实际为滤波器系数)估算出回声信号,再从近端纯净语音和回声的混合信号中减去估计的回…

2020年12月12日 1条评论 2263点热度 1人点赞 davidcheung 阅读全文
语音处理学习笔记

WebRTC整体架构分析

1 设计WebRTC的目的 WebRTC(Web Real-Time Communication)项目的最终目的主要是让Web开发者能够基于浏览器(Chrome\FireFox...)轻易快捷开发出丰富的实时多媒体应用,而无需下载安装任何插件,Web开发者也无需关注多媒体的数字信号处理过程,只需编写简单的Javascript程序即可实现。W3C等组织正在制定Javascript标准API,目前是WebRTC 1.0版本(2019年10月24日),Draft状态,网址:http://w3c.github.io…

2019年10月28日 1条评论 1842点热度 0人点赞 davidcheung 阅读全文
12
搜索
欢迎关注我的个人公众号
最新 热点 随机
最新 热点 随机
DEEPFILTERNET:一种基于深度滤波的全频带音频低复杂度语音增强框架 奥地利匈牙利九日游旅程 论文阅读之Study of the General Kalman Filter for Echo Cancellation 小奥看房之鸿荣源珈誉府 杭州往返旅途及西溪喜来登和万怡的体验报告 2022年的第一篇碎碎念
奥地利匈牙利九日游旅程DEEPFILTERNET:一种基于深度滤波的全频带音频低复杂度语音增强框架
Leetcode题目解析(191114):155&160 离开北京 Java语言程序设计【学堂在线】编程作业(第一章) DEEPFILTERNET:一种基于深度滤波的全频带音频低复杂度语音增强框架 计算机组成原理笔记第九章 现在、新的已经开始
标签聚合
python学习 Python Java 生活 鸟哥的linux私房菜 linux 学习 算法 高中 leetcode
最近评论
davidcheung 发布于 5 个月前(02月09日) The problem has been fixed. May I ask if you can s...
tk88 发布于 5 个月前(02月07日) Hmm is anyone else having problems with the pictur...
cuicui 发布于 8 个月前(10月20日) :wink:
niming 发布于 9 个月前(09月19日) 同级校友,能刷到太巧了
davidcheung 发布于 2 年前(08月16日) 我得找一下我之前整理的word文档看一下,如果找到了我就更新一下这篇文章。
Nolan 发布于 2 年前(07月25日) 您的笔记非常有帮助。贴图不显示了,可以更新一下吗?
davidcheung 发布于 3 年前(06月19日) 到没有看webrtc的代码。现在主要在看我们公司的代码了。。。只是偶尔看一看webrtc的东西。。。
aobai 发布于 3 年前(03月13日) gain_change_hangover_ 应该是每三个block 只能够调整一次,这样保证每帧...
匿名 发布于 5 年前(12月30日) 烫
小奥 发布于 5 年前(12月12日) webRTC里面的NS本身我记得就是在C++里面呀

COPYRIGHT © 2025 小奥的学习笔记. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

陕ICP备19003234号-1

鲁公网安备37120202000100号