WAV文件格式相关资料集.xls_第1页
WAV文件格式相关资料集.xls_第2页
WAV文件格式相关资料集.xls_第3页
WAV文件格式相关资料集.xls_第4页
WAV文件格式相关资料集.xls_第5页
已阅读5页,还剩4页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

endian File offset bytes field name Field Size bytes 0 big ChunkIDChunkID4 RIFF 4 大写字符串 RIFF 标明该文件为有效的RIFF格式文档 little ChunkSizeChunkSize4 文件长度 8 从下一个字段首地址开始到文件末尾的总字节数 该字段的数值加8为当前文件的实际长度 big FormatFormat4 WAVE WAVE标志 12 所有WAV格式的文件此处为字符串 WAVE 标明该文件是WAV格式文件 big Subchunk1IDSubchunk1ID4 fmt 16 fmt标志 最后一位为空 little Subchunk1SizeSubchunk1Size4 对于PCM文件为16 指除前8字节的Fmt块大小 20 其数值不确定 取决于编码格式 可以是16 18 20 40等 little AudioFormatAudioFormat2 1 WAVE FORMAT PCM 编码格式类别 1表示为PCM形式的声音数据 22 little NumChannelsNumChannels2通道数 单声道为1 双声道为2 24 little SampleRateSampleRate2 采样频率 每秒样本数 28 常用的采样频率有11025 22050和44100 kHz little ByteRateByteRate4 每秒数据量 其值为 通道数 每秒数据位数 每样本的数据位数 8 32 播放软件利用此值可以估计缓冲区的大小 little BlockAlignBlockAlign2 数据块的调整数 按字节算的 其值为通道数 每样本的数据位值 8 34 播放软件需要一次处理多个该值大小的字节数据 以便将其值用于缓冲区的调整 little BitsPerSampleBitsPerSample2 每样本的数据位数 表示每个声道中各个样本的数据位数 36 如果有多个声道 对每个声道而言 样本大小都一样 常见的位数有4 8 12 16 24 32 big Subchunk2IDSubchunk2ID4 对对基基本本格格式式 块块的的扩扩充充部部 分分 根根据据 AudioFormatAudioFormat 有有所所不不同同 data 40 数据标记符 little Subchunk2SizeSubchunk2Size4语音数据大小 44 little datadata 实际的声音数据 描述WAVE文件的基本单元是 sample 一个sample 代表采样一次得到的数据 因此如果用44KHz采样 将在 一秒中得到44000个sample 每个sample可以用8位 24 位 甚至32位表示 位数没有限制 只要是8的整数倍即 可 位数越高 音频质量越好 此处有一个值得注意的细节 8位代表无符号的数值 而16位或16位以上代表有符号的数值 例如 如果有一个10bit的样本 由于sample位数要求 是8的倍数 我们就需要把它填充到16位 16位中 0 5位 补0 6 15位是原始的10bit数据 这就是左补零对齐原则 上述只是单声道 如果要处理多声道 就需要在任意 给定时刻给出多个sameple 例如 在多声道中 给出某 一时刻 我们需要分辨出哪些sample是左声道的 哪些 sample是右声道的 因此 我们需要一次读写两个sample 假如以44KHz取样立体声音频 我们需要一秒读写44 2 KHz的sample 给出公式 每每秒秒数数据据大大小小 字字节节 采采样样率率 声声道道数数 samplesample比比特特 数数 8 8 处理多声道音频时 每个声道的样本是交叉存储的 我们把左右声道数据交叉存储在一起 先存储第一个 sample的左声道数据 然后存储第一个sample的右声 道数据 当一个设备需要重现声音时 它需要同时处理多个 声道 一个sample中多个声道信息称为一个样本帧 表表2 2 FormatFormat CodeCode 格格式式编编码码 格式 编码 预处理符号数据格式名称 fmt 块长度 fact 块 0 x0001WAVE FORMAT PCM PCM 非压缩格式16 0 x0002WAVE FORMAT ACM Microsoft ADPCM18 0 x0003WAVE FORMAT IEEE FLOAT Ieee float18 0 x0006WAVE FORMAT ALAW 8bits ITU T G 711 A law18 0 x0007WAVE FORMAT MULAW 8 bit ITU T G 711 u law18 0 x0031WAVE FORMAT GSM GSM 6 1020 0 x0040 ITU G 721 ADPCM 0 xFFFEWAVE FORMAT EXTENSIBLE 见子格式块中的编码格式40不确定 模拟信号转化为数字信号可以有不同的格式 比如常用的PCM ACM LAW Data Chunk是真正保存wav数据的地方 以 data 作为Chunk 的标示 然后是数据的大小 紧接着就是wav数据 根据Format Chunk中的声道数以及采样bit数 wav数据的bit位置可以分成以 下几种形式 8bit8bit单单声声道道 取样1取样2取样3取样4 声道0声道0声道0声道0 8bit8bit双双声声道道 取样1取样2 声道0 左 声道1 右 声道0 左 声道1 右 16bit16bit单单声声道道 取样1取样2 声道0 低位字节 声道0 高位字节 声道0 低位字节 声道0 高位字节 16bit16bit双双声声道道 取样1 声道0 左 低位字节 声道0 左 高位字节 声道1 右 低位字节 声道1 右 高位字节 一一 RIFFRIFF概概念念 在Windows环境下 大部分的多媒体文件都依循着一种结构来 存放信息 这种结构称为 资源互换文件格式 Resources lnterchange File Format 简称RIFF 例如声音的WAV文件 视频的AV1文件等等均是由此结构衍生出来的 RIFF可以看做是一 种树状结构 其基本构成单位为chunk 犹如树状结构中的节点 每个chunk由 辨别码 数据大小 及 数据 所组成 块的标志符 4BYTES 数据大小 4BYTES 数据 图一 块的结构示意图 辨别码由4个ASCII码所构成 数据大小则标示出紧跟其后数 据的长度 单位为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块结构 只要依循此一结构的文件 我们均称之为RIFF档 此种结构 提供了一种系统化的分类 如果和MS一DOS文件系统作比较 RIF F chunk就好比是一台硬盘的根目录 其格式辨别码便是此硬盘的 逻辑代码 C 或D 而 L1ST chunk即为其下的子目录 其他的 chunk则为一般的文件 至于在RIFF文件的处理方面 微软提供了 相关的函数 视窗下的各种多媒体文件格式就如同在磁盘机下规 定仅能放怎样的目录 而在该目录下仅能放何种数据 WAVE文件是非常简单的一种RIFF文件 它的格式类型为 WAVE RIFF块包含两个子块 这两个子块的ID分别是 fmt 和 data 其中 fmt 子块由结构PCMWAVEFORMAT所组成 其子块的大小就是 sizeofof PCMWAVEFORMAT 数据组成就是PCMWAVEFORMAT结构中 的数据 二二 波波形形文文件件的的基基础础知知识识 2 12 1 波波形形文文件件的的存存储储过过程程 声源发出的声波通过话筒被转换成连续变化的电信号 经过放 大 抗混叠滤波后 按固定的频率进行采样 每个样本是在一个采 样周期内检测到的电信号幅度值 接下来将其由模拟电信号量化为 由二进制数表示的积分值 最后编码并存储为音频流数据 有的应 用为了节省存储空间 存储前 还要对采样数据先进行压缩 2 22 2 WAVWAV文文件件的的编编码码 编码包括了两方面内容 一是按一定格式存储数据 二是采用 一定的算法压缩数据 WAV格式对音频流的编码没有硬性规定 支 持非压缩的PCM Puls Code Modulation 脉冲编码调制格式 还支 持压缩型的微软自适应差分脉冲编码调制Microsoft ADPCM Adap tive Differential Puls Code Modulation 国际电报联盟 I nternational Telegraph Union 制定的语音压缩标准ITUG 711 a law ITU G 711 law IMA ADPCM ITU G 723ADPCM Yamah a GSM 6 10 ITU G 721 ADPCM编码和其它压缩算法 MP3编码 同样也可以运用在WAV中 只要安装相应的Decode 就可以播放WAV 中的MP3音乐 2 32 3 PCMPCM编编码码格格式式 PCM编码是直接存储声波采样被量化后所产生的非压缩数据 故被视为单纯的无损耗编码格式 其优点是可获得高质量的音频信 号 基于PCM编码的WAV格式是最基本的WAV格式 被声卡直接支持 能直接存储采样的声音数据 所存储的数据能直接通过声卡播放 还原的波形曲线与原始声音波形十分接近 播放的声音质量是一流 的 在Windows平台下被支持得最好 常常被用作在其它编码的文件 之间转换的中间文件 PCM的缺点是文件体积过大 不适合长时间 记录 正因为如此 又出现了多种在PCM编码的基础上经改进发展 起来的编码格式 如 DPCM ADPCM编码等 2 42 4 与与声声音音有有关关的的三三个个参参数数 1 采样频率 又称取样频率 是单位时间内的采样次数 决定 了数字化音频的质量 采样频率越高 数字化音频的质量越好 还 原的波形越完整 播放的声音越真实 当然所占的资源也越多 根 据奎特采样定理 要从采样中完全恢复原始信号的波形 采样频率 要高于声音中最高频率的两倍 人耳可听到的声音的频率范围是 在16Hz 20kHz之间 因此 要将听到的原声音真实地还原出来 采 样频率必须大于40kHz 常用的采样频率有8kHz 11 025kHz 22 05kHz 44 1kHz 48kHz等几种 22 05KHz相当于普通FM广播 的音质 44 1KHz理论上可达到CD的音质 对于高于48KHz的采样频 率人耳很难分辨 没有实际意义 2 采样位数 也叫量化位数 单位 比特 是存储每个采样值 所用的二进制位数 采样值反应了声音的波动状态 采样位数决 定了量化精度 采样位数越长 量化的精度就越高 还原的波形曲 线越真实 产生的量化噪声越小 回放的效果就越逼真 常用的量 化位数有4 8 12 16 24 量化位数与声卡的位数和编码有关 如果采用PCM编码同时使用8位声卡 可将音频信号幅度从上限到 下限化分成256个音量等级 取值范围为0 255 使用16位声卡 可将 音频信号幅度划分成了64K个音量等级 取值范围为 32768至32767 3 声道数 是使用的声音通道的个数 也是采样时所产生的声 音波形的个数 播放声音时 单声道的WAV一般使用一个喇叭发声 立体声的WAV可以使两个喇叭发声 记录声音时 单声道 每次产生 一个波形的数据 双声道 每次产生两个波形的数据 所占的存储空 间增加一倍 三三 WAVWAV文文件件结结构构 在Windows环境下 大部分多媒体文件都是按照资源互换文件 格式 Resources lnterchange File Format 存放信息 简称RI FF格式 构成RIFF文件的基本单位称之为块 chunk 每个RIFF文 档是由若干个块构成 每个块 chunk 由块标识 块长度及数据等 三部分所组成 其中 块标识保存的是由4个ASCII码字符组成的块名字 如不 满4个字符则在右边以空格充填 块长度字段 占4个字节 保存的 是当前块数据的长度 不包括块标识和块长度字段 所以一个块的 实际长度为块长度字段内的数值加8 RIFF格式规定 只有 RIFF及 LIST块可以含有子块 其它的块不允许包含子块 一个RIFF格式文 档本身就是一个块 其前4个字节为文档标识 RIFF 同时也是 RIFF的块标识 标明该文档是一个有效的RIFF文档 第二部分为文 件的数据长度 占4个字节 其数值为文件长度 8 第三部分为RIFF 块数据 其中 前4个字节为文件格式类型标识 如 WAVE AVI 等 后面其它部分为RIFF块的子块 WAV文件采用的是RIFF格式结构 至少是由3个块构成 分别是 RIFF fmt 和Data 所有基于压缩编码的WAV文件必须含有fact块 此外所有其它块都是可选的 块fmt Data及fact均为RIFF块的 子块 WAV文件的文件格式类型标识符为 WAVE 四四 WAVWAV文文件件头头格格式式 WAV文件由文件头和数据体两部分组成 其中 文件头是由文 件标识字段与格式块两部分组成 后者保存的是编码参数和声音参 数 4 14 1 扩扩展展格格式式块块 当WAV文件采用非PCM编码时 使用的是扩展格式块 它是在基 本格式块fmt之后扩充了一个的数据结构 该结构的前两字节为长 度字段 指出后面区域的长度 紧接其后的区域称之为扩展区 含 有扩充的格式信息 其长度取决于压缩编码类型 当某种编码格式 如ITU G 711 a law 使扩展区的长度为0时 长度字段还必须保 留 只是长度字段的数值为0 因此 扩展格式块长度的最小值为基 本格式块的长度16加2 4 24 2 格格式式块块的的扩扩充充 当编码格式代码为0 xFFFE时 为扩充标识码 此时格式块扩展 区长度为24字节 包含了新增的格式字段和真正的编码格式代吗 4 34 3 factfact块块 采用压缩编码 修订版Rev 3以后出现的编码格式 的WAV文件 必须有含有fact块 块标识符为 fact 块长度至少4个字节 目前fact块只有一个数据项 为每个声道采样总数 或采样帧总数 该数值可由data块中的数据长度除以数据块对齐单位的数值计 算出 虽然基于压缩编码的文件含有fact块 然而 实测中发现 将文 件转换成PCM编码格式后 原fact块仍然存在 五五 WAVWAV文文件件语语音音数数据据的的组组织织结结构构 WAV文件的声音数据保存在数据块中 块标识符为 data 块长度值为声音数据的长度 从数据块的第9个字符开始是声音波 形采样数据 每个样本按采样的时间先后顺序写入 样本的字节 数取决于采样位数 对于多字节样本 低位字节数据放在低地址单 元 相邻的高位字节数据放在高地址单元 多声道样本数据采用交替方式存储 例如 立体声 双声道 采 样值的存储顺序为 通道

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论