在MPEG文件中,并没有主标头,由于MPEG的音频文件是通过一系列被称作帧的较一小部分所组成的。每一个帧都是一个具备自身标题文字和音频信息的数据块。
Layer II,II,III的音频帧头都是一样的,不同点表现在音频数据的编码方法。帧本身就是由slot组而成。Layer I的slot大小是4字节,其他情况就是1字节。
除开Layer以外,MPEG音频本身就有3个版,这一好多个版本号最大的不同表现在能处理采样频率不一样(参照 表2.1.2)。MPEG 1 (ISO/IEC 13818-3) 和MPEG2(ISO/IEC 11172-3)是ISO标准. MPEG2.5对MPEG2所进行的非官方的拓展,它就是为了适用较低的采样频率。MPEG2/2.5 也常常被称之为LSF(Low SamplingFrequencies),既低采样频率
针对Layer I和Layer II,帧是绝对彼此之间单独的,因而大家可以裁切MEPG音频文件的所有一部分并正确播放视频。随后,播放软件可从发觉的第一个详细高效的帧开播。可是,Layer III,帧不一直单独的,因为他很有可能应用了byte resevoir,这是一种内部结构缓冲区域,因而帧中间一般是相互依存的。在最坏的前提下,很有可能需要至少键入9个帧才可以编解码单独帧。
假如你必须查找相关MPEG的音频文件的信息,那可以简单寻找第一帧,再从它的header中获得信息。除比特率外,别的帧里的信息应当与第一个帧是一致的,因为可能现阶段是VBR的文件。在VBR的文件中,能够在每一个帧中变更比特率。比如,为了能在所有文件中维持歌曲的高品质,当音乐较为复杂的时候就需要更多位做编号
帧头自身长度是32位(4字节)。帧头前十二位(在MPEG2.5拓展的情形下为前十一位)自始至终设为1,称之为帧同步。帧还会有可供选择的CRC校验和。它长16位,如果出现,则紧随在帧头以后。CRC接着就是音频数据。根据重算CRC并把值与文件里的值进行对比,就能查验比特流在传送期内是不是已经被变更。
一个文件能够被编号成稳定比特率(CBR)或可变性比特率(VBR),这就意味着每帧能够有着不同的比特率。可变性比特率的品质远比稳定比特率编号的文件更高一些,因为我们能够当需要的区域应用更高比特率。
[ID3 V2]|[APE 头]: 可选择
ID3 V2的脑袋,大部分最新MP3,都有这个头
用以APE格式头,现在都用以MPEG
第一帧
MPEG 音频头, 一般尺寸为4字节.(当Protection bit==0时,帧头之后会有16bit=2byte的CRC,这时帧头尺寸为6字节)
边信息,9/17/32 字节
[Xing 头]: 可选择 8-120字节,假如是VBR,大部分都是有此Xing头,并且仅有第一帧有
音频数据
第二帧
帧头
边信息
音频数据
第三帧
帧头
边信息
音频数据
最终一帧
帧头
边信息
音频数据
[TAG]: 可选择。128字节的ID3 V1信息,要是没有前边的ID3 V2,大部分都有这个ID3 V1的脑袋
起始点0位上位逐渐
起始点尺寸部位叙述
01131-21帧同步标志,11个‘1’。用以精准定位帧头起始点
11220-19MPEG音频版本号
13218-17Layer系列号
15116Protection bit
16415,12比特率
20211-10采样频率
2219Padding bit的界定
2318保护位
2427-6channel方式
2625-4只用以Joint stereo 方式拓展
2813著作权位 0:无版权 1:有著作权
2912初始位 0:初始媒体团本 1:初始新闻媒体
3021-0Emphasis
设定值叙述
00MPEG version2.5
01保存
10MPEG version2
11MPEG version1
设定值叙述
00保存
01Layer III
10Layer II
11Layer I
设定值叙述
0protected by 16 bit CRC following header
1no CRC
bitsV1,L1V1,L2V1,L3V2,L1V2, L2 & L3
0000freefreefreefreefree
0001323232328
00106448404816
00119656485624
010012864566432
010116080648040
011019296809648
01112241129611256
100025612811212864
100128816012814480
101032019216016096
1011352224192176112
1100384256224192128
1101416320256224144
1110448384320256160
1111badbadbadbadbad
NOTES: All values are in kbps
V1: MPEG Version 1
V2: MPEG Version 2 and Version 2.5
L1: Layer I
L2: Layer II
L3: Layer III
“free”:: free fromat. free bitrate要保持稳定,而且务必低于许可的最大的一个比特率. 视频解码器不用适用free bitrate的流
“bad”: 含意就是这个值是不被允许的.
MPEG文件很有可能具备可变性的比特率(VBR)。每一个帧能够采用不同的比特率来建立。这也是能够在大多数的layer中应用。Layer III务必这样的方式,Layer I 和 Layer II 视频解码器能选适用 对于Layer II,不可以应用比特率和方式的一些组成。以下是一些许可的组成
bitrate单路环绕声intensity stereodual channe
freeyesyesyesyes
32yesnonono
48yesnonono
56yesnonono
64yesyesyesyes
80yesnonono
96yesyesyesyes
112yesyesyesyes
128yesyesyesyes
160yesyesyesyes
192yesyesyesyes
224noyesyesyes
256noyesyesyes
320noyesyesyes
384noyesyesyes
取样速度特定每秒钟一共有多少个样版被纪录。每一个MPEG版本号能够解决不一样的samplingrates。
采样频率引索MPEG-1 (Hz)MPEG-2 (Hz)MPEG-2.5 (Hz)
00441002205011025
01480002400012000
1032000160008000
11reservedreservedreserved
假如设置权限,则以一个slot添充数据(slot对架构大小的小测算至关重要) Layer I的slot大小是4字节,其他情况就是1字节。
设定值叙述
0并没有添充
1应用一个附加的slot添充数据
设定值叙述
00环绕声
01Joint stereo
10Dual channel(2 mono channels)
11Single channel(mono)
留意:双通道内存文件由2个单独的单声道构成。每一个都只用了文件的一半比特率。大部分视频解码器把它导出为环绕声,但状况并不是总是如此。应用一个案例要在同样的比特流中承载着两种不同语言的表达视频语音,那样视频解码器必须仅编解码所选的语言表达开展播放视频
扩展模式被用于增强了一些没有在环绕声实际效果所使用的信息,从而降低了所需要的位。这种位由在Joint stereo模式的伺服电机动态变化明确,每一个帧的Joint stereo都能够更改,乃至能打开或是关掉
MPEG文件整个的的工作频段分成了好几个子带,一共有32身高带。针对Layer I和Layer II而言2个位确认了当运用intensity stereo时的次数范围(频带)。针对Layer III,这两个位决定了使用哪一种类型的joint stereo(intensity stereo或者m/s stereo). 频率范围由解压缩算法来确定
{n}
{n}{t}设置值Layer I & II
{n}
{n}{t}00bands 4 to 31
{n}
{n}{t}01bands 8 to 31
{n}
{n}{t}10bands 12 to 31
{n}
{n}{t}11bands 16 to 31
{n}
{n}{t}Layer III:
{n}
{n}{t}Intensity stereoMS stereo
{n}
{n}{t}offoff
{n}
{n}{t}onoff
{n}
{n}{t}offon
{n}
{n}{t}onon
{n}{n}
{n}{t}设置值描述
{n}
{n}{t}00none
{n}
{n}{t}0150/15 ms
{n}
{n}{t}10reserved
{n}
{n}{t}11CCIT J.17
{n}{n}
{n}{t}边信息紧接着帧头。它包含了一些解码
原创文章,作者:leping,如若转载,请注明出处:https://www.qlhjjj.com/biao-3482.html