[發(fā)明專利]一種語音識別服務(wù)器的軟件設(shè)計方法有效
| 申請?zhí)枺?/td> | 201811638895.6 | 申請日: | 2018-12-29 |
| 公開(公告)號: | CN109727595B | 公開(公告)日: | 2021-08-03 |
| 發(fā)明(設(shè)計)人: | 張琨;趙耀;李雪楓;朱錦雷 | 申請(專利權(quán))人: | 神思電子技術(shù)股份有限公司 |
| 主分類號: | G10L15/22 | 分類號: | G10L15/22;G10L15/30;H04L29/08;H04L29/06;H04L12/26 |
| 代理公司: | 濟南泉城專利商標事務(wù)所 37218 | 代理人: | 趙玉鳳 |
| 地址: | 250000 山東省濟南市*** | 國省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 語音 識別 服務(wù)器 軟件設(shè)計 方法 | ||
本發(fā)明公開一種針對局域網(wǎng)基于socket網(wǎng)絡(luò)通信的語音識別服務(wù)器軟件設(shè)計方法,采用進程池+任務(wù)池+線程池構(gòu)建socket服務(wù)器,設(shè)計并優(yōu)化了系統(tǒng)架構(gòu),從而達到可以支撐一定的并發(fā)(適配服務(wù)器硬件)、可靠地服務(wù)客戶端、占用較少的資源。這種設(shè)計方法特點就是能夠在滿足功能需求前提下,以最小的資源占用進行靈活部署。本發(fā)明中提出的設(shè)計方法在局域網(wǎng)中搭建的語音識別服務(wù)器,在給定的并發(fā)量下,識別效果流暢,性能穩(wěn)定可靠,占用資源有限。
技術(shù)領(lǐng)域
本發(fā)明公開一種語音識別服務(wù)器的軟件設(shè)計方法,該語音識別服務(wù)器適用于局域網(wǎng)或者其他網(wǎng)絡(luò),屬于人工智能、并發(fā)網(wǎng)絡(luò)通信領(lǐng)域。
背景技術(shù)
近些年來,隨著自動語音識別技術(shù)(ASR)的不斷完善,涌現(xiàn)了一些擁有較為成熟技術(shù)的公司,比如:科大訊飛、百度等。在市場的強烈需求刺激和這些公司的大力推動下,ASR已經(jīng)走進了很多領(lǐng)域,包括移動設(shè)備、汽車、家居等C端應(yīng)用和電子病歷、客服等B端場景。但是,以上公司將自己的服務(wù)部署于公網(wǎng),對于一些只能限定于內(nèi)網(wǎng)工作的設(shè)備(銀行、稅務(wù)、醫(yī)院的自助設(shè)備或者服務(wù)機器人等)無法使用,或者將公網(wǎng)服務(wù)直接部署于內(nèi)網(wǎng)將增加過多的成本。因而這里提出一種針對局域網(wǎng)構(gòu)建語音識別服務(wù)器的軟件設(shè)計方法。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種語音識別服務(wù)器的軟件設(shè)計方法,在滿足功能需求前提下,以最小的資源占用進行靈活部署,適用于局域網(wǎng)。
為了解決所述技術(shù)問題,本發(fā)明采用的技術(shù)方案是:一種語音識別服務(wù)器的軟件設(shè)計方法,包括以下步驟:
S01)、通信模塊設(shè)計,socket用來連接服務(wù)端與客戶端,服務(wù)端建立socket連接并進行監(jiān)聽,當收到客戶端的連接請求,則建立連接,然后接收消息、解析,經(jīng)過處理后立即返回給客戶端;
S02)、應(yīng)用層設(shè)計,建立在socket上的自定義的數(shù)據(jù)協(xié)議,數(shù)據(jù)頭描述數(shù)據(jù)包的信息、包含類型、長度,數(shù)據(jù)包中包含音頻數(shù)據(jù);
S03)、進程池設(shè)計,包括主進程和子進程,主進程監(jiān)聽socket,并在運行之初創(chuàng)建所有子進程,同時建立主進程與子進程之間的通道,主進程向子進程分配客戶端連接,子進程接受以后利用任務(wù)池完成相應(yīng)的數(shù)據(jù)處理;
S04)、任務(wù)池設(shè)計,任務(wù)池是某個子進程內(nèi)的所有可以執(zhí)行的任務(wù),它保存某個客戶端所有有用的信息,每當子進程檢測到某個連接上有數(shù)據(jù)到來,它會去執(zhí)行相應(yīng)的任務(wù);由于語音識別引擎需要占用的資源很多,包括時間和空間,因此,這里執(zhí)行任務(wù)是指將接收到的數(shù)據(jù)推進對應(yīng)線程里面運行的語音識別引擎,然后在回調(diào)函數(shù)里實現(xiàn)識別結(jié)果返回;
S05)、線程池設(shè)計,每個子進程包含一個線程池,每個線程池里面運行一個獨立的語音識別引擎,任務(wù)池執(zhí)行任務(wù)時,將接收到的數(shù)據(jù)推進到相應(yīng)線程池里面運行的語音識別引擎,然后在回調(diào)函數(shù)里實現(xiàn)識別結(jié)果返回。
進一步的,進程池、任務(wù)池、線程池的大小是與語音識別引擎占用的資源和服務(wù)器硬件配置相匹配的,程序運行期間固定。
進一步的,服務(wù)端與客戶端之間的socket為全雙工通信,兩個線程可以同時對服務(wù)端和客戶端進行操作,一個接受數(shù)據(jù),另一個發(fā)送數(shù)據(jù)。
為了節(jié)省帶寬,應(yīng)用層的數(shù)據(jù)包采用壓縮格式,同時帶有驗證身份的客戶端的唯一標識。
由于線程和引擎的創(chuàng)建和銷毀占用很多時間,因而線程池在子進程開始運行時即創(chuàng)建完畢,然后等待子進程的主線程利用任務(wù)池給相應(yīng)的線程推送數(shù)據(jù)。
進一步的,主進程利用epoll機制復(fù)用IO,將監(jiān)聽socket、信號加入epoll核心事件表。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于神思電子技術(shù)股份有限公司,未經(jīng)神思電子技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811638895.6/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:語音處理方法及裝置
- 下一篇:控制遙控器的方法和遙控器
- 營養(yǎng)查詢軟件設(shè)計
- 基于狀態(tài)機的冰箱主控軟件設(shè)計方法
- 一種軟件設(shè)計咨詢綜合服務(wù)管理系統(tǒng)
- 一種軟件技術(shù)綜合服務(wù)管理系統(tǒng)
- 一種基于數(shù)據(jù)流和元件的軟件設(shè)計方法、軟件設(shè)計工具和軟件運行平臺
- 一種基于本體的控制軟件模型的自動生成方法
- 一種軟件設(shè)計方法、系統(tǒng)及電子設(shè)備和存儲介質(zhì)
- 一種工業(yè)軟件設(shè)計與應(yīng)用平臺及其使用方法
- 一種核電廠安全級軟件設(shè)計系統(tǒng)和方法
- 面向DDD的軟件設(shè)計方法及系統(tǒng)





