音频基础知识-PCM、AAC

一、PCM 

说到音频,主要有两个概念比较重要,一个是采集到的原始音频数据(比如PCM)和压缩后的音频数据(比如AAC)。

1.什么是PCM?

PCM(Pulse Code Modulation,脉冲编码调制)音频数据是未经压缩的音频采样数据裸流,它是由模拟信号经过采样、量化、编码转换成的标准数字音频数据。

2.如何理解PCM?

PCM是一种用数字表示模拟信号经过采样后的数据的方法。主要包括采样,量化,编码三个主要过程。

 ◆ 先来看看模拟信号被采样的过程:

 ◆ 采样率:每秒钟采样的样本数。比如我们常说的44.1kHz,即每秒钟采样44100次。

 ◆ 量化:将采样到的信号数据四舍五入到一个可用整数表示的过程。(位深)。

        连续的模拟信号按一定的采样频率经数码脉冲取样后,每一个离散的脉冲信号被以一定的量化精度量化成一串二进制编码流,这串编码流的位数即为采样深度。位深就是说用多少个比特表示某一个时间点上的振幅。比特数越多,可以表示的振幅变化就越精确,那么声音就会越逼真。

 ◆ 编码:将量化后的信号转换成二进制数据。

3.描述PCM数据的6个参数:

 ◆ Sample Rate : 采样频率。8kHz(电话)、44.1kHz(CD)、48kHz(DVD)。

 ◆ Sample Size : 量化位数。常见值为8-bit、16-bit。

 ◆ Number of Channels : 通道个数。常见的音频有立体声(stereo)和单声道(mono)两种类型,立体声包含左声道和右声道。另外还有环绕立体声等其它不太常用的类型。

 ◆ Sign : 表示样本数据是否是有符号位,比如用一字节表示的样本数据,有符号的话表示范围为-128 ~ 127,无符号是0 ~ 255。

 ◆ Byte Ordering : 字节序。字节序是little-endian还是big-endian。通常均为little-endian。

 ◆ Integer Or Floating Point : 整形或浮点型。大多数格式的PCM样本数据使用整形表示,而在一些对精度要求高的应用方面,使用浮点类型表示PCM样本数据。

二、音频编码协议 AAC 

 1.什么是AAC?

AAC(Advanced Audio Coding,高级音频编码)是一种声音数据的文件压缩格式。AAC分为ADIF和ADTS两种文件格式。

2.什么是ADIF和ADTS?

 ◆ ADIF:Audio Data Interchange Format 音频数据交换格式。这种格式的特征是只有音频数据最前面具有头字节,音频数据流中间没有头字节。因此它的解码只能在头字节处开始进行。故这种格式常用在磁盘文件中。

 ◆ ADTS:Audio Data Transport Stream 音频数据传输流。这种格式的特征是它每一单元音频数据都有一个header字节,解码可以在这个流中任何位置开始。

3.ADTS的数据结构是怎样的?

4.音频数据抓包分析

        音频数据单元开头是FF F1,对应二进制是11111111 11110001,对比协议 前12bit全是1,然后下一bit是0,说明MPEG version 4,然后连续两个0,下一位是1表明没有CRC。

  • 10
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: fdk-aac是一款开源的音频编码器,可以将PCM(Pulse Code Modulation)格式的音频数据进行压缩编码。PCM是一种无损的音频存储格式,它将模拟音频信号转换成数字信号,每个样本使用定点或浮点数表示音频波形。然而,PCM格式的音频文件通常会占据较大的存储空间,不便于传输和存储。 使用fdk-aac编码PCM音频文件可以有效地压缩文件大小,减少存储空间的占用。编码过程中,fdk-aac会根据PCM音频数据的特性和人耳感知的特点,使用先进的压缩算法对音频进行分析和处理。它会利用人耳对不同频率和声道的灵敏度不同的特点,对音频数据进行采样和量化,并且使用不同的编码器和参数对不同部分的音频信号进行编码。 通过fdk-aac编码器,PCM音频文件可以转换为高效的AAC(Advanced Audio Coding)格式。AAC是一种被广泛应用于数字音频音视频传输领域的音频编码标准,它具有更好的压缩效率和音频质量,相对于其他编码格式如MP3,AAC格式的音频文件更小,但音质更好。 因此,通过fdk-aac编码器,将PCM格式的音频文件转换为AAC格式,可以在保持音质的同时减少文件的大小,方便音频的传输和存储。这对于音频文件的压缩和网络传输等应用场景具有重要意义。 ### 回答2: fdk-aac是一种高效的音频编码器,用于将原始的PCM音频数据转换为AAC格式。PCM,也称为脉冲编码调制,是一种未经压缩的音频数据格式,具有较大的文件大小和较低的编码效率。而AAC是一种先进的音频编码格式,通过压缩音频数据可以获得较小的文件大小和较高的音质。fdk-aac编码器可以使用PCM作为输入,对音频数据进行压缩和编码,并生成AAC文件。 使用fdk-aac编码PCM的过程如下: 1. 准备PCM音频数据,PCM是一种无损音频格式,通常采样位数为16位,采样频率可以是44.1kHz或48kHz。 2. 将PCM音频数据输入到fdk-aac编码器中。编码器会对音频数据进行分析和处理,并根据一些音频压缩算法将其转换为AAC格式。 3. 设置编码参数,例如压缩比特率、编码质量等。参数的设置可以影响到最终编码后的音质和文件大小。 4. 运行编码器,等待编码过程完成。编码器会根据设置的参数和音频数据的特性,对PCM音频数据进行压缩编码。 5. 检查编码结果,确保生成的AAC文件符合预期。检查可以包括文件大小、音频质量等方面的评估。 6. 存储或传输编码后的AAC文件。编码后的文件可以被用于存储、传输和播放等用途。 通过使用fdk-aac编码器,可以将较大的PCM音频数据压缩为较小的AAC文件,从而节省存储空间和传输带宽,并且能够保持较高的音频质量。 ### 回答3: fdk-aac是一种高度效率的音频编码器,它可以将原始的PCM音频信号转换为AAC格式的音频文件。PCM是一种未经压缩的音频数据格式,其采样率和位深度保持不变,需要较大的存储空间。而AAC是一种压缩的音频格式,可以以更小的文件大小提供高质量的音频。 使用fdk-aac编码pcm音频的步骤如下: 首先,我们需要准备一个PCM音频文件作为输入。这个PCM文件可以是从麦克风、音乐播放器或其他设备中捕获的音频信号。 然后,我们需要使用fdk-aac编码器对PCM文件进行编码。编码过程中,fdk-aac会分析音频信号的特征并进行压缩,以减小文件大小同时保持音质。 编码完成后,我们可以得到一个AAC格式的音频文件。这个文件具有较小的文件大小,适合在网络传输或存储中使用。 最后,我们可以使用支持AAC格式的播放器或设备来播放这个编码后的音频文件。 总结起来,fdk-aac编码器可以将PCM音频信号转换为AAC格式的音频文件,实现高质量音频的压缩和存储。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fang·up·ad

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值