基于VisualC++6.0的声音文件操作.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于 Visual C++6.0 的声音文件操作 一、前言 当前 Visual C++ 相关的编程资料中,无论是大部头的参考书,还是一些计 算机杂志, 对声音文件的处理都是泛泛的涉及一下, 许多编程爱好者都感到对该 部分的内容了解不是很透彻, 本文希望能够给刚刚涉及到声音处理领域的朋友们 起到一个引路的作用,帮助他们尽快进入声音处理的更深奥空间。 当前计算机系统处理声音文件有两种办法: 一是使用现成的软件, 如微软的 录音机、 SoundForge 、CoolEdit 等软件可以实现对声音信号进行录音、编辑、 播放的处理,但它们的功能是有限的,为了更灵活,更大限度地处理声音数据, 就不得不使用另外一种方法,既利用微软提供的多媒体服务,在 Windows 环境 下自己编写程序来进行声音处理来实现一些特定的功能。 下面就开始介绍声音文 件的格式和在 Windows 环境下使用 Visual C++ 开发工具进行声音文件编程处理 的方法,本文所有的程序代码都在 Windows2000 、Visual C++6.0 环境下编译通 过,运行正常。 二、 RIFF 文件结构和 WAVE 文件格式 Windows 支持两种 RIFF(Resource Interchange File Format, 资源交互文件 格式 )格式的音频文件: MIDI 的 RMID 文件和波形音频文件格式 WAVE 文件, 其中在计算机领域最常用的数字化声音文件格式是后者,它是微软专门为 Windows 系统定义的波形文件格式 (Waveform Audio ),由于其扩展名为 *.wav , 因而该类文件也被称为 WAVE 文件。为了突出重点,有的放矢,本文涉及到的 声音文件所指的就是 WAVE 文件。常见的 WAVE 语音文件主要有两种, 分别对 应于单声道 (11.025KHz 采样率、 8Bit 的采样值) 和双声道 (44.1KHz 采样率、 16Bit 的采样值)。这里的采样率是指声音信号在进行 模→数转换过程中单位 时间内采样的次数。 采样值是指每一次采样周期内声音模拟信号的积分值。 对于 单声道声音文件,采样数据为八位的短整数( short int 00H-FFH );而对于双声 道立体声声音文件,每次采样数据为一个 16 位的整数( int ),高八位和低八位 分别代表左右两个声道。 WAVE 文件数据块包含以脉冲编码调制( PCM )格式 表示的样本。在进行声音编程处理以前,首先让我们来了解一下 RIFF 文件和 WAVE 文件格式。 RIFF 文件结构可以看作是树状结构, 其基本构成是称为 块 (Chunk )的单 元,每个块有 标志符 、数据大小 及 数据 所组成,块的结构如图 1 所示: 块的标志符( 4BYTES ) 数据大小 (4BYTES ) 数据 图一、 块的结构示意图 从上图可以看出, 其中 标志符 为 4 个字符所组成的代码, 如RIFF ,LIST 等,指定块的标志 ID;数据大小用来指定块的数据域大小,它的尺寸也为 4 个 字符;数据用来描述具体的声音信号,

文档评论(0)

177****7752 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档