在音频处理中,我们会经常听到PCM数据,那么什么是PCM数据呢?
PCM数据就是模拟信号经过PCM以后的数字信号,PCM就是把音频信号由模拟信号(时间连续,取值连续)转为数字信号(时间离散,取值离散)的过程。数字信号有很多优点,因此一般传输的信号都是数字信号。
PCM,也叫作脉冲编码调制,这个处理过程要经过采样->量化->编码的过程。

采样


采样就是用一个脉冲信号和被采样信号在时域进行相乘的过程。会把时间连续的数字信号变为时间离散的数字信号。

量化

量化就是把数值上连续的抽样值变为离散电平值的过程。量化有很多种方法,比如线性量化、A率、μ率等。

线性量化

量化间隔是一个常数。

A率PCM



可以看到,A率对于0电平附近的电平区分度较大,这也符合一般数字信号的分布规律。
这种编码是国际标准。

μ率PCM


将y轴均匀分为8段,当y=i/8时,x=(2**i-1)/255
日本和美国多用这种编码。

一些术语

采样频率:即采样脉冲的间隔的倒数。采样频率不能低于信号通带频率的两倍。
采样深度:也称位深度,量化深度,即每一个点用几个bit表示。一般来说采样深度越高,对信号电平值描述越精确。

参考

链接1
链接2

PCM(Pulse-code modulation)脉冲编码调制的更多相关文章

  1. LED调光,PFM即pulse frequence modulation

    PWM不是唯一的调制方式,可以PWM,也可以PFM,也可以混合调制. PWM即pulse width modulation的缩写,脉冲宽度调制,保持开关周期不变,调节开关导通时间. PFM即pulse ...

  2. 【转】vc api 录音

    一.数字音频基础知识 Fourier级数: 任何周期的波形可以分解成多个正弦波,这些正弦波的频率都是整数倍.级数中其他正线波的频率是基础频率的整数倍.基础频率称为一级谐波. PCM: pulse co ...

  3. 【VS开发】【智能语音处理】VS中声音的采集实现

    vc中声音的采集是用api函数来实现的. 一.数字音频基础知识  Fourier级数:  任何周期的波形可以分解成多个正弦波,这些正弦波的频率都是整数倍.级数中其他正线波的频率是基础频率的整数倍.基础 ...

  4. 【VS开发】【智能语音处理】Windows下麦克风语音采集

    简介 这是我很早以前的大学毕业设计,忽然间找到贴出来以纪念自己的纯真年代...但是因为CSDN不给面子所以导致短短的一篇文章贴了足足7次..他老提时说文章超过了64K,老大,拜托,那是算上了里面的图片 ...

  5. wav文件格式分析与详解

    WAV文件是在PC机平台上很常见的.最经典的多媒体音频文件,最早于1991年8月出现在Windows 3.1操作系统上,文件扩展名为WAV,是WaveFom的简写,也称为波形文件,可直接存储声音波形, ...

  6. wav封装格式

    wav文件格式作为一种常用的多媒体音频文件格式,其由MS在1991年8月在Windows 3.1上推出,文件扩展名为WAV,是WaveFom的简写.通常存储未压缩的pcm数据,也可存储压缩的pcm数据 ...

  7. 【转载】wav文件格式分析与详解

    WAV文件是在PC机平台上很常见的.最经典的多媒体音频文件,最早于1991年8月出现在Windows 3.1操作系统上,文件扩展名为WAV,是WaveFom的简写,也称为波形文件,可直接存储声音波形, ...

  8. wave文件(*.wav)格式、PCM数据格式

    1. 音频简介 经常见到这样的描述: 44100HZ 16bit stereo 或者 22050HZ 8bit mono 等等. 44100HZ 16bit stereo: 每秒钟有 44100 次采 ...

  9. wave文件(*.wav)格式、PCM数据格式, goldwave 可以播放pcm raw audio

    1. 音频简介 经常见到这样的描述: 44100HZ 16bit stereo 或者 22050HZ 8bit mono 等等. 44100HZ 16bit stereo: 每秒钟有 44100 次采 ...

随机推荐

  1. js的日期格式化

    function date(){ var date = new Date(); var year = date.getFullYear(); var month = date.getMonth()+1 ...

  2. 【JDK源码分析】String的存储区与不可变性

    // ... literals are interned by the compiler // and thus refer to the same object String s1 = " ...

  3. 记录一个mysql连接慢的问题

    问题现象是这样的: 我在一台机器上(61.183.23.23)启动了一个mysql,然后开通一个账号可以从127.0.0.1或者从61.183.23.23访问.但是遇到一个问题就是使用下面两个命令行访 ...

  4. HT for Web基于HTML5的图像操作(二)

    上篇介绍了HT for Web采用HTML5 Canvas的getImageData和setImageData函数,通过颜色乘积实现的染色效果,本文将再次介绍另一种更为高效的实现方式,当然要实现的功能 ...

  5. Android Studio快捷键每日一练(5)

    原文地址:http://www.developerphil.com/android-studio-tips-of-the-day-roundup-5/ 42.Enter键和Tab键补全 快捷键:Ent ...

  6. android studio building project info 错误

    D:\ProgramFiles\android-studio\plugins\android\lib\templates\gradle\wrapper\gradle\wrapper\gradle-wr ...

  7. 交换排序---快速排序算法(Javascript版)

    快速排序是对冒泡排序的一种改进.通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行 ...

  8. js清除cookie

    例如要清除键为abc的cookie: document.cookie = "abc=0;expires=" + new Date().toUTCString();

  9. LeetCode121:Best Time to Buy and Sell Stock

    题目: Say you have an array for which the ith element is the price of a given stock on day i. If you w ...

  10. spring笔记2 spring MVC的基础知识2

    2,spring MVC的注解驱动控制器,rest风格的支持 作为spring mvc的明星级别的功能,无疑是使得自己的code比较优雅的秘密武器: @RequestMapping处理用户的请求,下面 ...