WAV文件格式分析详解.docVIP

  • 5
  • 0
  • 约4.61万字
  • 约 44页
  • 2017-02-28 发布于湖北
  • 举报
WAV文件格式分析详解 一、综述WAVE文件作为多媒体中使用的声波文件格式之一,它是以RIFF格式为标准的。RIFF是英文Resource Interchange File Format的缩写,每个WAVE文件的头四个字节便是“RIFF”。 ??? WAVE文件是由若干个Chunk组成的。按照在文件中的出现位置包括:RIFF WAVE Chunk, Format Chunk, Fact Chunk(可选), Data Chunk。具体见下图: ------------------------------------------------ |???????????? RIFF WAVE Chunk????????????????? | |???????????? ID? = RIFF???????????????????? | |???????????? RiffType = WAVE??????????????? | ------------------------------------------------ |???????????? Format Chunk???????????????????? | |???????????? ID = fmt ????????????????????? | ------------------------------------------------ |???????????? Fact Chunk(optional)???????????? | |???????????? ID = fact????????????????????? | ------------------------------------------------ |???????????? Data Chunk?????????????????????? | |???????????? ID = data????????????????????? | ------------------------------------------------ ??????????? 图1?? Wav格式包含Chunk示例 ??? 其中除了Fact Chunk外,其他三个Chunk是必须的。每个Chunk有各自的ID,位于Chunk最开始位置,作为标示,而且均为4个字节。并且紧跟在ID后面的是Chunk大小(去除ID和Size所占的字节数后剩下的其他字节数目),4个字节表示,低字节表示数值低位,高字节表示数值高位。下面具体介绍各个Chunk内容。 PS: ??? 所有数值表示均为低字节表示低位,高字节表示高位。 二、具体介绍 RIFF WAVE Chunk ??? ================================== ??? |?????? |所占字节数|? 具体内容?? | ??? ================================== ??? | ID??? |? 4 Bytes |?? RIFF??? | ??? ---------------------------------- ??? | Size? |? 4 Bytes |???????????? | ??? ---------------------------------- ??? | Type? |? 4 Bytes |?? WAVE??? | ??? ---------------------------------- ??????????? 图2? RIFF WAVE Chunk ??? 以FIFF作为标示,然后紧跟着为size字段,该size是整个wav文件大小减去ID和Size所占用的字节数,即FileLen - 8 = Size。然后是Type字段,为WAVE,表示是wav文件。 ??? 结构定义如下: ?struct RIFF_HEADER ?{ ? char szRiffID[4];? // R,I,F,F ? DWORD dwRiffSize; ? char szRiffFormat[4]; // W,A,V,E ?}; Format Chunk ??? =============================================================== ??? |?????????????? |?? 字节数? |????????????? 具体内容??????????????? | ??? ================================================================= ??? | ID??????????? |? 4 Byte

文档评论(0)

1亿VIP精品文档

相关文档