• 大小: 4KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: 其他
  • 标签: 语音识别  

资源简介

本程序在vs2013下完美运行,如果编译不通过,请先下载Microsoft Speech SDK,并设置好对应选项,程序分为两部分,分为语音转文字和文字转语音

资源截图

代码片段和文件信息

#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable: 4996) 
#include 
#include  //需用到CString
#include  //语音识别头文件
#include  //导入语音头文件
#include 
#include 
#include 
//包含语音引擎对应的静态库
#pragma comment(lib “sapi.lib“)
#pragma comment(lib “comsupp.lib“)
 
const int WM_RECORD = WM_USER + 100;
#define GID_CMD_GR 333333
#define WM_RECOEVENT WM_USER+1

/************************************************************************************************************************************************
SAPI API在一个应用程序和语音引擎之间提供一个高级别的接口。SAPI 实现了所有必需的对各种语音引擎的实时的控制和管理等低级别的细节。

SAPI引擎的两个基本类型是文本语音转换系统(TTS)和语音识别系统。
TTS系统使用合成语音合成文本字符串和文件到声音音频流。
语音识别技术转换人类的声音语音流到可读的文本字符串或者文件。
************************************************************************************************************************************************/
LRESULT CALLBACK WndProc(HWND UINT WPARAM LPARAM);
void openqq();
void closeqq();

char szAppName[] = “TsinghuaYincheng“; 
BOOL b_initSR;
BOOL b_Cmd_Grammar;
CComPtrm_cpRecoCtxt; //语言识别程序接口
CComPtrm_cpCmdGramma; //识别语法接口
CComPtrm_cpRecoEngine; //语言识别引擎接口

//CComPtrm_pInputStream;// 流()的接口。
//CComPtrjectToken>m_pToken;// 语音特征的(token)接口。
//CComPtrm_pAudio;// 音频(Audio)的接口。(用来保存原来默认的输入流)
//ULONGLONG ullGrammerID;

int speak(wchar_t *str);
//创建应用程序窗口
int WINAPI WinMain(HINSTANCE hInstance HINSTANCE hPrevInstance PSTR szCmdLine int iCmdShow)
{
HWND hwnd; //句柄
MSG msg; //消息体
WNDCLASS wndclass; //窗体对象
//窗口参数
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hbrBackground = (HBRUSH)GetStockobject(WHITE_BRUSH); //背景刷
wndclass.hCursor = LoadCursor(NULL IDC_ARROW); //窗口光标
wndclass.hIcon = LoadIcon(NULL IDI_APPLICATION); //图标
wndclass.hInstance = hInstance; //窗体实例名由Windows自动分发
wndclass.lpfnWndProc = WndProc; //窗体接收消息函数
wndclass.lpszClassName = szAppName; //窗体类名
wndclass.lpszMenuName = NULL;
wndclass.style = CS_HREDRAW | CS_VREDRAW; //样式
//注册窗体
if (!RegisterClass(&wndclass))
{
MessageBox(NULL TEXT(“This program requires Windows NT!“) szAppName MB_IConerror);
return 0;
}
//创建窗口返回句柄
hwnd = CreateWindow(szAppName //类名
TEXT(“语音识别教程“) //标题
WS_OVERLAPPEDWINDOW //风格
CW_USEDEFAULT //x初始位置
CW_USEDEFAULT //y初始位置
CW_USEDEFAULT //x初始尺寸
CW_USEDEFAULT //y初始尺寸
NULL //父窗口句柄
NULL //窗口菜单句柄
hInstance //实例句柄
NULL);

ShowWindow(hwnd iCmdShow); //显示窗口
UpdateWindow(hwnd); //更新窗口
speak(L“请说一些我能听懂的话“);
//消息循环
while (GetMessage(&msg NULL 0 0))
{
TranslateMessage(&msg); //翻译消息并发送到消息队列
DispatchMessage(&msg); //接收消息
}
return msg.wParam;
}
//用于接收和处理窗口消息
//hwnd是要处理窗口的句柄;message是消息ID,代表了不同的消息类型;wParam和lParam代表了消息的附加信息,附加信息会随着消息类型的不同而不同。
LRESULT CALLBACK WndProc(HWND hwnd UINT message WPARAM wParam LPARA

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       7650  2019-11-08 11:16  speech.cpp

     文件        259  2019-11-08 11:16  er.xml

----------- ---------  ---------- -----  ----

                 7909                    2


评论

共有 条评论