摘要:
谁的方案? 前几天和一个小伙伴讨论方案公司的价值,他给出定位还是比较准确地,作为一家方案公司,就是让产品公司,低成本,快速的推出具有市场竞争力的产品。凭借着本团队在无线蓝牙领域的深耕,这些年也做了不少产品。抱着资源不浪费的原则,这里把做过的产品展示给大家,让有需要的朋友能够快速的找到适合的方案。 方 阅读全文
摘要:
一 概念: 在声学领域中,DRC(Dynamic range compression) 一般用来动态调整音频输出幅值,在音量大时压制音量在某一范围内,在音量小时适当提升音量。通常用于控制音频输出功率,使扬声器不破音,当处于低音量播放时也能清晰听到。 DRC通常用于声音的记录和再现,广播,现场声音增强 阅读全文
摘要:
前记: 书到用时方恨少,工具用时方才发现好不到。为了一个工具,也是折腾了有一阵了。 工具说明: 在耳机中,各大芯片公司为了节省内存,本地播放的一般都是sbc格式文件,这就用到了wav转sbc文件的软件,这个市面上非常少,很多只能依靠专门的工具, 笔者找了好久也才算挖掘出来了一个。有需要的小伙伴联系我 阅读全文
摘要:
一 概念: hexdump是Linux下的一个二进制文件查看工具,它可以将二进制文件转换为ASCII、八进制、十进制、十六进制 格式进行 查看。 二 用法简介: 该工具的用法十分简单,具体如下所示: hexdump: 不适用的选项 -- - usage: hexdump [-bcCdovx] [-e 阅读全文
摘要:
概述 在音频前端处理算法中,beamforming算法是一个无法绕过的存在,随着AI技术的广泛发展,前端语音技术的需求也在呈现个性化的动态范围。作为一个深耕音频算法多年的老兵,发现站在巨人的肩膀上,才能做出对得起客户的产品。今天就分析一下一个开源的beamforming算法。 算法流程 步骤一:预处 阅读全文
摘要:
一 简介: CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CMakeLists.txt。Cma 阅读全文
摘要:
一 语法: load(filename) load(filename,variables) load(filename,'-ascii') load(filename,'-mat') load(filename,'-mat',variables) S = load(___) load filenam 阅读全文
摘要:
最简单的代码,能够解决最棘手的问题,才是解决工程师的需要: #include <stdio.h> #include <time.h> #include <unistd.h> int main(void) { time_t t; time(&t); while(1) { sleep(1); print 阅读全文
摘要:
总结 新年的钟声敲响了,沉重的2020就这样消失在历史中了。一年之间,斗转星移,春夏秋冬,当回望过去,感触颇深。有太多的经历值得回味,有太多痛苦值得铭记。有太多的失误值得修正,也有太多的成长值得庆祝。经历过彷徨,失望,也经历过开心和刻骨铭心。不过,这些都会像窗外飘飞的雪花落入泥土一样,这些都会慢慢的 阅读全文
摘要:
概念 在数字信号处理过程中,每次FFT变换只能对有限长度的时域数据进行变换,因此,需要对时域信号进行信号截断。即使是周期信号,如果截断的时间长度不是周期的整数倍(周期截断),那么,截取后的信号将会存在泄漏。为了将这个泄漏误差减少到最小程度(注意我说是的减少,而不是消除),我们需要使用加权函数,也叫窗 阅读全文
摘要:
目前基于麦克风阵列的声源定位方法大致可以分为三类:基于最大输出功率的可控波束形成技术、基于高分辨率谱图估计技术和基于声音时间差(time-delay estimation,TDE)的声源定位技术。 基于TDE的算法核心在于对传播时延的准确估计,一般通过对麦克风间信号做互相关处理得到。进一步获得声源位 阅读全文
摘要:
前记 随着以AI为核心的智能设备的广泛发展,语音这个非常重要的入口一直是很多厂商争夺的市场。作为音频采集的前端设备,能采集到的距离远,清晰度高,无噪声的信号是一个非常重要的能力。这样就对音频前端降噪提出了新的需求,需要前端降噪更加智能化,更加深度化,更加低成本化。 面对市场的强劲需求和市场的不断变化 阅读全文
摘要:
早期语音质量的评价方式是凭主观的,人们在打通电话之后通过人耳来感知语音质量的好坏。1996年国际ITU组织在ITU-T P.800和P.830建议书开始制订相关的评测标准:MOS(Mean Opinion Score)测试。 它是一种主观测试方法,将用户接听和感知语音质量的行为进行调研和量化,由不同 阅读全文
摘要:
前记: 人生苦短,我用python,python在做一些算法验证和接口验证方面,的确是非常的好用。读取串口经常用到,这里就做个总结,给自己和周围的人做个备忘吧。 函数解析: 初始化串口数据: import serial #Serial takes two parameters: serial dev 阅读全文
摘要:
待补充 阅读全文
摘要:
FIR的作用和价值 FIR(Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,又称为非递归型滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、 阅读全文
摘要:
前记: C语言的头文件是嵌入式系统中常用的,也是很多人没有注意的,但是写的很差的,这里给出一个经典的模板,仅供参考。 正文: 经典的格式: /************************************** hello.h product name:c code test module 阅读全文
摘要:
一 前言: python判断bytes是否相等,一般要用到这几种方法:is,==,operator.下面做几个例子让大家看一下. 二 正文: 1 相等方法: test1=b'0xab' test2=b'0xab' if test1 == test2: print("equeal is success 阅读全文
摘要:
一 概念: 元组是有序且不可更改的集合。在 Python 中,元组是用圆括号编写的。 二 使用方法: 1 基本创建: thistuple = ("apple", "banana", "cherry") print(thistuple) 2 访问: thistuple = ("apple", "ban 阅读全文
摘要:
前记: python是一个非常好用的语言,能够帮忙处理很多日常的耗费体力的事情。今天做一个脚本的时候,遇到了python替换的问题,这里就梳理一下知识点吧。 概念: 1.replace() 基本用法:对象.replace(rgExp,replaceText,max) 其中,rgExp和replace 阅读全文
摘要:
python很多数据都是bytes格式的,经常需要转换成int或者short,笔者实际项目有需求,这里就做个笔记吧。 实例一: bytes转short:(无符号类型) import struct barray = b'\x00\xfe\x4b\x00\x4b\x00' count = len(bar 阅读全文
摘要:
静态链接库的创建 静态链接库其实就相当于压缩包,其内部可以包含多个源文件。但需要注意的是,并非任何一个源文件都可以被加工成静态链接库,其至少需要满足以下 2 个条件: 源文件中只提供可以重复使用的代码,例如函数、设计好的类等,不能包含 main 主函数; 源文件在实现具备模块功能的同时,还要提供访问 阅读全文
摘要:
一 前记: c语言中需要用到随机值得时候,每次都自己写,这样太浪费效率了,这次遇到了一个经典的代码,就珍藏起来吧。 二 实例分析: 1 #include <stdio.h> 2 3 int random_number(int min_num, int max_num); 4 5 int main(v 阅读全文
摘要:
python中在不同类型数据转换方面是有标准库的,使用非常方便。但是在开发中,经常在list中字符转成整形的数据方便遇到问题。这里就记录一下常用的几种方法。 方法一:最基本的方法:通过轮训整个list来实现转换,具体代码如下: # Python3 code to demonstrate # conv 阅读全文
摘要:
一 打开txt的正确方式 一般人会用到怎么快速打开txt,下面分享两种方式: f = open("data.txt","r") #设置文件对象 f.close() #关闭文件 #为了方便,避免忘记close掉这个文件对象,可以用下面这种方式替代 with open('data.txt',"r") a 阅读全文
摘要:
一 python 结构体 * python struct 模块可以用来在存储二进制文件,广泛用在文件系统,网络连接领域。 * 它可以用在c语言和python语言之间的数据的格式转换。 二 Python Struct Functions 这里有5个重要的数据结构模块函数:pack(),unpack() 阅读全文
摘要:
作为一个音频算法工程师,不懂重采样怎么可以呢?这里做一个常用的方法介绍: pcm转wav: ffmpeg -f s16le -ar 8000 -ac 2 -i out.pcm -ar 44100 -ac 2 out.wav 48k重采样到16k: ffmpeg -f s16le -ar 48000 阅读全文
摘要:
一 写在前面的话: 音频算法仿真过程中,本来是一个跑的好好地程序,突然间在mac下就报错了,出现的错误是: ld: symbol(s) not found for architecture x86_64clang: error: linker command failed with exit cod 阅读全文
摘要:
前记 扩声系统为人们的日常文化活动带来很多便捷。但是,声反馈现象作为扩声系统中不可避免的问题,不断产生再生混响,对音频数据的传输造成一定程度的影响,严重时,会引起啸叫现象。尖锐刺耳的啸叫现象会导致音频信号失真,影响听觉效果。 抑制啸叫的方法有很多种,如移频、自适应反馈抑制、陷波等。由于在所有的抑制方 阅读全文
摘要:
一 基本概况 在做基本的c代码测试的时候,经常会遇到gcc做编译,作为一个工程师,不存点模板,每次都是自己写的话,那不是非常的浪费体力,程序员本来就累了。在这上面浪费不少时间,吃力不讨好啊。 保存一些模板,以备不时之需,才是王道啊。 二 具体代码 下面是笔者测试ok的一个基本模板,亲测可用。分享一下 阅读全文