当前位置: 首页 > news >正文

MFC 使用sapi文字转换为语音

文章目录

  • 添加头文件
    • 声明变量

添加头文件

在这里插入图片描述

声明变量

在这里插入图片描述

pSpVoice = NULL; //默认构造函数中初始化为空
bool CChKBarSCCodeApp::InitSpVoice()
{HRESULT hr = ::CoInitialize(NULL);         // COM初始化if (!SUCCEEDED(hr)){AfxMessageBox(_T("声音环境初始化失败!"));return false;}// 获取ISpVoice接口if (FAILED(CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_INPROC_SERVER, IID_ISpVoice, (void**)&pSpVoice))){AfxMessageBox(_T(" 获取ISpVoice接口失败!"));return -1; // 当获取ISpVoice接口失败时,返回-1}//SpFindBestToken是SAPI中的一个函数,用于根据指定的属性条件查找最佳的语音tokenif (SUCCEEDED(SpFindBestToken(SPCAT_VOICES, L"language=804", NULL, &pSpObjectToken)))//804代表中文{pSpVoice->SetVoice(pSpObjectToken);//设置中文pSpVoice->SetVolume(m_oHardPara.m_nVolumeSize);//设置声音大小pSpVoice->SetVolume(m_oHardPara.m_nVolumeSpeed);}else{AfxMessageBox(_T("没有安装微软语音库!"));return false;}return true;
}void CChKBarSCCodeApp::SpVoiceOK()
{CString sTxt =_T("扫描成功");pSpVoice->Speak(sTxt.AllocSysString(), SPF_ASYNC, NULL);//异步读取
}void CChKBarSCCodeApp::SpVoiceNG()
{CString sTxt = _T("扫描失败");pSpVoice->Speak(sTxt.AllocSysString(), SPF_ASYNC, NULL);//异步读取
}
int CChKBarSCCodeApp::ExitInstance()
{if (pSpVoice){pSpVoice->Release();}::CoUninitialize();return CWinApp::ExitInstance();
}
http://www.lryc.cn/news/370496.html

相关文章:

  • (Git)多人协作1
  • MySQL-分组函数
  • 【C语言】联合(共用体)
  • 【博客715】如何从victorimametrics集群中下线vmstorage节点
  • Redis缓存技术详解与实战
  • 业务架构的位置及关系
  • CMS与AI的融合:构建万能表单小程序系统
  • 机器学习常见知识点 2:决策树
  • 海洋CMS admin_notify.php 远程代码执行漏洞复现(CVE-2024-30565)
  • Spring、Spring MVC、MyBatis和Spring Boot对比
  • 【Linux高级IO】select、poll、epoll
  • Etcd Raft架构设计和源码剖析2:数据流
  • 深入理解Qt多线程编程(QThreadPool)
  • Prisma数据库ORM框架学习
  • Flutter-使用MethodChannel 实现与iOS交互
  • 【星海随笔】云解决方案学习日志篇(一) ELK,kibana,Logstash安装
  • 【leetcode】hot100 哈希表
  • 每日5题Day22 - LeetCode 106 - 110
  • 【Python】读取文件夹中所有excel文件拼接成一个excel表格 的方法
  • 7. 通配符和正则表达式
  • ROS2底层机制源码分析
  • 超越 Transformer开启高效开放语言模型的新篇章
  • 快速排序-Hoare 递归版 C语言
  • C语言经典指针运算笔试题图文解析
  • 使用 KubeKey v3.1.1 离线部署原生 Kubernetes v1.28.8 实战
  • DOS 命令
  • 如何用Java程序实现一个简单的消息队列?
  • OpenAI 宕机事件:GPT 停摆的影响与应对
  • linux常用的基础命令
  • 618家用智能投影仪推荐:这个高性价比品牌不容错过