wav音频文件格式分析与数据获取

wav音频文件格式分析与数据获取

ID:31365936

大小:112.50 KB

页数:8页

时间:2019-01-09

wav音频文件格式分析与数据获取_第1页
wav音频文件格式分析与数据获取_第2页
wav音频文件格式分析与数据获取_第3页
wav音频文件格式分析与数据获取_第4页
wav音频文件格式分析与数据获取_第5页
资源描述:

《wav音频文件格式分析与数据获取》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、wav音频文件格式分析与数据获取  摘要:音频文件是把语音信号离散化的数字文件,wav格式的音频文件是常用的二进制音频格式,广泛应用于语音信号处理、语音识别、语音合成等领域;本文详细分析了wav音频文件格式,并用C语言编程,实现对该格式文件的访问,获取音频信息和数据。  关键字:wav;音频文件;音频信息;音频数据  中图分类号:TP37文献标识码:A文章编号:1009-3044(2016)27-0211-03  1概述  语言是人们之间进行通讯和交流必不可少的手段。语音由人的发音器官发出,语音信号是连续的模拟信号,在用计算机来处理

2、时,需要进行数字化,包括采样、量化等过程,转换成离散的数字信号,保存在音频文件中。现在很多领域要求对语音信号中的音频数据进行进一步的加工和处理。例如,利用读出的音频信号数据,进行语音信号时域和频域分析、语音压缩、语音编码、解码、语音合成、语音识别、语音增强等,并通过波形观察比较不同编码效果。另外,利用多媒体语音系统我们还可以用语音数据和波形方便地进行噪声模拟分析,语音特征提取研究,以及语音识别和训练等应用方面的实验。又如:在人工智能领域,通过设计软件和硬件电路,用声音去控制计算机工作,还有机器人通过语音与人进行简单的对话交流等等。这

3、些都要求我们对数字语音信号进行一些必要的加工处理。8  wav文件格式是一种重要的数字音频文件格式,是目前应用很广泛的一种音频格式。相比于其他格式如MP3、MP4、RAM等压缩效率更高的音频文件格式,wav文件没有采用压缩技术,因而其文件要大很多,一般都在几兆字节,甚至更大。但也正因为没有采用压缩技术,wav文件中声音的采样数据很容易被读出来,便于做其他处理。例如:画出声音的信号波形、作出频谱,进行时域、频域分析,提取语音信号的特征参数用于语音识别等。现在的应用程序几乎都支持wav文件格式,也有专门软件可以完成从wav文件格式向其他

4、文件格式的转换,或者把其他格式文件转换为wav格式,例如,微软公司的AdobeAudition。因此wav文件在目前仍然有着广泛的应用价值,有很多应用程序仍然采用wav文件格式。  本文在VisualC++环境下编程实现了wav音频文件的读取,读出其中的参数和音频数据,以便进一步用于特征参数提取、说话人识别等,并对TIMIT语音库的语音文件进行了读取试验验证。  2wav文件格式分析  2.1wav文件格式  由于wav格式的波形文件是二进制文件,用C语言编程对该文件读取其中的数据,需要先了解它的格式。  wav格式是微软公司开发的

5、一种声音文件格式,也叫波形文件,是最早的数字音频文件格式,它具有RIFF(ResourceInterchangeFileFormat)格式。RIFF格式的wav文件由若干个Chunk(块)组成,按顺序为RIFFWAVEChunk、FormatChunk、FactChunk(可选)和Data8Chunk。每个块都有固定而且类似的格式,一般第1部分是块的ID,作为标识,4个字节大小,紧跟其后的是该块的大小,也是用4个字节表示,低字节表示低位,高字节表示高位;第3部分略有差异,以下分别详细说明。  RIFFWAVE块格式如表1所示:  W

6、av文件最开始4个字节是ID部分,其内容为RIFF的ASCII码,紧跟的4个字节是文件大小(字节数)减去ID和Size所占字节数,共8个字节,即文件大小(字节数)减去8。然后是Type部分,其内容为WAVE的ASCII码,4个字节。  Format块要复杂得多,其格式如表2所示:  其中ID部分同样占4个字节,其内容为"fmt"(注意最后有一个空格)的ASCII码。  fact块为可选的块,有的波形文件有这个块,有的没有,其格式如表3所示:  有些wav文件是由某些软件转化来的,一般就包含该块。其ID部分为fact的ASCII码,紧

7、跟的4个字节是存储的是4,然后是data部分,其内容为WAVE的ASCII码,4个字节。  最后一个块是Data块,其格式如表4所示:  其ID部分为data的ASCII码,紧跟的4个字节是音频数据个数,然后是data部分,存储的是具体的音频数据。  2.2wav文件示例  我用debug调试工具把一个wav二进制文件调入内存,再用该工具的显示命令d,把其中部分内容显示出来,如图1所示。8  图中,第1行的d是显示命令,第2行的“1396:0100”是内存地址,4个十六进制数据“52494646”依次是"RIFF"4个字母的ASCI

8、I码;紧跟的4个十六进制数据“06C70300”实际上是一个数值,低位在前,高位在后,因此是十六进制数0x3C706,即十进制数247558,该值等于整个wav文件大小减去8;再后面的4个十六进制数据“57415645”依次是"WAV

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

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

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