wav文件格式分析.doc

wav文件格式分析.doc

ID:49771526

大小:1.28 MB

页数:17页

时间:2020-03-04

wav文件格式分析.doc_第1页
wav文件格式分析.doc_第2页
wav文件格式分析.doc_第3页
wav文件格式分析.doc_第4页
wav文件格式分析.doc_第5页
资源描述:

《wav文件格式分析.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一.RIFF概念在Windows环境下,大部分的多媒体文件都依循着一种结构来存放信息,这种结构称为"资源互换文件格式"(ResourceslnterchangeFileFormat),简称RIFF。例如声音的WAV文件、视频的AV1文件等等均是由此结构衍生出来的。RIFF可以看做是一种树状结构,其基本构成单位为chunk,犹如树状结构中的节点,每个chunk由"辨别码"、"数据大小"及"数据"所组成。块的标志符(4BYTES)数据大小(4BYTES)数据                              图一、块的结构示意图辨别码由4个ASCII码所构成,数据大小则标示

2、出紧跟其后数据的长度(单位为Byte),而数据大小本身也用掉4个Byte,所以事实上一个chunk的长度为数据大小加8。一般而言,chunk本身并不允许内部再包含chunk,但有两种例外,分别为以"RIFF"及"L1ST"为辨别码的chunk。而针对此两种chunk,RIFF又从原先的"数据"中切出4个Byte。此4个Byte称为"格式辨别码",然而RIFF又规定文件中仅能有一个以"RIFF"为辨别码的chunk。RIFF/LIST标志符数据1大小数据1格式/列表类型数据                              图二、RIFF/LIST块结构只要依循此一结构的

3、文件,我们均称之为RIFF档。此种结构提供了一种系统化的分类。如果和MS一DOS文件系统作比较,"RIFF"chunk就好比是一台硬盘的根目录,其格式辨别码便是此硬盘的逻辑代码(C:或D:),而"L1ST"chunk即为其下的子目录,其他的chunk则为一般的文件。至于在RIFF文件的处理方面,微软提供了相关的函数。视窗下的各种多媒体文件格式就如同在磁盘机下规定仅能放怎样的目录,而在该目录下仅能放何种数据。二.WAV文件格式WAVE文件是非常简单的一种RIFF文件,它的格式类型为"WAVE"。RIFF块包含两个子块,这两个子块的ID分别是"fmt"和"data",其中"fmt"

4、子块由结构PCMWAVEFORMAT所组成,其子块的大小就是sizeofof(PCMWAVEFORMAT),数据组成就是PCMWAVEFORMAT结构中的数据。标志符(RIFF)数据大小格式类型("WAVE")"fmt"Sizeof(PCMWAVEFORMAT)PCMWAVEFORMAT"data"声音数据大小声音数据图三、WAVE文件结构PCMWAVEFORMAT结构定义如下:Typedefstruct...{    WAVEFORMATwf;       /波形格式;    WORDwBitsPerSample;   //WAVE文件的采样大小;}PCMWAVEFORMAT

5、;//WAVEFORMAT结构定义如下:typedefstruct...{    WORDwFormatag;       //编码格式,包括WAVE_FORMAT_PCM,WAVEFORMAT_ADPCM等    WORDnChannls;       //声道数,单声道为1,双声道为2;    DWORDnSamplesPerSec;   //采样频率;    DWORDnAvgBytesperSec;   //每秒的数据量;     WORDnBlockAlign;       //块对齐;}WAVEFORMAT;"data"子块包含WAVE文件的数字化波形声音数据,其存

6、放格式依赖于"fmt"子块中wFormatTag成员指定的格式种类,在多声道WAVE文件中,样本是交替出现的。如16bit的单声道WAVE文件和双声道WAVE文件的数据采样格式分别如图四所示:16位单声道:采样一采样二……低字节高字节低字节高字节……16位双声道:采样一……左声道右声道……低字节高字节低字节高字节……                            图四、WAVE文件数据采样格式WAV文件格式实例分析:0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F00000000H00000010H00000020H00000

7、030H00000040H52 49 46 46 0A06 01 00 57 41 56 45 66 6D74 2012 00 00 00 01 00 02 00 44 AC0000 10 B1 02 0004 00 10 00 00 00 66 61 63 74 04 00 00 00 76 4100 00 64 61 74 61 D8 05 01 0000 00 00 00 FF FF00 00 FEFFFEFF 00 00 00 00FE FFFEFF 00 00偏移地址字节数数据类型

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。