QQ登录

只需一步,快速开始

159上位机VC MFC声音录制播放与保存操作

[ 复制链接 ]

159上位机VC MFC声音录制播放与保存操作

159上位机VC MFC声音录制播放与保存操作

159上位机VC MFC声音录制播放与保存操作


功能展示

录音软件都可以进行声音的录制与保存操作,我们当前例程也实现了声音的录制,播放与保存操作,效果如图;
要点提示
例程主要是通过MCI函数进行声音的录制和保存功能;通过MCIWndCreate()创建一个窗口进行录音,创建后的窗口句柄可以用在函数MCIWndNew()中进行打开录音设备操作;
通过MCIWndCanRecord()判断是否可录音;
通过MCIWndRecord()进行录音;
通过MCIWndStop()停止录制;
通过MCIWndCanPlay()判断是否可播放
通过MCIWndPlay()进行录制语音的播放;
通过MCIWndCanSave()判断是否可以保存操作;
通过MCIWndSave()进行保存操作;





实现功能
1.新建基于对话框的应用程序
2.在进行录音功能实现前得加载操作所用到的头文件及库文件;
#include<vfw.h>#pragma comment(lib,“vfw32.lib”)再添加变量 HWND m_hMCIWave;作为贯穿程序的录音窗口句柄;

3.拖拽四个按钮分别实现开始录音,停止录音,保存录音,播放录音功能;
  1. void CGkbc8Dlg::OnRecord()
  2. {
  3.         SetDlgItemText(IDC_NOTICE,"录音中...");
  4.         //><
  5.         MCIWndClose(m_hMCIWave);
  6.         m_hMCIWave=MCIWndCreate(this->m_hWnd,::AfxGetApp()->m_hInstance,WS_CAPTION,NULL);
  7.         MCIWndNew(m_hMCIWave,"waveaudio");
  8.     if(MCIWndCanRecord(m_hMCIWave))   
  9.       MCIWndRecord(m_hMCIWave);        
  10. }

  11. void CGkbc8Dlg::OnStop()
  12. {
  13.         SetDlgItemText(IDC_NOTICE,"待录音...");
  14.         //><
  15.         MCIWndStop(m_hMCIWave);        
  16. }
复制代码
  1. void CGkbc8Dlg::OnTest()
  2. {
  3.         if(MCIWndCanPlay(m_hMCIWave))
  4.                 MCIWndPlay(m_hMCIWave);
  5.         //><
  6.         SetDlgItemText(IDC_NOTICE,"");
  7. }

  8. void CGkbc8Dlg::OnSave()
  9. {
  10.         if (MCIWndCanSave(m_hMCIWave))  
  11.         {
  12.                 //MCIWndSave(m_hMCIWave,-1);//弹出默认对话框
  13.                  CFileDialog Dlg(FALSE,".wav",NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"wav File(*.wav)|*.wav||");
  14.                  if(Dlg.DoModal() == IDOK)
  15.                  {
  16.                          CString sPath;
  17.                          sPath = Dlg.GetPathName();//获取路径及文件名
  18.                          WCHAR wszFilename[MAX_PATH] = {0};//转换路径名为unicode类型
  19.                          MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, LPCSTR(sPath), sPath.GetLength(), wszFilename, sizeof(wszFilename));
  20.                          MCIWndSave(m_hMCIWave, wszFilename);
  21.                  }
  22.         }
  23. }
复制代码
我们来演示下功能实现的整个过程
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:159.上位机VC MFC声音录制播放与保存操作.rar 
文件大小:131.42 KB  售价:10金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索