专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
DSP
音频格式详解:WAV
2019-07-13 20:01
发布
生成海报
站内文章
/
DSP
15551
0
1775
(1)音频格式:典型WAV
封装格式是每个音频文件必不可少的组成部分之一,它给我们提供了以下参考信息。音频文件类型、编解码方法、单双声道、采样深度、采样率、量化位数、音频文件大小、长度。下面首先来分析一下经典的wav音频的封装格式。
个人精力有限不可能把每种音视频格式都一一解析,所以这里分别挑选了音频:Wav,视频Mp4两种多媒体文件格式介绍:
下面我们对每一个字段进行详细的分析。
整个音频文件包括三个主要部分:
(1) 文件头描述字段
(2) 数据头字段
(3) 数据字段
(1) 文件头描述字段:
1.1 Chunk ID:“RIFF”标志位。占用4个字节。数据类型char,偏移地址0x00。存储方式:大端模式
我们任意打开一个wav音频文件:
利用十六进制到ASCII转换工具:
刚好是RIFF
1.2 Chunk Size:文件大小 。占用4个字节。数据类型long int,偏移地址0x04。存储方式:小端模式
首先要把大小端调整一下:
0035E024. 将其转换为十进制:3530788
总文件大小=3530788+4(RIFF4个字节)+4(Chunk Size) 4个字节。
总文件大小=3530796 Byte
我们对比一下:
1.3 Format:文件标志位。占用4个字节。数据类型char,偏移地址0x08。存储方式:大端模式。
对应的英文字母:WAVE
(2)数据头字段
2.1 Subchunk1 ID:“FMT”标志位。占用4个字节。数据类型char,偏移地址0x0c。存储方式:大端模式。
2.2Subchunk1 Size:过渡字节。占用4个字节。数据类型int,偏移地址0x10。存储方式:小端模式。
2.3Audio Format:声音格式。占用2个字节。数据类型int,偏移地址0x14。存储方式:小端模式.
01表示pcm格式。当然,模拟信号转化为数字信号可以有不同的格式。比如常用的PCM、ACM、LAW
2.4Num Channels:声道个数。占用2个字节。数据类型int,偏移地址0x16。存储方式:小端模式。02 00 。对应的2个通道
2.5 Sample Rate:采样率。占用4个字节。数据类型int,偏移地址0x18。存储方式:小端模式.
0000AC44-》44100 采样速率。
2.6 Byte Rate:音频传输速率。占用4个字节。数据类型long int,偏移地址0x1c。存储方式:小端模式
音频传输速率:176000 176KB
其实这个根据上面的参数是能计算出来的。
音频传输速率(每秒传输的字节数)=采样率(每秒采样个数)*通道个数*每个采样点的字节数(每个采样点16位,占2个字节)
这个参数什么作用呢?它直接决定播放这种音频文件需要多大的带宽。
带宽:带宽指单位时间能通过链路的数据量。通常以
bps
来表示
所以,如果播放这个音频,大约需要 1.375M 带宽以上,才能直播音频。否则只能缓冲来播放了。实际上一般不用WAV,都用AAC等压缩率高的音频文件格式。
2.7 Block Align:数据块调整。占用2个字节。数据类型int,偏移地址0x20。存储方式:小端模式
2.8 Bits perSample:每个样本中数据位数。占用2个字节。数据类型int,偏移地址0x22。存储方式:小端模式
10 00这个是啥意思呢?通俗理解就是每个采样点所占的位数。这里是十六。说明44100的采样点,每个点是16个bit的。
(3)数据字段
3.1 Subchunk2 ID:“data”标识符。占用4个字节。数据类型char,偏移地址0x24。存储方式:大端模式
3.1 Subchunk2 Size:音频文件长度。占用4个字节。数据类型long int,偏移地址0x28。存储方式:小端模式
一个是文件长度,一个是音频数据长度。二者偏移地址分别是0x04 0x28 。刚好相差0x24个字节。 3.3 Date:为音频数据。长度等信息由具体音频文件决定。 这里可以把一些音频加密等信息放在这里。或者把音频加密的一些key放在音频文件头部。
Ta的文章
更多
>>
音频格式详解:WAV
0 个评论
Intel2017实习生电面经历
0 个评论
热门文章
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮