欢迎来到天天文库
浏览记录
ID:35203148
大小:218.00 KB
页数:44页
时间:2019-03-21
《wav文件格式分析详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、WAV文件格式分析详解一、综述WAVE文件作为多媒体中使用的声波文件格式之一,它是以RIFF格式为标准的。RIFF是英文ResourceInterchangeFileFormat的缩写,每个WAVE文件的头四个字节便是“RIFF”。 WAVE文件是由若干个Chunk组成的。按照在文件中的出现位置包括:RIFFWAVEChunk,FormatChunk,FactChunk(可选),DataChunk。具体见下图:------------------------------------------------
2、 RIFFWAVEChunk
3、
4、
5、 ID ='RIFF'
6、
7、 RiffType='WAVE'
8、------------------------------------------------
9、 FormatChunk
10、
11、 ID='fmt'
12、------------------------------------------------
13、
14、 FactChunk(optional)
15、
16、 ID='fact'
17、------------------------------------------------
18、 DataChunk
19、
20、 ID='data'
21、------------------------------------------------ 图1 Wav格式
22、包含Chunk示例 其中除了FactChunk外,其他三个Chunk是必须的。每个Chunk有各自的ID,位于Chunk最开始位置,作为标示,而且均为4个字节。并且紧跟在ID后面的是Chunk大小(去除ID和Size所占的字节数后剩下的其他字节数目),4个字节表示,低字节表示数值低位,高字节表示数值高位。下面具体介绍各个Chunk内容。PS: 所有数值表示均为低字节表示低位,高字节表示高位。二、具体介绍RIFFWAVEChunk ==================================
23、
24、所占字节数
25、 具体内容
26、 ====
27、==============================
28、ID
29、 4Bytes
30、 'RIFF'
31、 ----------------------------------
32、Size
33、 4Bytes
34、
35、 ----------------------------------
36、Type
37、 4Bytes
38、 'WAVE'
39、 ---------------------------------- 图2 RIFFWAVEChunk 以'FIFF'作为标示,然后紧跟着为size字段,该s
40、ize是整个wav文件大小减去ID和Size所占用的字节数,即FileLen-8=Size。然后是Type字段,为'WAVE',表示是wav文件。 结构定义如下: structRIFF_HEADER { charszRiffID[4]; //'R','I','F','F' DWORDdwRiffSize; charszRiffFormat[4];//'W','A','V','E' };FormatChunk ===============================================================
41、
42、
43、 字节数
44、 具体内容
45、 =================================================================
46、ID
47、 4Bytes
48、 'fmt'
49、 -----------------------------------------------------------------
50、Size
51、 4Byte
此文档下载收益归作者所有