Linux下科大訊飛語音識別全面總結
時間:2018-05-14 來源:未知
首先我們需要的就是Linux下的SDK的下載包,首先在科大訊飛的官網(wǎng)//www.xfyun.cn/注冊,選擇我們的語音識別的功能相應的Linux SDK下載,對應的生成Linux_iat1166_tts_online1166_5ad417ef.zip 的壓縮包,然后解壓縮如下:

bin目錄下面是我們的生成的可執(zhí)行的文件;
doc目錄是我們的api函數(shù)接口的參考的文檔;
include目錄下面是我們的編譯后的可執(zhí)行文件用到的頭文件;
libs是我們的程序用到的庫;
samples目錄下面是簡單的語音合成、語音識別、語音轉文字的demo;
切換到我們的samples下面的iat_record_sample的語音識別的demo,source 32bit_make.sh,在我們的bin目錄下生成可執(zhí)行文件iat_record_sample

但是執(zhí)行時出現(xiàn)error while loading shared libraries: libmsc.so的錯誤

uame -a 或者uname -p查看我們的ubuntu虛擬機是32位還是64位的

再對應的將我們的libs目錄下的庫拷貝到/usr/libs下面

再運行我們的bin下面的生成的iat_record_sample可執(zhí)行文件
但是我們demo只可以實現(xiàn)一次識別我們語音,故修改我們的代碼讓其可以一直等待輸入,
并且每次等待輸入的時間為10s鐘,然后可以看到我們從本地的麥中發(fā)音,可以實現(xiàn)我們的語音轉換為對應的文本

我們的main函數(shù)的login_params必須與我們自己申請的SDK的appid相同,不然云端在線時SDK與appid不一致無法使用語音的功能

為了實現(xiàn)一直輸入,在我們的while(1)中調用demo_mic,其中demo_mic的sr_init、sr_start_listening、sr_stop_listening實現(xiàn)我們的語音的文件的起始和結束


sr_start_listening函數(shù)中的create_record、open_record、start_record、stop_record、close_record相關函數(shù)實現(xiàn)我們的錄音對象的創(chuàng)建、打開、停止、關閉


