自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Charles' home

Le vent se lève, il faut tenter de vivre!

  • 博客(56)
  • 资源 (1)
  • 收藏
  • 关注

原创 const 类型详解

const变量有全局的和局部的,C语言中全局的const变量默认为外连接,所以默认都是有内存地址的,c++中全局的const变量默认为内连接,它可以被编译 器放到符号表中作为编译期常量,所以在c中,const int k = 2; int a[k]是非法的,但在c++中是合法的。       这是全局const变量,局部的const变量在C和C++中一视同仁,都是放在函数局部栈中的,把编译

2017-06-30 19:22:24 984

原创 音频基础知识

音频,英文是AUDIO,也许你会在录像机或VCD的背板上看到过AUDIO输出或输入口。这样我们可以很通俗地解释音频,只要是我们听得见的声音,就可以作为音频信号进行传输。有关音频的物理属性由于过于专业,请大家参考其他资料。自然界中的声音非常复杂,波形极其复杂,通常我们采用的是脉冲代码调制编码,即PCM编码。PCM通过采样、量化、编码三个步骤将连续变化的模拟信号转换为数字编码。一、音频基本概念

2017-06-29 16:26:38 1957

转载 单独编译和使用webrtc音频回声消除模块(AEC)

原文转载于:http://www.cnblogs.com/mod109/p/5827918.html#top  非常感谢。说实话很不想写这篇文章,因为这和我一贯推崇的最好全部编译并使用webrtc音频处理模块相悖。可是不知不觉已经把降噪和增益写出来,回声消除如果用户可以得到完美利用也不失为一个很好的方法。但是还是那句话,最好还是全部编译和使用webrtc的整个音频处理模块。另外这篇文章已经

2017-06-29 16:12:06 8564 1

转载 单独编译和使用webrtc音频增益模块(AGC)

webrtc的音频处理模块分为降噪ns和nsx,回音消除aec,回声控制acem,音频增益agc,静音检测部分。另外webrtc已经封装好了一套音频处理模块APM,如果不是有特殊必要,使用者如果要用到回声消除等较为复杂的模块时,最好使用全部的音频处理模块,不要单独编译其中一部分以免浪费宝贵的时间。但是音频降噪,增益功能较为简单,还能直接使用。这部分源码是我从webrtc中抠出来,单独放到V

2017-06-29 16:08:11 3593 1

转载 单独编译和使用webrtc音频降噪模块(NS)

单独编译和使用webrtc音频增益模块(附完整源码+测试音频文件)单独编译和使用webrtc音频回声消除模块(附完整源码+测试音频文件)webrtc的音频处理模块分为降噪ns,回音消除aec,回声控制acem,音频增益agc,静音检测部分。另外webrtc已经封装好了一套音频处理模块APM,如果不是有特殊必要,使用者如果要用到回声消除等较为复杂的模块时,最好使用全部的音频处理模块二不要单独

2017-06-29 15:51:57 5812 2

原创 声学回声和混响

声学回声是指扬声器播放出来的声音被麦克风拾取后发回远端,使远端谈话者能听到自己的声音。声学回声又分为直接回声和间接回声。直接回声是指扬声器播放出来的声音未经任何反射直接进入麦克风。这种回声延迟最短,它与远端说话者的语音能量,扬声器与话筒之间的距离、角度、扬声器的播放音量以及话筒的拾取灵敏度等因素相关;间接回声是指扬声器播放的声音经不同的路径一次或多次反射后进入麦克风所产生的回声集合。

2017-06-27 08:53:30 4062

转载 FFT算法的完整DSP实现

原文转载于:http://blog.csdn.net/xiahouzuoxin/article/details/9790455    非常感谢。傅里叶变换或者FFT的理论参考:[1] http://www.dspguide.com/ch12/2.htm      The Scientist and Engineer's Guide to Digital Signal Pro

2017-06-25 14:37:44 1110

转载 解密回声消除技术之二(应用篇)

本文出自 “碧海银沙” 博客,请务必保留此出处http://silversand.blog.51cto.com/820613/166101从应用平台来看,根据笔者多年的经验,可以把回声消除分为两大类:基于DSP等实时平台的回声消除技术和基于Windows等非实时平台的回声消除技术。两者的技术难度和重点是不一样的。 三、基于DSP平台的回声消除技术回声消除技术传统的应

2017-06-25 12:55:48 633

转载 解密回声消除技术之一(理论篇)

本文出自 “碧海银沙” 博客,请务必保留此出处http://silversand.blog.51cto.com/820613/166095一、前言因为工作的关系,笔者从2004年开始接触回声消除(Echo Cancellation)技术,而后一直在某大型通讯企业从事与回声消除技术相关的工作,对回声消除这个看似神秘、高端和难以理解的技术领域可谓知之甚详。要了解回声消除技术的来龙去

2017-06-25 12:45:49 541

原创 浅淡TI DSP 6000系列优化经验

一、首先考虑从系统结构上优化,比如尽量减少待处理数据的无谓搬移,考虑你DSP片内存储量和每次处理数据量对系统结构优化,这部分的优化应该最早做;二、其次从算法层面上着手,看采用的算法有没有更好更简单的计算方法,算法是否有某种对称性,可否采用更合适的数据结构等等,这方面的优化比程序上的优化更明显;三、如果算法层面暂时无更好的优化办法,看看软件结构能否优化。比如:

2017-06-25 09:37:46 1019

原创 TI DSP C64X 优化基本方法

一、优化流程一般分为三个阶段  阶段一:直接按照需要用C语言实现功能。在实际的DSP应用中,许多算法直接用汇编代码编写,虽然优化效率很高,可是实现的难度却很大,所以一般先用C语言来实现,然后编译运行,利用C64X开发环境的profile; clock工具测试程序运行时间,若不能满足要求,则进行第二阶段。  阶段二:C语言级的优化。选择C64X开发环境提供的优化方式以及充分运用其

2017-06-24 19:53:50 1182 1

转载 WebRTC音频模块

本文转载于:http://blog.csdn.net/neustar1/article/details/19344503   非常感谢。本文介绍WebRTC音频模块组成和结构,详细介绍音频引擎的配置和启动,相信看完本文后,很多人可以利用WebRTC完成一个音频通话程序开发。一、对外接口      音频部分的对外主要接口如下,各个接口之间的关系如图1所示。1)Voice Engine

2017-06-24 16:16:23 1650

转载 WebRTC的噪声抑制(noise suppression,NS)算法

WebRTC噪声抑制核心算法在ns_core.c文件里。噪声频谱可以使用如语音/噪声似然函数进行估计。将接收到的每帧信号和频率分量分类为噪声或语音。算法原理该算法的核心思想是采用维纳滤波器抑制估计出来的噪声。上式中x和n分别表示语音和噪声,而y表示麦克风采集到的信号。它们的频谱关系如上,从上图可以看出语音和噪声是加性且不相关的关系,对于非加性关系

2017-06-24 08:55:25 23129 3

转载 WebRTC 的回声抵消(AEC、AECM)算法简介

webrtc 的回声抵消(Acoustic Echo Cancellation,AEC、Acoustic Echo Canceller for Mobile,AECM)算法主要包括以下几个重要模块:回声时延估计;NLMS(归一化最小均方自适应算法);NLP(非线性滤波);CNG(舒适噪声产生)。一般经典AEC算法还应包括双端检测(DT)。考虑到webrtc使用的NLMS、NLP和C

2017-06-24 08:46:15 3038

原创 WebRTC音频处理流程简介

本文概要介绍webRTC的音频处理流程,见下图:webRTC将音频会话抽象为一个通道Channel,譬如A与B进行音频通话,则A需要建立一个Channel与B进行音频数据传输。上图中有三个Channel,每个Channel包含编解码和RTP/RTCP发送功能。以一个Channel而言,应用程序中将包含三个活动线程,录音线程,音频接收线程和播放线程。1)录音线程:

2017-06-24 08:27:23 1515

转载 WEBRTC基本介绍

原文来自:http://www.cnblogs.com/lidabo/p/6842765.html“WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的技术,是谷歌2010年以6820万美元收购Global IP Solutions公司而获得的一项技术,Google开源了这项技术!”就

2017-06-23 21:07:08 411

转载 基于TI C6678的LMS算法实时实现

非常感谢博主Inspire的文章http://blog.csdn.net/hj199404182515/article/details/52613969关于自适应LMS的理论基础已经非常的成熟,随便找一本关于自适应滤波器的书就会有介绍相关的内容,有的还可出了它的具体算法,但是还没有一本书有讲过怎样编写能够时实(Real Time)处理的基于C的自适应LMS算法(至少我没有见过),而这个应该

2017-06-23 10:58:01 1652

转载 CCS与Matlab数据交换详解

原文来自:http://blog.csdn.net/hj199404182515/article/details/60958304   非常感谢博主的技术贴。在进行DSP算法设计时,我们通常会在Matlab上验证一下算法是否正确,然后再把算法移植到DSP当中,然而在移植的过程中会不可避免的出现各种问题,这时就需要将DSP内存中的数据导出来传到Matlab中进行分析处理,同时我们

2017-06-23 10:41:36 2043

原创 嵌入式实时操作系统μC/OS-Ⅱ 在DSP芯片上的移植与测试

【摘要】为了降低DSP 系统软件的开发难度,保证系统的实时性,缩短开发周期,将嵌入式实时操作系统μC/OS-Ⅱ移植到DSP 芯片中是目前比较常用的一种方法。本文介绍了嵌入式实时操作系统μC/OS-Ⅱ的特点,并研究分析了μC/OS-Ⅱ操作系统在目前比较流行的DSP芯片TMS320C6713上的移植方法,解决了移植μC/OS-Ⅱ过程中的重点和难点。最后对移植后的操作系统进行测试,最终测试结果表明:该操

2017-06-23 09:58:38 2317

原创 C语言基础知识及其几种常用的语句

1.1 软件,程序与计算机语言软件是为完成某些特定功能而编制的一个到多个程序文件的集合。程序是计算机指令的序列,编制程序的工作就是为计算机编制指令序列。人和计算机交流也要用人和计算机都容易接受和理解的语言,这就是计算机语言。1.2 程序语言的发展1.2.1 机器语言计算机的机器语言都是由0和1组成,计算机的所有数据都是由0和1组成。1.2.2

2017-06-22 17:20:07 2146

转载 语音信号的预加重和加窗处理

原文来自:http://blog.csdn.net/ziyuzhao123/article/details/12004603一、语音信号的预加重语音信号的预加重,目的是为了对语音的高频部分进行加重,去除口唇辐射的影响,增加语音的高频分辨率。一般通过传递函数为一阶FIR高通数字滤波器来实现预加重,其中a为预加重系数,0.9预加重实验:[cpp] vie

2017-06-21 21:47:50 18879 1

转载 对TCP/IP网络协议的深入浅出归纳

原文来自于:http://www.cnblogs.com/visec479/archive/2014/07/28/3872486.html  非常感谢。前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑。主要是因为对网络协议不太熟悉,对一些概念也没弄清楚。后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网络协议有了初步的认识,在这里总结出来,可

2017-06-21 21:36:54 355

原创 CubeSuite+ 的使用介绍

一、创建工程1、启动 CubeSuite+ 在开始菜单的程序里找到Renesas ElectronicsCubeSuite+ 的 CubeSuite+图标, 单击执行,将会弹出如下界面。如果不是第一次执行,CubeSuite+ 会自动加载最后一次执行的Project 。 图1.1  启动CubeSuite+ 2、创建 Project 在启动界面中,点击Creat

2017-06-21 20:10:44 10556 4

转载 C/C++ 知识点简单总结

原文地址:http://blog.csdn.net/quzhongxin/article/details/488333451. 静态编译与动态编译动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。所以其优点一方面是缩小了执行文件本身的体积,另一方面是加快了编译速度,节省了系统资源。缺点一是哪怕是很简单的程序,只用到了链接库中的一两条命令,

2017-06-21 10:44:07 891

转载 C语言和C++的不同之处和相同之处

原文来自:http://blog.csdn.net/qq_30125317/article/details/47066675有适当修改,感谢。 ​一、应用场合C语言:​C语言是结构化和模块化的语言,是面向过程的。当程序的规模较小时,C语言运用起来得心应手。但是当问题比较复杂、程序的规模比较大的时候,C语言就会展现出它的局限性。C++:正是因为有大规模的程序需要去处理

2017-06-20 20:40:06 6619

原创 C++面试宝典

1.new、delete、malloc、free关系delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之

2017-06-20 20:23:53 2832

原创 万能头文件 #include<bits/stdc++.h>

经常看人写#include 却不知道是干啥的? #include包含了目前c++所包含的所有头文件对比:#include #include #include #include #include #include #include #include #include string> #include #include #i

2017-06-20 20:00:15 6558

原创 华为16道经典面试题

面试过程中,面试官会向应聘者发问,而应聘者的 回答将成为面试官考虑是否接受他的重要依据。对应聘者而言,了解这些问题背后的“猫腻”至关重要。本文对面试中经常出现的一些典型问题进行了整理,并给出相应的回答思路和参考答案。读者无需过分关注分析的细节,关键是要从这些分析中“悟”出面试的规律及回答问题的思维方式,达到“活学活用”。问题一:“请你自我介绍一下”■思路:1、这是面试的必考题目。2

2017-06-19 16:59:11 63099 1

转载 基于C语言的常见排序算法(冒泡,选择,快速)的实现

原文来自于:http://www.cnblogs.com/herbert/archive/2011/01/20/1940392.html   非常感谢!要实现这几种算法的关键是要熟悉算法的思想。简单的说,冒泡排序,就如名字说的,每经过一轮排序,将最大的数沉到最底部。选择排序的思想是将整个数列,分为有序区和无序区。每轮排序,将无序区里的最小数移入到有序区。快速排序的思想是以一个数为中心,通常

2017-06-19 09:01:32 485

原创 自适应滤波器学习笔记

自适应滤波器是能够根据输入信号自动调整性能进行数字信号处理的数字滤波器。作为对比,非自适应滤波器有静态的滤波器系数,这些静态系数一起组成传递函数。对于一些应用来说,由于事先并不知道所需要进行操作的参数,例如一些噪声信号的特性,所以要求使用自适应的系数进行处理。在这种情况下,通常使用自适应滤波器,自适应滤波器使用反馈来调整滤波器系数以及频率响应。总的来说,自适应的过程涉及到将代价函数

2017-06-18 21:34:47 2468

原创 窄带信号和宽带信号的区别和联系

这个问题首先需要讨论宽带信号与窄带信号的定义。然而,没有文献或组织对宽带信号给出的严格定义,业内一般认为宽带信号与窄带信号是相对的,不满足窄带条件的信号就称为宽带信号。目前,窄带信号的定义也不尽相同。若信号带宽为B ,时宽为T,中心频率为f0,则窄带信号的定义有:定义1: B 定义2: 2v/c定义3:( N-1) d/c定义4:2 Bτθ +1≈1 ,其中τθ是整个阵列以及延

2017-06-18 21:14:02 19439

原创 国内C/C++刷题网站汇总

作者:Luau Lawrence链接:https://www.zhihu.com/question/25574458/answer/31175374来源:知乎- Welcome To PKU JudgeOnline 北京大学的Online Judge。POJ上面的题目有点老了,但好处是做的人多,经典算法题多,解题报告也多,适合上手。- ZOJ :: Home 浙江大学的

2017-06-18 11:29:37 72941 4

原创 50个C/C++源代码网站

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码 。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建 议,以进一步加强这方面的清单。添加:http://www.boost.org/1、http://snippets.dzone.com/tag/

2017-06-18 11:26:52 859

转载 VC++深入详解学习笔记

原文来自:http://www.cnblogs.com/gaojun/archive/2010/08/15/1800099.html#_Toc269652893感谢博主的分享。Lesson1: Windows程序运行原理及程序编写流程窗口产生过程,句柄原理,消息队列,回调函数,窗口关闭与应用程序退出的工作关系,使用VC++的若干小技巧,stdcall与Lessonecl调用

2017-06-15 11:08:12 3735 1

原创 简析全双工与半双工的区别

全双工传输英文写法是:Full-Duplex Transmissions是指交换机在发送数据的同时也能够接收数据,两者同步进行,这好像我们平时打电话一样,说话的同时也能够听到对方的声音。目前的交换机都支持全双工。全双工的好处在于迟延小,速度快。与之对应的是【半双工】这个概念:就是指一个时间段内只有一个动作发生,举个简单例子,一天窄窄的马路,同时只能有一辆车通过,当目前有两量

2017-06-12 11:38:03 25462 2

转载 几种改进的谱减算法简介

原文来自于:https://user.qzone.qq.com/314138065?ptlang=2052&source=friendlist&_t_=0.511081986229794    非常感谢。非线性谱减Berouti等人提出的谱减算法,假设了噪声对所有的频谱分量都有同等的影响,继而只用了一个过减因子来减去对噪声的过估计。现实世界中的噪声并非如此,这意味着可以用一个频率相关的减法

2017-06-12 09:28:42 3316

原创 Linux系统下常用命令操作

在Linux系统下,重启Tomcat使用命令操作的!首先,进入Tomcat下的bin目录cd /usr/local/tomcat/bin使用Tomcat关闭命令./shutdown.shgrep pet_sso /opt/*/conf/server.xml (放到某个tomcate环境下)查看Tomcat是否以关闭

2017-06-11 10:57:17 807

原创 基于射频CC2520 实现的ZigBee 通信设计

引言通信是多机器人之间进行信息交互并实现协作的基础。ZigBee 作为一种新兴的短距离无线网络技术,采用IEEE802.15.4标准,利用全球共用的公共频率2.4GHz,具有低复杂度、低成本、低功耗、网络结点多、传输距离远等优点,非常适合多机器人系统的应用。为了实现多机器人之间的无线通信,本文基于ZigBee 技术, 使用射频芯片CC2520 实现了一种实测通信距离达到500米以上的模块设计。

2017-06-09 22:25:33 3559

原创 TTL电平和CMOS电平总结

1,TTL电平:输出高电平>2.4V,输出低电平=2.0V,输入低电平2,CMOS电平:1逻辑电平电压接近于电源电压,0逻辑电平接近于0V。而且具有很宽的噪声容限。3,电平转换电路:  因为TTL和COMS的高低电平的值不一样(ttl5vcmos 3.3v),所以互相连接时需要电平的转换。4,OC门,即集电极开路门电路,OD门,即漏极开路门电路,必须外界上拉电阻和电源才能将

2017-06-09 19:05:13 40455

转载 基于labview串口通信

内容整理于网络:http://blog.csdn.net/h_kingone/article/details/70667105一、十六进制和ASCII之间的相互转换有的仪器进行与labview通信,它以十六进制的形式返回信息。例如,它不会返回字母"L”,而是返回它对应的十六进制表示"4C”。在LabVIEW中,我们需要编程实现将这个十六进制表示转换为其对应的

2017-06-09 15:23:46 13694

USB接口与编程

对于USB接口与编程作了一定的介绍和阐述,帮助理解USB接口与编程!

2016-08-12

空空如也

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

TA关注的人

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