音频处理

您所在的位置:网站首页 音频处理有哪些操作 音频处理

音频处理

2024-07-11 15:53:55| 来源: 网络整理| 查看: 265

目录 知识储备什么是PCM采样采样率重采样 量化编码PCM常用指标 PCM数据流

知识储备

音频处理——音频编码原理简介

音频处理——音频处理的基本概念

什么是PCM

PCM全称Pulse-Code Modulation,翻译一下是脉冲调制编码。

在音视频中,PCM是一种用数字表示采样模拟信号的方法。

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

1、Sampling(采样)2、Quantization(量化)3、Coding(编码) 通常,我们可以通过一条曲线在坐标中显示连续的模拟信号,如下图所示: 在这里插入图片描述 为了更容易理解PCM,取其中一段来说明。 在这里插入图片描述 假设这表示一段一秒的音频模拟信号

在这里插入图片描述

采样

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

将采样后的图拿出来单独解释: 在这里插入图片描述

红色曲线:表示原始信号。蓝色垂直线段:表示当前时间点对原始信号的一次采样。采样是一系列基于振幅(amplitude和相同时间间隔的样本。这也是为什么采样过程被称为PAM的原因。PAM:(Pulse Amplitude Modulation)是一系列离散样本之的结果。 采样率

每秒钟的样本数也被称之为采样率(Sample rate)。在Sampling图示案例中,采样率为每秒34次。意味着在一秒的时间内,原始信号被采样了34次(也就是蓝色垂直线段的数量)。

通常,采样率的单位用Hz表示,例如1Hz表示每秒钟对原始信号采样一次,1KHz表示每秒钟采样1000次。1MHz表示每秒钟采样1百万次。

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

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

重采样

一些工作的需要,需要保存成FLV文件,而在保存的过程中,48000的采样率并不符合用FLV的封装标准(最高44100),所以有时候需要通过调用如ffmpeg来重采样pcm,并保存文件。 再比如说,不同质量要求下,对音频的采样率有一定标准,为了满足标准,就需要调整。不过一般是由高往低调整,很少由低往高调整

22kHz:无线广播44.1kHz:CD18kHz:数字电视、DVD96kHz:蓝光,高清DVD192kHZ:蓝光,高清DVD

重采样方法

上采样是插值 上采样时,会造成镜像信息,因此需要使用低通滤波器滤除(线性插值本身就是低通滤波器,因此不需要额外处理)。下采样是去值 下采样时,可能会造成频谱混淆,因此在下采样之前用低通去混淆滤波器滤除 量化

原始信号采样后,需要通过量化来描述采样数据的大小。如图: 在这里插入图片描述 量化处理过程,就是将时间连续的信号,处理成时间离散的信号,并用实数表示。这些实数将被转换为二进制数用于模拟信号的存储和传输。

在图例中,如果说采样是画垂直线段的话,那么量化就是画水平线,用于衡量每次采样的数字指标。如图: 在这里插入图片描述 图中,每条横线表示一个等级(level)。

为了更好的描述量化过程,先来介绍一下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个等级可以用于衡量真实的模拟信号。 显而易见,位深越大,对模拟信号的描述将越真实,对声音的描述更加准确。

在当前例子中,如果用为8-bit位深来描述的话,就如下图所示: 在这里插入图片描述 量化的过程就是将一个平顶样本四舍五入到一个可用最近level描述的过程。如图中黑色加粗梯形折线。量化过程中,我们将尽量让每个采样和一个level匹配,因为每个level都是表示一个bit值。

图中,第9次采样的平顶样本对应的level用十进制表示为255,也就是二进制的1111 1111。

编码

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

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

PCM常用指标

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

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

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

声道数(channel number):当前PCM文件中包含的声道数,是单声道(mono)、双声道(stereo),此外还有5.1声道(常用于影院立体环绕声)等。

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

以FFmpeg中常见的PCM数据格式s16le为例:它描述的是有符号16位小端PCM数据。

s表示有符号,16表示位深,le表示小端存储。

PCM数据流

本节介绍PCM在内存中的存储 些图像化的描述,那么一段PCM格式的数据流怎么表示的呢?

以8-bit有符号为例,长得像这样:

+---------+-----------+-----------+---- binary | 0010 0000 | 1010 0000 | ... decimal | 32 | -96 | ... +---------+-----------+-----------+----

每个分割符"|"分割字节。因为是8-bit有符号表示的采样数据,所以采样的范围为-128~128。

图示中表示的是两个连续采样数据的二进制和十进制表示的值。

如果我们有一个PCM文件,在代码中,我们可以通过以下方式来读取这样的PCM数据流(Stream)。

FILE *file int8_t *buffer; file = fopen("PCM file path"); buffer = malloc(fileSize); fread(buffer, sizeof(int8_t), fileSize / sizeof(int8_t), file);

伪代码仅仅表示一种加载方式。但在代码中,一开始就将整个文件加载到了内存中,这是不对的。因为我们的音频数据量往往会比较大,一次性全部加载增加了内存负担,而且并不必要。

通常我们会为buffer分配一个固定的长度,例如2048字节,通过循环的方式一边从文件中加载PCM数据,一边播放。

加载好PCM数据后,需要送到音频设备驱动程序中播放,这时我们应该能听到声音。与PCM数数据一同到达驱动程序的通常还有采样率(sample rate),用来告诉驱动每秒钟应该播放多少个采样数据。如果传递给驱动程序的采样率大于PCM实际采样率,那么声音的播放速度将比实际速度快,反之亦然。

OK,对于PCM数据流的存储而言,上面仅仅只是单声道。对于多声道的PCM数据而言,通常会交错排列,就像这样:

+---------+-----------+-----------+-----------+-----------+---- FL | FR | FL | FR | FL | +---------+-----------+-----------+-----------+-----------+----

对于8-bit有符号的PCM数据而言,上图表示第一个字节存放第一个左声道数据(FL),第二个字节放第一个右声道数据(FL),第三个字节放第二个左声道数据(FL)…

不同的驱动程序对于多声道数据的排列方式可能稍有区别,下面是常用的声道排列地图:

2: FL FR (stereo) 3: FL FR LFE (2.1 surround) 4: FL FR BL BR (quad) 5: FL FR FC BL BR (quad + center) 6: FL FR FC LFE SL SR (5.1 surround - last two can also be BL BR) 7: FL FR FC LFE BC SL SR (6.1 surround) 8: FL FR FC LFE BL BR SL SR (7.1 surround)


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭