資源簡介
科大訊飛語音開發SDK及VCdemo,科大官網的,以后可以自己做研究了,科大做的還是蠻專業的

代碼片段和文件信息
//?asrdemo.cpp?:?Defines?the?entry?point?for?the?console?application.
//
#include?“stdafx.h“
#include?
#include?
#include?“windows.h“
#include?“../include/qisr.h“
#include?
#pragma?comment(lib“../lib/msc.lib“)
int?getExID(void);//獲取語法ID
int?testExID(void);//測試識別效果
const?char*??getAsrFile(void);//選擇音頻文件
char?exID[128];
const?int?BUFFER_NUM?=?4096;
const?int?MAX_KEYWORD_LEN?=?4096;
const?char*?asrfile;
int?_tmain(int?argc?_TCHAR*?argv[])
{
asrfile?=?getAsrFile();
int?ret?=?MSP_SUCCESS;
//appid?請勿隨意改動
ret?=?QISRInit(“appid=4ee9abd6“);
if(ret?!=?MSP_SUCCESS)
{
printf(“QISRInit?with?errorCode:?%d?\n“?ret);
return?0;
}
memset(exID?0?sizeof(exID));
ret?=?getExID();
if(ret?!=?MSP_SUCCESS)
{
printf(“getExID?with?errorCode:?%d?\n“?ret);
return?0;
}
ret?=?testExID();
QISRFini();
char?key?=?_getch();
return?0;
}
int?getExID(void)
{
strcpy(exID?“666a40ac21cffa8a1886ce2c6976ca3f“);
//這個ID是我上傳之后記錄下來的。語法上傳之后永久保存在服務器上,所以不要反復上傳同樣的語法
return?0;
//如果想要重新上傳語法,把上面的兩行注釋掉,就可以走下面的上傳語法流程
int?ret?=?MSP_SUCCESS;
const?char?*?sessionID?=?NULL;
sessionID?=?QISRSessionBegin(NULL?“ssm=1sub=asr“?&ret);
if(ret?!=?MSP_SUCCESS)
{
printf(“QISRSessionBegin?with?errorCode:?%d?\n“?ret);
return?ret;
}
char?UserData[MAX_KEYWORD_LEN];
memset(UserData?0?MAX_KEYWORD_LEN);
FILE*?fp?=?fopen(“asr_keywords_utf8.txt“?“rb“);//關鍵字列表文件必須是utf8格式
if?(fp?==?NULL)
{
printf(“keyword?file?cannot?open\n“);
return?-1;
}
int?len?=?fread(UserData?1?MAX_KEYWORD_LEN?fp);
UserData[len]?=?0;
fclose(fp);
const?char*?testID?=?QISRUploadData(sessionID?“contact“?UserData?len?“dtt=keylist“?&ret);
if(ret?!=?MSP_SUCCESS)
{
printf(“QISRUploadData?with?errorCode:?%d?\n“?ret);
return?ret;
}
memcpy((void*)exID?testID?strlen(testID));
printf(“exID:?\“%s\“?\n“?exID);//將獲得的exID輸出到屏幕上
QISRSessionEnd(sessionID?“normal“);
return?0;
}
int?testExID(void)
{
int?ret?=?MSP_SUCCESS;
int?i?=?0;
FILE*?fp?=?NULL;
char?buff[BUFFER_NUM];
int?len;
int?status?=?MSP_AUDIO_SAMPLE_CONTINUE?ep_status?=?-1?rec_status?=?-1?rslt_status?=?-1;
const?char*?param?=?“rst=plainsub=asrssm=1aue=speexauf=audio/L16;rate=16000“;//注意sub=asr
const?char*?sess_id?=?QISRSessionBegin(exID?param?&ret);//將語法ID傳入QISRSessionBegin
if?(?MSP_SUCCESS?!=?ret?)
{
printf(“QISRSessionBegin?err?%d\n“?ret);
return?ret;
}
fp?=?fopen(?asrfile??“rb“);//我們提供了幾個音頻文件,測試時根據需要在這里更換
if?(?NULL?==?fp?)
{
printf(“failed?to?open?fileplease?check?the?file.\n“);
QISRSessionEnd(sess_id?“normal“);
return?-1;
}
printf(“writing?audio...\n“);
while?(?!feof(fp)?)
{
len?=?fread(buff?1?BUFFER_NUM?fp);
ret?=?QISRAudioWrite(sess_id?buff?len?status?&ep_status?&rec_status);
if?(?ret?!=?MSP_SUCCESS?)
{
printf(“\nQISRAudioWrite?err?%d\n“?ret);
break;
}
if?(?rec_status?==?MSP_REC_STATUS_SUCCESS?)
{
const?char*?result?=?QISRGetResult(sess_id?&rslt_status?0?&ret);
if?(ret?!=?MSP_SUCCESS?)
{
prin
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2011-12-15?08:16??4ee9abd6\
?????目錄???????????0??2011-12-15?08:16??4ee9abd6\ttsdemo\
?????文件?????????286??2011-12-15?08:16??4ee9abd6\ttsdemo\stdafx.cpp
?????文件?????????858??2011-12-15?08:16??4ee9abd6\ttsdemo\ttsdemo.sln
?????文件????????5782??2011-12-15?08:16??4ee9abd6\ttsdemo\ttsdemo.cpp
?????文件?????????499??2011-12-15?08:16??4ee9abd6\ttsdemo\stdafx.h
?????文件????????4877??2011-12-15?08:16??4ee9abd6\ttsdemo\ttsdemo.vcproj
?????文件????????1273??2011-12-15?08:16??4ee9abd6\ttsdemo\ReadMe.txt
?????文件????????1266??2011-12-15?08:16??4ee9abd6\ttsdemo\wavehead.h
?????目錄???????????0??2011-12-15?08:16??4ee9abd6\asrdemo\
?????文件????????5416??2011-12-15?08:16??4ee9abd6\asrdemo\asrdemo.cpp
?????文件?????????286??2011-12-15?08:16??4ee9abd6\asrdemo\stdafx.cpp
?????文件?????????499??2011-12-15?08:16??4ee9abd6\asrdemo\stdafx.h
?????文件????????4839??2011-12-15?08:16??4ee9abd6\asrdemo\asrdemo.vcproj
?????文件????????1273??2011-12-15?08:16??4ee9abd6\asrdemo\ReadMe.txt
?????文件?????????858??2011-12-15?08:16??4ee9abd6\asrdemo\asrdemo.sln
?????目錄???????????0??2011-12-15?08:16??4ee9abd6\iatdemo\
?????文件????????4487??2011-12-15?08:16??4ee9abd6\iatdemo\iatdemo.cpp
?????文件?????????286??2011-12-15?08:16??4ee9abd6\iatdemo\stdafx.cpp
?????文件?????????858??2011-12-15?08:16??4ee9abd6\iatdemo\iatdemo.sln
?????文件?????????499??2011-12-15?08:16??4ee9abd6\iatdemo\stdafx.h
?????文件????????1273??2011-12-15?08:16??4ee9abd6\iatdemo\ReadMe.txt
?????文件????????4839??2011-12-15?08:16??4ee9abd6\iatdemo\iatdemo.vcproj
?????目錄???????????0??2011-12-15?08:16??4ee9abd6\bin\
?????文件??????178738??2011-12-15?08:16??4ee9abd6\bin\iat_demo_test.wav
?????文件???????86016??2011-12-15?08:16??4ee9abd6\bin\speex.dll
?????文件???????86062??2011-12-15?08:16??4ee9abd6\bin\一二三四五六七八九十.wav
?????文件??????127022??2011-12-15?08:16??4ee9abd6\bin\齊魯石化.wav
?????文件???????80342??2011-12-15?08:16??4ee9abd6\bin\阿里山龍膽.wav
?????文件????????1208??2011-12-15?08:16??4ee9abd6\bin\asr_keywords_utf8.txt
?????文件???????94254??2011-12-15?08:16??4ee9abd6\bin\科大訊飛.wav
............此處省略15個文件信息
評論
共有 條評論