日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++桌面应用中文语音包功能接口

發布時間:2024/3/24 c/c++ 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++桌面应用中文语音包功能接口 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用之前需要先安裝中文語音包(男聲+女聲安裝包下載)
Voice.h文件
(頭文件包含的lib庫資源如果缺失,百度下載或我的資源)

#pragma once #ifdef _MSC_VER #pragma warning (push) #pragma warning (disable : 4005) #include <intsafe.h> #pragma warning (pop) #pragma warning (default : 4005) #endif#include <sapi.h> #include <sphelper.h> #include <spuihelp.h>#pragma comment(lib,"ole32.lib") #pragma comment(lib,"sapi.lib") class CVoice { public:CVoice(void);~CVoice(void); private:ISpVoice * pVoice ;bool m_State;void InitVoice();void CloseVoice(); public:void Speech(CString str,bool flag =true);void SetRate(int rate);void SetVoiceType(int voicetype); //設置1:男聲;2:女聲 };

Voice.cpp文件

#include "StdAfx.h" #include "Voice.h"CVoice::CVoice(void) {m_State =false;InitVoice(); }CVoice::~CVoice(void) {CloseVoice(); }void CVoice::InitVoice() {pVoice =NULL;if (FAILED(::CoInitialize(NULL)))return ; HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice, (void **)&pVoice); if( SUCCEEDED( hr ) ) {ISpObjectToken* pChineseToken; WCHAR pszTokenId[] =L"HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Speech\\Voices\\Tokens\\VW Liang";SpGetTokenFromId(pszTokenId , &pChineseToken);pVoice->SetVoice(pChineseToken);pVoice->SetVolume(100);pVoice->SetRate(1);}m_State =true; }void CVoice::CloseVoice() {if(pVoice !=NULL){pVoice->Release(); pVoice = NULL; }if(m_State ==true)::CoUninitialize(); }void CVoice::SetRate(int rate) {pVoice->SetRate(rate); }void CVoice::SetVoiceType(int voicetype) {if (voicetype == 1){ISpObjectToken* pChineseToken; // WCHAR pszTokenId[] =L"HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Speech\\Voices\\Tokens\\VW Lily";WCHAR pszTokenId[] =L"HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Speech\\Voices\\Tokens\\VW Liang";SpGetTokenFromId(pszTokenId , &pChineseToken);pVoice->SetVoice(pChineseToken);}else{ISpObjectToken* pChineseToken; WCHAR pszTokenId[] =L"HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Speech\\Voices\\Tokens\\VW Lily";SpGetTokenFromId(pszTokenId , &pChineseToken);pVoice->SetVoice(pChineseToken);} }void CVoice::Speech(CString str,bool flag) {USES_CONVERSION;LPWSTR pwStr=new wchar_t[str.GetLength()+1];wcscpy_s(pwStr,str.GetLength()+1,T2W((LPCTSTR)str));if(flag ==true)pVoice->Speak( pwStr, SPF_ASYNC, NULL); elsepVoice->Speak( pwStr, SPF_DEFAULT, NULL); delete[] pwStr; }

總結

以上是生活随笔為你收集整理的C++桌面应用中文语音包功能接口的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲精品视频在线观看视频 | 精品一区二区三区不卡 | 超碰超碰97 | 老牛影视av牛牛影视av | 女女h百合无遮涩涩漫画软件 | 极品尤物在线观看 | 黑丝美女av | 黄色免费成人 | 国产免费91视频 | 精品二三区 | 中文字幕精品一区二区三区视频 | 国产区一区二 | 麻豆高清 | 羞视频在线观看 | 中文字幕无码日韩专区免费 | 久久久不卡国产精品一区二区 | 精品国产青草久久久久96 | 日韩日b | 午夜视频a| 免费看成人aa片无码视频羞羞网 | 久福利 | 欧美一区二区视频 | 91免费片| 国产一区二区高清视频 | 18我禁在线观看 | 国产人妖一区 | 亚洲一二三四在线 | 免费看黄av | 午夜在线一区二区 | 黄色免费国产 | 青青操狠狠干 | 99re热在线视频 | 日本黄色高清 | 日韩久久久久久久久久 | 8050午夜一级毛片久久亚洲欧 | 超碰520| 国产少妇自拍 | 一区二区三区免费观看 | 好大好爽视频 | 国产噜噜噜噜久久久久久久久 | 一级视频在线观看 | 国产春色| 少妇一级淫片免费看 | 亚洲一区二区三区蜜桃 | 欧美性福利 | 久久久这里有精品 | 美女扒开腿让男人捅 | 久久国产乱 | av资源网站 | 国产麻豆一区二区三区 | 91精品专区 | 综合精品久久久 | 麻豆一区二区三区四区 | 好吊操这里只有精品 | 欧美激情电影一区二区 | 国产自产在线 | 亚洲人丰满奶水 | av综合网站| 亚洲av成人无码久久精品老人 | 亚洲福利社 | 91精品国产aⅴ一区二区 | 日产久久视频 | 中文字幕色站 | 午夜视频在线观看免费视频 | 色综合图片区 | 一级v片 | 国产精品老熟女一区二区 | 草草在线视频 | 91精品国产91综合久久蜜臀 | 野花国产精品入口 | 国产精品老熟女一区二区 | www.av777| 久99热| a级片免费视频 | 一级a性色生活片久久无 | 国产精品久久久久久久一区探花 | 在线免费看mv的网站入口 | 亚洲网站色 | 综合色在线观看 | 日韩欧美精品一区二区 | 久久久久久五月天 | 欧美 亚洲 一区 | 美女网站黄页 | 真人毛片视频 | 日日干天天干 | 国产一级久久久久毛片精品 | 亚洲黄色在线观看 | 欧美激情自拍 | 五月天激情视频 | 久久av网站| 久久av一区二区三 | 国产精品视频久久久久 | 韩漫动漫免费大全在线观看 | 亚欧三级| 亚洲第九页 | 污网站在线免费看 | 欧美精品一区二区久久婷婷 | 国产91丝袜在线观看 | 国产高清一区在线 |