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. python第二次周末大作业

    题目 ''' HR人力资源管理. 1. 菜单: ("查看员⼯信息","添加员⼯信息", "修改员⼯信息", "删除员⼯信息&quo ...

  2. 流媒体技术学习笔记之(十八)Ubuntu 16.04.3 如何编译 FFmpeg 记录

    官方文档:https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu 一.最简单安装: apt-get install ffmpeg 二.安装最新版本 大 ...

  3. 9.selenium

    1.安装与入门 pip3 install selenium 将chromedriver放到一个没有权限要求的目录 from selenium import webdriver driverpath=& ...

  4. Mark Text - 下一代所见即所得的Markdown编辑器

    Mark Text 所输及所见,摒弃了众多 markdown 编辑器左边写作右边预览的写作方式,巧妙的将编辑和预览融为一体.snabbdom 作为 Mark Text 的渲染引擎,保证了极速渲染编辑页 ...

  5. Webpack2学习记录-2

    这篇在 webpack-demo 目前下新建一个 w2 目录,学习 webpack.config.js 及 与 npm scripts 的使用. 1.w2 下新建一个 webpack.config.j ...

  6. 10 Tips for Writing Better Code (阅读理解)

    出发点 http://www.tuicool.com/articles/A7VrE33 阅读中文版本<编写质优代码的十个技巧>,对于我编码十年的经验,也有相同感受, 太多的坑趟过,太多的经 ...

  7. Content Security Policy介绍

    Content Security Policy https://content-security-policy.com/ The new Content-Security-Policy HTTP re ...

  8. mysql日期时间函数(常用的)

    mysql> SELECT NOW();  #返回(打印)当前日期和时间+---------------------+| NOW() |+---------------------+| 2017 ...

  9. Docker 空间大小设置 - 十

    一.容器启动 默认存储大小: 1.一种在启动项 docker.service 中配置. 2.在启动项配置调用的 docker-storage 配置文件中配置: 二.Docker 容器默认启动文件: / ...

  10. luogu P4931 情侣?给我烧了!

    双倍经验 传送门 首先坐在一起的cp和不坐在一起的cp是相对独立的,可以分开考虑,然后方案数相乘 坐在一起的cp,方案为\(\binom{n}{k}*\binom{n}{k}*k!*2^k\).首先选 ...