PCM

Pulse-code modulation的缩写,中文译名是脉冲编码调制。(I2S仅仅是PCM的一个分支,接口定义都是一样的, I2S的采样频率一般为44.1KHZ和48KHZ做,PCM采样频率一般为8KHZ、16KHZ。有四组信号: 位时钟信号,同步信号,数据输入,数据输出。)

PCM信号的两个重要指标是采样频率和量化精度,目前,CD音频的采样频率通常为44100Hz,量化精度是16bit。

主要实现两大功能:

  • playback    如何把用户空间的应用程序发过来的PCM数据,转化为人耳可以辨别的模拟音频
  • capture     把mic拾取到得模拟信号,经过采样、量化,转换为PCM信号送回给用户空间的应用程序

EQ

EQ英文全称Equaliser,中文也就是均衡器的意思。它的基本作用是通过对声音某一个或多个频段进行增益或衰减,从而达到调整音色的目的。EQ通常包括以下三个参数:

Frequency,频率――这是用于设定你要进行调整的频率点的参数;

Gain,增益――用于调整在你设定好的F值上进行增益或衰减的参数;
Quantize,频宽比――用于设定你要进行增益或衰减的频段“宽度”的参数。Q值越小处理的频段就越宽。
应用角度说明:
音乐均衡器有两种常见类型,一种是图示均衡器(Graphic Equalizer),另一种是参量均衡器(Parametric Equalizer)。
图示均衡器是一种按照一定的规律把全音频20~20000 Hz划分为若干的频段,每个频段对应一个可以对电平进行增益或衰减的调节器,可以根据需要,对输入的音频信号按照特定的频段进行单独的增益或衰减。
参量均衡器不划分固定的波段,可对任意一个频率点(包括频点附近指定频率带宽内的所有点)进行控制,通过调整带宽,使得调节控制可精确(小带宽),也可模糊(大带宽),非常灵活。
参量均衡器操作控制不直观,多用在对声音精确控制的专业场合。而像Winamp和Foobar这样的音频播放器,多采用图示均衡器,通过一个带调节器的图形面板可以让用户很方便地对特定频段进行调节。
信号形态角度说明:
均衡器又可以分为时域均衡器和频域均衡器两种类型。
时域均衡器对时域音频信号通过叠加一系列滤波器实现对音色的改变,无论是传统的音响设备还是众多音乐播放软件,绝大多数都是使用时域均衡器。时域均衡器通常由一系列二次IIR滤波器或FIR滤波器串联组合而成,每个波段对应一个滤波器,各个滤波器可以单独调节,串联在一起形成最终的效果。但是,传统的IIR滤波器具有反馈回路,会出现相位偏差,而FIR滤波器会造成比较大的时间延迟。另外,如果使用IIR或者FIR滤波器,均衡器波段越多,需要串联的滤波器的个数也越多,运算量也越大。
频域均衡器是在频域内直接对指定频率的音频信号进行增益或衰减,从而达到改变音色的目的。频域均衡器没有相位误差和时间延迟,而且不固定波段,可以对任意频率进行调节,不仅适用于图示均衡器,也适用于参量均衡器。特别是采用快速傅里叶变换这样的算法,可以进行更快速的运算,即便是多段均衡器也不会引起运算量的增加。
 

DRC

Dynamic Range Control(DRC)动态范围控制提供压缩和放大能力,可以使声音听起来更柔和或者更大声,即一种信号幅度调节方式。

PCM EQ DRC 音频处理的更多相关文章

  1. 如何将Pcm格式的音频文件转换成Wave格式的文件

    最近在做一款变声App,其中就用到了将pcm格式转wave格式,下面贴出源代码,希望带有需求的童鞋有帮助!!!这里是c++语言写的,也可以用java实现.当然java调用native函数要用到jni技 ...

  2. Android音频处理——通过AudioRecord去保存PCM文件进行录制,播放,停止,删除功能

    Android音频处理--通过AudioRecord去保存PCM文件进行录制,播放,停止,删除功能 音频这方面很博大精深,我这里肯定讲不了什么高级的东西,最多也只是一些基础类知识,首先,我们要介绍一下 ...

  3. 痞子衡嵌入式:PCM编码与Waveform音频文件(.wav)格式详解

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是PCM编码及Waveform音频文件格式. 嵌入式里有时候也会和音频打交道,比如最近特别火的智能音箱产品,离不开前端的音频信号采集.降噪 ...

  4. 音频播放封装(pcm格式,Windows平台 c++)

    介绍 pcm格式是音频非压缩格式.如果要对音频文件播放,需要先转换为pcm格式. windows提供了多套函数用于播放,本文介绍Waveform Audio Functions系列函数. 原始的播放函 ...

  5. Android下基于PCM的音频渲染

    环境准备 请按照我之前的文章-Android下基于SDL的位图渲染,安装必要的开发环境. 实践篇 这里主要参考Beginning SDL 2.0(6) 音频渲染及wav播放,只不过将源从WAV文件改成 ...

  6. 视音频数据处理入门:PCM音频采样数据处理

    ===================================================== 视音频数据处理入门系列文章: 视音频数据处理入门:RGB.YUV像素数据处理 视音频数据处理 ...

  7. 基于FFmpeg的音频编码(PCM数据编码成AAC android)

    概述 在Android上实现录音,并利用 FFmpeg将PCM数据编码成AAC. 详细 代码下载:http://www.demodashi.com/demo/10512.html 之前做的一个demo ...

  8. Android 音视频开发(一):PCM 格式音频的播放与采集

    什么是 PCM 格式 声音从模拟信号转化为数字信号的技术,经过采样.量化.编码三个过程将模拟信号数字化. 采样 顾名思义,对模拟信号采集样本,该过程是从时间上对信号进行数字化,例如每秒采集 44100 ...

  9. I2S/PCM/IOM-2、I2C/SPI/UART/GPIO/slimbus

    概述 I2S,PCM,IOM-2都是数字音频接口,传数据的. I2C,SPI,UART,GPIO是控制接口,传控制信令的. I2S I2S(Inter-IC Sound Bus)是飞利浦公司为数字音频 ...

随机推荐

  1. Spring Boot笔记二:快速创建以及yml文件自动注入

    上个笔记写了如何自己去创建Spring boot,以及如何去打jar包,其实,还是有些麻烦的,我们还自己新建了几个文件夹不是. Idea可以让我们快速的去创建Spring boot应用,来看 一.快速 ...

  2. Linux记录-配置sudoers无密登录和环境变量

    su root vim /etc/sudoers.d/sfapp sfapp ALL=(ALL) ALLsfapp ALL=(ALL) NOPASSWD: ALL Defaults !env_rese ...

  3. (转)windows 下安装配置 Nginx 详解

    windows 下安装配置 Nginx 详解 本文转自https://blog.csdn.net/kingscoming/article/details/79042874 nginx功能之一可以启动一 ...

  4. http的三次握手四次挥手

    http : 是一种超文本传输协议 传输指的是在客户端和服务器之间进行传输数据 http不仅仅可以传输文本,还可以传输图片.音频.视频等内容 https : 是一种更加安全的传输协议 在普通的传输协议 ...

  5. react使用proxy代理配置

    proxy,默认为NULL,类型为URL,一个为了发送http请求的代理 在package.json文件中使用proxy配置可以解决跨域问题 使用注意事项: create-react-app脚手架低于 ...

  6. ext.net 实现gridpanel checkbox锁定

    <%@ Page Language="C#" %> <%@ Register Assembly="Ext.Net" Namespace=&qu ...

  7. linux下有名管道进程通信

    一.任务 1.学习mkfifo等函数: 2.了解有名管道的特点.阻塞打开与非阻塞打开等: 3.编写一个关于有名管道进程通信的程序,并运行. 二.相关概念 1.相关函数 创建有名管道的函数是mkfifo ...

  8. [译]Managing Vue.js State with Vuex

    原文 准备 安装 Vuex, 是Vue官方出的package, 它不是Vue内置的.需要另外安装. npm install vuex --save 然后,需要在应用启动文件启用Vuex. main.j ...

  9. 符号执行-基于python的二进制分析框架angr

    转载:All Right 符号执行概述 在学习这个框架之前首先要知道符号执行.符号执行技术使用符号值代替数字值执行程序,得到的变量的值是由输入变 量的符号值和常量组成的表达式.符号执行技术首先由Kin ...

  10. oracle 任务备份

    @echo offset hour=%time:~,2%if "%time:~,1%"==" " set hour=0%time:~1,1%set temp=% ...