FLV科普8 FLV音频头信息

来源:互联网 发布:java api怎么导入 编辑:程序博客网 时间:2024/04/29 18:58
音频Tag开始的第1个字节包含了音频数据的参数信息,从第2个字节开始为音频流数据。
第1个字节的前4位的数值表示了音频数据格式
第1个字节的第5-6位的数值表示采样率,0 = 5.5 kHz,1 = 11 kHz,2 = 22 kHz,3 = 44 kHz。
第1个字节的第7位表示采样精度,0 = 8bits,1 = 16bits。

第1个字节的第8位表示音频类型,0 = mono,1 = stereo

音频头信息占1字节 主要表示具体音频类型等信息

SoundFormat  占4位  第一个字节的 0~3位 音频数据格式 其中7 8 14 15为保留字段 aac在Flash Player9版本以上支持 speex在Flash Player10版本以上支持

                                      0 表示 Linear PCM, platform endian

                                      1 表示 ADPCM

                                      2 表示 MP3

                                      3 表示 Linear PCM, little endian

                                      4 表示 Nellymoser 16 kHz mono

                                      5 表示 Nellymoser 8 kHz mono

                                      6 表示 Nellymoser

                                      7 表示 G.711 A-law logarithmic PCM

                                      8 表示 G.711 mu-law logarithmic PCM

                                      9 表示 保留字段 未来使用

                                      10表示 AAC

                                      11表示 Speex

                                      12表示 未定义

                                      13表示 未定义

                                      14表示 MP3 8 kHz

                                      15表示Device-specific sound

SoundRate 占2位 第一个字节的(4~5位)表示音频采样率 0 = 5.5 kHz,1 = 11 kHz,2 = 22 kHz,3 = 44 kHz

SoundSize 占1位 第一个字节的第6位 表示采样精度,0 = 8bits,1 = 16bits。

SoundType占1位第一个字节的第7位 表示音频类型,0 = mono单声道,1 = stereo立体声道。

以上音频头信息占1字节 主要表示具体音频类型等信息

AACPacketType 占8位(只在aac情况下解析,否则跳过 SoundFormat ==10时)0 aac头信息  1 aac 原始数据


 

标准文档:



 

以下图选定区域的一个tag为例

tag头信息:占11字节  08 00 00 07 00 00 00 00 00 00 00  音频数据(0x 08  size = 0x07 )

SoundFormat  占4位  音频数据格式  值:0xAF 前4位为A(10)表示当前音频格式为aac

SoundRate 占2位 表示音频采样率 当前值0xF 前两位11(3)表示采样率为 44 kHz

SoundSize 占1位 第一个字节的第6位 表示采样精度,当前值为1 表示16位

SoundType占1位第一个字节的第7位 表示音频类型,当前值为1 表示立体声道

AACPacketType 占8位(只在aac情况下解析,否则跳过 SoundFormat ==10时)当前值为0x00 表示aac头信息



1 0
原创粉丝点击