Cpper
C/C++高级工程师 Android高级软件工程师 IT集成工程师 音频工程师 熟悉c,c++,java,c#,py,js,asp等多种语言 程序猿
1.获取错误 wavOutGetErrorText
static const char * mmerror(MMRESULT mmrError)
{
  
static char mmbuffer[1024];
  
int len;
  sprintf(mmbuffer,
"mm:%d ",(int)mmrError);
  len 
= (int)strlen(mmbuffer);
  waveOutGetErrorText(mmrError, mmbuffer
+len, sizeof(mmbuffer)-len);
  mmbuffer[
sizeof(mmbuffer)-1= 0;
  
return mmbuffer;
}
2. 检取系统中存在的波形输出设备的数量
int wavmax = waveOutGetNumDevs();
3.查询一个指定的波形输出设备以确定其性能
MMRESULT mmres = waveOutGetDevCaps(i, &caps, sizeof(caps));
if(mmres == MMSYSERR_NOERROR)
{
}

使用winmm播放音频的例子具体可以参考:libhao具体请google.
4.打开一个波形输出设备
  MMRESULT mmres;
  mmres = waveOutOpen(&hwo,id,&wavefmt.Format,(DWORD_PTR)0,(DWORD_PTR)device,CALLBACK_NULL|WAVE_ALLOWSYNC);
  if(mmres == MMSYSERR_NOERROR)
  {
  }
  else
  {
  }
5.获取
波形输出设备的标识符
MMSYSERR_NOERROR == waveOutGetID(hwo,&id)
6.关闭波形输出设备
waveOutClose(hwo)
7.设置,清除波形缓冲区
waveOutPrepareHeader
waveOutUnprepareHeader
8.向波形发送数据块
mmres = waveOutWrite(hwo,&wh,sizeof(WAVEHDR));
为查询函数如何使用最好的办法就是使用google code

posted on 2011-03-01 20:20 ccsdu2009 阅读(882) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理