Audio 关于音频编解码器术语的定义

Audio 关于音频编解码器术语的定义,audio,audio-streaming,audio-recording,codec,pcm,Audio,Audio Streaming,Audio Recording,Codec,Pcm,当我学习Cocoa音频队列document时,我遇到了音频编解码器中的几个术语。在名为的结构中定义了 以下是条款: 1.采样率 2.数据包 3.框架 4.频道 我知道采样率和频道。我被另外两个弄糊涂了。其他两个术语是什么意思 你也可以用例子来回答这个问题。例如,我有一个采样率为44.1kHz的双通道PCM-16源,这意味着每秒有2*44100=88200字节的PCM数据。但是包和帧呢 提前谢谢你 您已经熟悉采样率定义。 采样频率或采样率fs定义为每秒获得的样本数(每秒样本数),因此fs=1/T。

当我学习
Cocoa音频队列
document时,我遇到了音频编解码器中的几个术语。在名为的结构中定义了

以下是条款:
1.采样率
2.数据包
3.框架
4.频道

我知道
采样率
频道
。我被另外两个弄糊涂了。其他两个术语是什么意思

你也可以用例子来回答这个问题。例如,我有一个采样率为44.1kHz的双通道PCM-16源,这意味着每秒有2*44100=88200字节的PCM数据。但是


提前谢谢你

您已经熟悉采样率定义。 采样频率或采样率fs定义为每秒获得的样本数(每秒样本数),因此fs=1/T。 因此,对于44100 Hz的采样率,每秒(每个音频通道)有44100个采样

视频中每秒帧数的概念与音频中每秒采样数的概念类似。眼睛的框架,耳朵的样本。其他信息

如果您有16位深度的立体声PCM,则意味着您有16*44100*2=1411200位/秒=>~172 kB/秒=>约10 MB/分钟

根据Apple中的定义:

Sample: a single number representing the value of one audio channel at one point in time.
Frame: a group of one or more samples, with one sample for each channel, representing the audio on all channels at a single point on time.
Packet: a group of one or more frames, representing the audio format's smallest encoding unit, and the audio for all channels across a short amount of time.
正如您所看到的,音频和视频帧概念之间存在细微的差异。在一秒钟内,您可以获得44.1 kHz的立体声音频:88200个采样,从而获得44100帧

像MP3和AAC这样的压缩格式将多个帧打包在数据包中(例如,这些数据包可以写入MP4文件,在那里它们可以与视频内容有效地交织)。您知道处理大数据包有助于识别位模式以提高编码效率

例如,MP3使用1152帧的数据包,这是MP3流的基本原子单元。PCM音频只是一系列的样本,所以它可以被分解为单个帧,实际上它根本没有数据包大小

对于AAC,每个数据包可以有1024(或960)帧。您所指的苹果文档中描述了这一点:

音频数据包中的帧数。对于未压缩音频,该值为1。对于可变比特率格式,该值是一个较大的固定数字,例如对于AAC为1024。对于每个数据包具有可变帧数的格式,如Ogg Vorbis,请将此字段设置为0

在基于MPEG的文件格式中,数据包被称为数据帧(不适用)
与先前的音频帧概念混合)。有关该主题的更多信息,请参见Brad comment。

+1,但您关于耳朵需要比眼睛更高的采样率的观点并不完全正确。当我们用PCM对音频进行编码时,我们处于时域中,采样的压力水平经常足以再现一个频率。当我们观看一幅图像时,我们处于频域中,在频域中可以再现颜色。如果我们在时域中拍摄图像,我们将对光子进行采样。现在,一些音频编解码器在频域中处理音频(如MP3),在一个帧中编码1152个样本(@44.1kHz)的情况并不少见,音频的频域采样率为~40fps。@Brad有趣的评论。当我了解到你所说的,如果我看一个带有H264/AAC-stsz盒的样本,我看到音频的样本数为2185,视频的样本数为1116。对于视频1,采样计数项=1个视频帧(fps 23.976)。如果我坚持你说的话,我有2185个“音频帧”,每个帧有1024个样本:2185(“音频帧”)*1024(一帧中的样本)=48000(采样率)*46.613(持续时间,以秒为单位)。但这不会破坏上述帧定义(我理解为1帧=n个样本,其中n是通道数)吗?术语“帧”有点泛化,有一些含义。PCM帧是每个通道的单个样本,这是正确的。在44.1kHz的立体声中,每秒有44100帧,每秒总共有88200个采样(每个通道一个)。对于MPEG,单个数据帧包含在固定时间内解码为一组固定PCM帧所需的数据。该帧的时间通常为26毫秒。更多信息:谢谢你的意见-事情现在在我的头脑中很清楚-我已经根据你的评论改进了我的答案。太好了!不仅是为了答案,也是为了你留下的讨论。谢谢大家!!