自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 嵌入式audio软件工程师的自我修养

本人自2012年开始从事音频软件相关的开发工作,如今也有十多年的时间,假如你现在准备投身音频软件这个领域,或者是想面试音频软件相关的岗位,或许这篇文章有你想要的东西。

2024-04-07 15:09:33 342 1

原创 ELF文件解析

linux xtensa elf

2024-02-07 16:54:16 730 1

原创 FreeRTOS线程和线程调度

FreeRTOS线程

2023-02-06 21:07:43 1562

原创 音频质量评价方法

音频质量主客观评价方法

2022-11-30 17:06:08 861

原创 docker基础知识

docker技术简介

2022-11-09 23:58:21 628

原创 ubuntu系统安全UFW

ubuntu UFW安全

2022-09-09 17:54:54 1365

原创 阵列信号处理基础

前言阵列信号处理利用多个麦克风的的空间信息对接受信号做空域滤波和信号合成,是除时域和频域外的一种新的信号处理手段。常用的多麦克风波束形成技术有:DSB(delay-sum beamforming), MVDR(minimum variance distortionless response), GSC(generalized sidelobe canceller).阵列流形矢量 任意阵列 在一个三维直角坐标系中,假设麦克风的位置为P坐标,当语音信号a从某个方位传递到位于各个P坐

2022-02-08 15:28:19 5782

原创 GSL库在ubuntu下的安装调试

GSL库的安装调试

2021-12-23 15:36:58 1422

原创 linux 锁机制

1. 锁的种类Name 函数api 特点 原子操作 atomic_read atomic_set 只能针对单变量 信号量/互斥锁 down down_interruptible down_uninterruptible up 一般当获取不到当前的锁变量时会进入睡眠,不能在中断上下文中使用 自旋锁 spin_lock spin_unlock 捕获

2021-12-02 12:03:44 1514

原创 基于MCRA的语音噪音估计

Minima Controlled Recursive Averaging (MCRA)MCRA是由Israel Cohen在论文中提出的最小值追踪递归平均法,本文根据此论文总结如何来评估带噪语音中噪音部分,从而可以来做噪音消除任务。输入信号的时域表示带噪输入信号公式y(n)=x(n)+d(n)y(n) = x(n) + d(n)y(n)=x(n)+d(n)x(n):语音d(n):噪音y(n):语音+噪音输入信号频域表示STFTk:频域的频率indexl:时域信号的帧indexM:时域

2021-04-29 19:46:53 877

原创 Eclipse单步调试技巧

作为一名复制粘贴工程师,快速上手一个开源项目,利用eclipse来调试是不可缺少的一项技能。本文将介绍如何基于makefile来单步调试一个项目。前期准备下载某一个开源项目,这里以https://github.com/musiclvme/debug_bf为例。这个项目是基于cmake来编译的,最后会生成一个bin。 设置编译选项,需要加上编译选项: -g -O0 编译,mkdir build; cd build; cmake ..; make -j4 工程导入新建...

2021-04-24 13:40:37 827

原创 数字信号处理基础1

数字信号处理基础图片摘之网络,如有侵权,请联系删除信号处理数字化过程带来的问题时域采样---------> 频谱混叠 (当采样频率小于模拟信号的最高频率的2倍的时候,)时域截断--------->频谱泄露 (不可消除,只能减小)频域采样--------->栅栏效应 (不可消除,只能减小)数字信号基本...

2021-01-21 23:49:22 186

原创 android刷机教程基础篇

前言参考连接:https://source.android.com/这篇文章将教你如何从google的网站获取官方image, 刷到google出品的手机pixel。(如果你有google原生的其他手机,也是相通的)适合喜欢折腾的朋友! 本文为刷机基础篇,后期高级篇会讲通过获取aosp源码来编译生成image来刷pixel手机。android基础知识android版本android一般是每年推出一个大版本, 从2015年的android5一直发展到了2020年的andro...

2020-09-21 23:24:23 2187

原创 CMAKE编写指南

CMAKE介绍CMAKE 是一种跨平台的编译系统, 本文主要是简述cmake中一些常用的技巧, 将会以tips的形式来总结各个技术点.参考文档:https://cmake.org/cmake/help/v3.18/guide/tutorial/index.html // 官方英文文档https://chenxiaowei.gitbook.io/cmake-cookbook/ // 中文文档https://cgold.readthedo...

2020-08-17 17:50:34 580

原创 ubuntu18.04 升级linux kernel的几种方式

ubuntu作为很多程序员的开发系统,讲究的就是拓展性和自主性,可以自动升级或者降级linux kernel就是其拓展性的一种表现。本文将描述两种升级ubuntu linux kernel的方式,以供大家参考。前期准备确认当前的ubuntu系统的kernel版本:uname -r, 这个很重要以防升级linux kernel后产生问题,导致系统无法启动;这个时候就可以通过升级前的版本来恢复系统。 确认系统当中已经安装的linux kernel:dpkg -l | grep linu...

2020-07-20 23:59:35 9851 1

原创 linux系统audio dma框架刨析

DMA 系统总体框架 1. 分析linux audio dma的框架之前, 首先我们需要从物理层面来看linux dma通用的框架。DMA controller: 用来描述系统中总的DMA硬件的基本信息, 软件层面对应dma controller driverDMA device:隶属于DMA controller, 表示挂在DMA controller下物理硬件, 一般和slave device通过DMA 物理总线相连。DMA channel:隶属于DMA devcie, 每个...

2020-06-10 00:03:10 1324

原创 C函数返回指针位数错误,截断问题

问题描述在C工程中,一个64位系统中如果一个文件中的某个函数A调用另外一个文件中的函数B,但是A文件中没有包含B的声明,gcc可以编译通过,但是如果B函数的返回类型为指针,在64位系统应该返回64bit地址,实际上函数A调用B得到的B的返回指针却是32bit,高32bit被截断。代码示例https://github.com/musiclvme/ToolsPackages/t...

2020-03-31 21:00:37 2112 2

原创 ubuntu18.04 配置softether client

1.softether vpn client源码包https://github.com/musiclvme/ToolsPackages2. 解压后编译sudo apt-get install build-essential // 安装编译基本包make3. 启动和配置编译生成的客户端sudo ./vpnclient start sudo ./vp...

2020-02-15 11:25:27 4874 13

原创 Audio之ALSA框架基础

前言Audio系统中ALSA是在开源系统中使用最多的框架,本文介绍下这方面的基础知识点便于未来的拓展和深入挖掘。1. ALSA系统架构 系统架构图 系统层次介绍 ALSA从系统的角度可以分为三个层次,自上而下分别为 alsa-utils,alsa-lib和asoc driver;alsa-utils:提供了一些基于alsa-lib之上的bin可执行文件...

2019-11-28 01:08:20 1066

空空如也

空空如也

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

TA关注的人

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