【Audio】I2S传输PCM音频数据分析总结(一) 您所在的位置:网站首页 音频是模拟信号 【Audio】I2S传输PCM音频数据分析总结(一)

【Audio】I2S传输PCM音频数据分析总结(一)

2024-06-10 15:47| 来源: 网络整理| 查看: 265

相关文章

1.《【Audio】I2S传输PCM音频数据分析总结(一)》 2.《【Audio】I2S传输PCM音频数据分析总结(二)》 3.《【Audio】基于STM32 I2S移植WM8978 Audio Codec驱动》

1.前言

《I2S传输PCM音频数据分析总结》主要是介绍PCM音频数据是如何通过I2S进行传输的,主要是分成2个部分:

PCM音频数据介绍I2S协议介绍

本篇文章主要是以PCM音频数据来介绍。

2.PCM音频简介

PCM音频(Pulse-Code Modulation)是一种用数字表示采样模拟信号的方法。

要将一段音频模拟信号转换为数字表示,包含如下三个步骤:

Sampling(采样)Quantization(量化)Coding(编码)

下面的截图是PCM音频 1KHz 正弦波的波形,播放出来就是“滴”的声音: 在这里插入图片描述

3. Sampling(采样)

Sampling(采样)表示处理,实际上就是让采样数据能够完全表示原始信号,且采样数据能够通过重构还原成原始信号的过程。

蓝色曲线:表示音频原始信号。黑色垂直线段:表示当前时间点对原始信号的一次采样黑色点:表示采样获取的一系列离散样本。 4. 采样率(Sample rate)

采样率(Sample rate)表示每秒采样的数量(单位:Hz)。

对于PCM编码音频流,采样率是恒定的。例如:1Hz表示每秒钟对原始信号采样一次,1KHz表示每秒钟采样1000次。

根据场景的不同,采样率也有所不同,采样率越高,声音的还原程度越高,质量就越好,同时占用空间会变大。

例如:通话时的采样率为8KHz,常用的媒体采样率有44KHz、48KHz,对于一些蓝光影片采样率高达1MHz。

5. Quantization(量化)

原始信号采样后,需要通过量化来描述采样数据的大小。

量化处理过程,就是将时间连续的信号,处理成时间离散的信号,并用实数表示。这些实数将被转换为二进制数用于模拟信号的存储和传输。

上面的图片的例子是16bit位深量化过程。bit-depth(位深):用来描述存储数字信号值的bit数,较常用的模拟信号位深如下:

8-bit:2^8 = 256 levels,有256个等级可以用于衡量真实的模拟信号。16-bit:2^16 = 65,536 levels,有65,536个等级可以用于衡量真实的模拟信号。24-bit:2^24 = 16,666,216 levels,有16,666,216个等级可以用于衡量真实的模拟信号。

可以看到,位深越大,对模拟信号的描述将越真实,对声音的描述更加准确。

下面是实际的采样率44.1KHz 16bit双声道正弦波1KHz的PCM音频数据,量化后存储的数据和波形解析如下: 在这里插入图片描述

???问题:为什么一个正弦波周期量化是44个数据???

分析: 1次采样需要的时间:1秒/采样率44.1KHz = 1 / 44100 (秒) 1个正弦波周期时间:1秒/频率1KHz = 1 / 1000 (秒) 1个正弦波周期采样次数:`1个正弦波周期时间 / 1次采样需要的时间 = (1 / 1000) / (1 / 44100) = 44100 / 1000 = 44.1次 结果:如上图显示一个正弦波周期,采样的次数为44次。

备注: 量化会将波形分成多个等份,值越大对模拟信号描述越真实。采样率是1秒钟采样的次数,值越大对声音的还原程度越高。所以,声音的质量很大程度被量化和采样率所影响。

6. Encoding(编码)

在编码这一步,我们会将时间线上的每个sample数据转化为对应的二进制数据。

采样数据经过编码后产生的二进制数据,就是PCM数据。PCM数据可以直接存储在介质上,也可以在经过编解码处理后进行存储或传输。

7. PCM数据常用量化指标

采样率(Sample rate):每秒钟采样多少次,以Hz为单位。

位深度(Bit-depth):表示用多少个二进制位来描述采样数据,一般为16bit。

字节序:表示音频PCM数据存储的字节序是大端存储(big-endian)还是小端存储(little-endian),为了数据处理效率的高效,通常为小端存储。

声道数(channel number):当前PCM文件中包含的声道数,是单声道(mono)、双声道(stereo)等。

采样数据是否有符号(Sign):要表达的就是字面上的意思,需要注意的是,使用有符号的采样数据不能用无符号的方式播放。

8. PCM音频数据存储格式

PCM音频数据排列格式为左右声道每个样本点数据交错排列。 在这里插入图片描述 下面是解析一个16bit双声道PCM的数据,如下: 在这里插入图片描述 实际解析的出来的PCM波形如下:

从波形上分析1声道为无声。从数据上分析1声道,-7(0xFFF9)、-3(0xFFFD)、-5(0xFFFB)等基本接近0,所以为无声。 在这里插入图片描述 9.参考资料

What is PCM Audio? https://samplerateconverter.com/educational/pcm-audio#how-pcm-works

PCM数据格式介绍 https://blog.csdn.net/qq_25333681/article/details/90682989



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有