自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (2)
  • 收藏
  • 关注

原创 WebRTC的TaskQueue源码分析

WebRTC的TaskQueue源码分析随着WebRTC的更新,很多新的特性被添加了进来,例如更完善的线程检查机制、任务处理等。本文对其中的TaskQueue进行简单分析,主要是因为自己闲着无聊,文章内容多有不妥之处,欢迎大家批评指正。TaskQueue作用TaskQueue的中文翻译是“任务队列”,顾名思义,它的作用就是把一些“任务”存储在队列中,然后再从队列中取出任务并执行。由于队...

2018-05-10 18:17:34 2539

原创 std::unique实现

函数功能:在STL中unique函数是一个去重函数, unique的功能是去除相邻的重复元素(只保留一个),其实它并不真正把重复的元素删除,是把重复的元素移到后面去了,然后依然保存到了原数组中,然后 返回去重后最后一个元素的地址,因为unique去除的是相邻的重复元素,所以一般用之前都会要排一下序。 // FUNCTION TEMPLATE unique WITH PREDtemplate&lt...

2018-04-09 11:13:02 994

转载 cef3 学习总结

CefClient:回调管理类,包含5个接口用于创建其它的回调类的对象CefLifeSpanHandler: 回调类,用于控制popup对话框的创建和关闭等操作CefLoadHandler: 回调类,可以用来监听frame的加载开始,完成,错误等信息CefRequestHandler: 回调类,用于监听资源加载,重定向等信息CefDisplayHandler: 回调类,用于监听页面加载状态,地址变

2017-05-15 11:33:54 628

原创 头插法实现链表反转

以包含四个元素、带有头结点的链表l为例:head->a1->a2->a3->a4;保持头结点不变,头插法实现链表反转步骤为:1: 将a2插在a1前面,该链表变为:head->a2->a1->a3->a4;2: 将a3插在a2前面,该链表变为:head->a3->a2->a1->a4;2: 将a4插在a3前面,该链表变为:head->a4->a3->a2-

2016-11-20 12:04:26 5593

原创 codelite+mingw安装

本文着重说明如何在codelite里配置mingw,亲测有效,自己废了一晚上的时间,希望对有需要的有所帮助。1. codelite安装官方网站下载http://codelite.org/,我下载的是codelite-x86-9.2.0具体步骤百度经验里就有。2. mingw 安装安装MinGw非常的简单,从http://www.mingw.org下载。详

2016-10-30 23:13:25 5312

转载 链表题目整理(C语言实现)

%title 链表的各种题目整理(C语言实现)(Simple and Brief) 最后更新于Date:2012-11-04这里处理的全部是单链表:typedef struct node { char *data; struct node *next; } node_t;我们约定一个打印链表的函数:void list_display(node

2016-04-28 11:11:14 1047

原创 结构体对齐

注:WIN32平台结构体对齐默认为32位,WIN32为64位,以下示例为WIN32平台。1.  typedef struct{char a;double b;char c;}str1;占用:8+8+8=24字节2.  typedef struct{double b;char a;char c;}str2;占用:8+8=16字节。后两个ch

2016-04-08 17:09:31 373

转载 二维数组

如果我们需要编写一个处理二维数组的函数,那么这个函数原型应该如何声明呢?首先,我们应该牢记:数组名被视为其地址,因此,相应的形参是一个指针。例如,假设有如下的代码:[cpp] view plain copy int data[3][4] = { {1, 2, 3, 4}, {5, 5, 7, 8}, {9, 1

2016-03-31 11:28:37 293

转载 高斯分布序列matlab

如何用matlab 产生 均值为0,方差为5的高斯噪声2011-07-15 19:36y=randn(1,2500); y=y/std(y); y=y-mean(y); a=0; b=sqrt(5); y=a+b*y; 就得到了 N ( 0, 5 ) 的高斯分布序列。R = normrnd(MU,SIGMA,m,n)

2016-03-09 16:39:57 7452 1

转载 梯度下降

回归(regression)、梯度下降(gradient descent)发表于332 天前 ⁄ 技术, 科研 ⁄ 评论数 3 ⁄ 被围观 1152 次+本文由LeftNotEasy所有,发布于http://leftnoteasy.cnblogs.com。如果转载,请注明出处,在未经作者同意下将本文用于商业用途,将追究其法律责任。前言:上次写过一篇关于贝叶斯概率论的数学

2016-03-08 16:15:49 523

转载 ln(x) 泰勒级数展开

我们知道,对数函数 ln(x) 可以展开为泰勒级数:但是下面这个泰勒级数展开式收敛得更快:经过简单计算可知上式中 y = (x - 1) / (x + 1) 。实现该算法的 C# 程序根据上面的第二个泰勒级数展开式,我们可以为 C# 的 decimal 数据类型实现如下的 Log 扩展方

2015-12-20 19:36:09 109100 1

转载 MATLAB计算结果的可视化

MATLAB计算结果的可视化本节介绍MATLAB 的两种基本绘图功能:二维平面图形和三维立体图形。5.1 二维平面图形5.1.1 基本图形函数plot 是绘制二维图形的最基本函数,它是针对向量或矩阵的列来绘制曲线的。也就是说,使用plot 函数之前,必须首先定义好曲线上每一点的x 及y 坐标,常用格式为:(1)plot(x) 当x 为一向量时,以x 元素的值为纵坐标,x 的

2015-11-19 14:40:12 2393

转载 webrtc 的回声抵消(aec、aecm)算法简介

webrtc 的回声抵消(aec、aecm)算法简介      webrtc 的回声抵消(aec、aecm)算法主要包括以下几个重要模块:1.回声时延估计 2.NLMS(归一化最小均方自适应算法) 3.NLP(非线性滤波) 4.CNG(舒适噪声产生),一般经典aec算法还应包括双端检测(DT)。考虑到webrtc使用的NLMS、NLP和CNG都属于经典算法范畴,故只做简略介绍,本文重点介绍

2015-08-11 19:49:20 1445 1

转载 二级指针

void change_val(char *p)  {      char new_val[3] = {2, 3, 4};    // [2]      p = new_val;    //[3]    return;             // [4]  }  char val[3] = {1, 2, 3};  char *p = val;           

2015-04-21 09:08:38 341

转载 DSP28335—CMD文件中的各个段解释

CMD文件里有两个基本的段:初始化段和非初始化段。初始化段包含代码和常数等必须在DSP上电之后有效的数。故初始化块必须保存在如片内FLASH等非易失性存储器中,非初始化段中含有在程序运行过程中才像变量内写数据进去,所以非初始化段必须链接到易失性存储器中如RAM。已初始化的段:.text,.cinit,.const,.econst,.pinit和.switch...text:所有可以执行

2015-04-20 20:51:29 5720

原创 dsp调试-----2

今天,终于彻底的移植成功了,现拿出一些时间,做一些总结,以后遇到问题也好解决。1、16位dsp,默认整形数是16位int,所以要注意变量移位的时候,是否会溢出。例如:12、GET一个新技能, int16_t  fft_buf[PART_LEN4+ 16];  int16_t *fft = (int16_t *) (((uintptr_t) fft_buf + 31) & ~

2015-04-20 19:50:34 803

原创 被dsp折磨的一些血泪屎

小白最近一直再调试dsp程序,发现程序突然跑飞时,首先要修改查看cmd里——stack或在build option 里选择stack的尺寸。同时小白发现.stack与.sysstak不是一回事,具体是什么区别,目前还没有时间研究。同时发现自己设定的DATA_sectioon不起作用,很费解,明天继续查看调试。——heap同样也是大的程序跑飞的很有可能的原因。NND,怎么这次遇到这么多问题。查到的一

2015-04-16 20:37:24 660

原创 CMD文件调试体会

小白最近一直再调试dsp程序,发现程序突然跑飞时,首先要修改查看cmd里——stack或在build option 里选择stack的尺寸。同时小白发现.stack与.sysstak不是一回事,具体是什么区别,目前还没有时间研究。同时发现自己设定的DATA_sectioon不起作用,很费解,明天继续查看调试。——heap同样也是大的程序跑飞的很有可能的原因。NND,怎么这次遇到这么多问题。查到的一

2015-04-16 20:29:33 1086

转载 inline函数的使用

在C++中,为了解决一些频繁调用的小涵数大量消耗栈空间或者是叫栈内存的问题,特别的引入了inline修饰符,表示为内联涵数。    可能说到这里,很多人还不明白什么是栈空间,其实栈空间就是指放置程序的局部数据也就是函数内数据的内存空间,在系统下,栈空间是有限的,如果频繁大量的使用就会造成因栈空间不足所造成的程序出错的问题,涵数的死循环递归调用的最终结果就是导致栈内存空间枯竭。 

2015-04-02 20:51:48 453

转载 vs2010链接外部的库及头文件的步骤

我老是忘记如何在vs2010中链接外部的库,每次都要上网找,现在记录一下下。VS中添加LIb库及头文件(外部依赖项)的步骤: 1、添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录:加上头文件存放目录。 2、添加文件引用的lib静态库路径:工程---属性---配置属性---链接器---常规---附加库目录:加上lib文件存

2015-04-02 20:40:35 4927 1

转载 如何在C/C++中动态分配二维数组

如何在C/C++中动态分配二维数组在C/C++中动态分配二维数组可以先申请一维的指针数组,然后该数组中的每个指针再申请数组,这样就相当于二维数组了,但是这种方法会导致每行可能不相邻,从而访问效率比较低。如何申请连续的二维数组了?本文将分别三个方面讲解:一.动态申请列大小固定的二维数组二.C语言中动态申请连续的二维数组三.C++语言中动态申请连续的二维数组 

2015-03-31 16:58:04 390

转载 fft

总结:假设采样频率为Fs,采样点数为N,做FFT之后,某一点n(n从1开始)表示的频率为:Fn=(n-1)*Fs/N;该点的模值除以N/2就是对应该频率下的信号的幅度(对于直流信号是除以N);该点的相位即是对应该频率下的信号的相位。相位的计算可用函数atan2(b,a)计算。atan2(b,a)是求坐标为(a,b)点的角度值,范围从-pi到pi。要精确到xHz,则需要采样长度为

2015-03-31 16:54:08 324

nlms 回声消除

用于回声消除研究的MATLAB代码,用于学术论文可行性的研究

2015-08-05

echo canceller

很好回升技术应用,全部源代码,可直接使用,欢迎大家下载使用

2015-03-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除