CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

wav文件格式

楼主zjpno1()2000-10-06 23:47:00 在 VC/MFC / 基础类 提问

请问wav文件格式,并且如何读取文件后直接发声,而不是交给mci 问题点数:50、回复次数:1Top

1 楼cproom(cproom)回复于 2000-10-07 00:52:00 得分 50

程序员大本营的第一版本中有wav文件格式的详细说明。  
  读出的数据可用waveout开头的系列函数播放。  
  给你一个读出wav文件的参考,不很完善。仅列出构造函数和析构函数。未定义变量均数成员变量。  
  CWave::CWave(LPCSTR   fileName)  
  { error   =   FALSE;  
  buf   =   NULL;  
  CHUNK   ck;  
  ifstream   ifs(fileName,ios::binary);  
  if(!ifs)  
  { error   =   TRUE;  
  return;  
  }  
  ifs.read((char*)&rfHead,sizeof(RIFFHEAD));  
  if(ifs.bad())  
  { error   =   TRUE;  
  return;  
  }  
  if(rfHead.chunk_id[0]!='R'||rfHead.chunk_id[3]!='F')  
  { error   =   TRUE;  
  return;  
  }  
  while   (!ifs.eof())  
  { ifs.read((char*)&ck,sizeof(CHUNK));  
  if(strncmp(ck.chunk_id,"fmt",3)   ==   0)  
  { ifs.read((char*)&fmt,sizeof(FMT_CHUNK));  
  ifs.seekg(ck.size   -   sizeof(FMT_CHUNK),ios::cur);  
  }  
  else   if(strncmp(ck.chunk_id,"data",4)   ==   0)  
  { if((buf   =   new   unsigned   char[ck.size])   ==   NULL)  
  { error   =   TRUE;  
  return;  
  }  
  ifs.read((char*)buf,ck.size);  
  if(!ifs.good())  
  { error   =   TRUE;  
  delete[]   buf;  
  buf   =   NULL;  
  return;  
  }  
  dataLong   =   ck.size;  
  break;  
  }  
  else  
  { ifs.seekg(ck.size,ios::cur);  
  }  
  }  
  }  
   
  CWave::~CWave()  
  { if(buf   !=   NULL)  
  { delete[]   buf;  
  buf   =   NULL;  
  }  
  }Top

相关问题

  • Wav 文件格式
  • 请问谁有WAV文件格式
  • 我想知道*.wav的文件格式。
  • 文件格式??
  • 文件格式?
  • 文件格式
  • 文件格式
  • 有谁对音频文件格式感兴趣的,请进,.wav .au .mp3
  • 谁有音频文件格式和源代码(wav,au),急用,一定送分!!!
  • 有谁知道wav文件格式?请发给我,一定给分!!!

关键词

  • 文件格式
  • 函数
  • null
  • cwave
  • ck
  • wav文件格式
  • chunk
  • rfhead
  • buf
  • fmt

得分解答快速导航

  • 帖主:zjpno1
  • cproom

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo